XmpPackage

XmpPackage class

Representa la abstracción base para el paquete XMP.

public class XmpPackage : XmpMetadataContainer

Constructores

Nombre Descripción
XmpPackage(string, string) Inicializa una nueva instancia delXmpPackage clase.

Propiedades

Nombre Descripción
Count { get; } Obtiene el número de propiedades de metadatos.
Item { get; } Obtiene elMetadataProperty con el nombre especificado.
Keys { get; } Obtiene una colección de nombres de propiedades de metadatos.
MetadataType { get; } Obtiene el tipo de metadato.
NamespaceUri { get; } Obtiene el URI del espacio de nombres.
Prefix { get; } Obtiene el prefijo xmlns.
PropertyDescriptors { get; } Obtiene una colección de descriptores que contienen información sobre propiedades accesibles a través del motor de búsqueda GroupDocs.Metadata.
XmlNamespace { get; } Obtiene el espacio de nombres XML.

Métodos

Nombre Descripción
AddProperties(Func<MetadataProperty, bool>, PropertyValue) Agrega propiedades de metadatos conocidas que satisfacen el predicado especificado. La operación es recursiva, por lo que también afecta a todos los paquetes anidados.
Clear() Elimina todas las propiedades XMP.
Contains(string) Determina si el paquete contiene una propiedad de metadatos con el nombre especificado.
virtual FindProperties(Func<MetadataProperty, bool>) Encuentra las propiedades de metadatos que satisfacen el predicado especificado. La búsqueda es recursiva, por lo que también afecta a todos los paquetes anidados.
GetEnumerator() Devuelve un enumerador que itera a través de la colección.
override GetXmpRepresentation() Convierte el valor XMP a la representación XML.
Remove(string) Elimina la propiedad con el nombre especificado.
virtual RemoveProperties(Func<MetadataProperty, bool>) Elimina las propiedades de metadatos que cumplen el predicado especificado.
virtual Sanitize() Elimina las propiedades de metadatos de escritura del paquete. La operación es recursiva, por lo que también afecta a todos los paquetes anidados.
Set(string, bool) Establece la propiedad booleana.
Set(string, DateTime) ConjuntosDateTime propiedad.
Set(string, double) Establece doble propiedad.
Set(string, int) Establece propiedad de número entero.
virtual Set(string, string) Establece la propiedad de la cadena.
virtual Set(string, XmpArray) Establece el valor heredado deXmpArray .
virtual Set(string, XmpComplexType) Establece el valor heredado deXmpComplexType .
Set(string, XmpValueBase) Establece el valor heredado deXmpValueBase .
SetProperties(Func<MetadataProperty, bool>, PropertyValue) Establece propiedades de metadatos conocidas que satisfacen el predicado especificado. La operación es recursiva, por lo que también afecta a todos los paquetes anidados. Este método es una combinación deAddProperties yUpdateProperties Si una propiedad existente satisface el predicado, su valor se actualiza. Si falta una propiedad conocida en el paquete que satisface el predicado, se agrega al paquete.
UpdateProperties(Func<MetadataProperty, bool>, PropertyValue) Actualiza las propiedades de metadatos conocidas que satisfacen el predicado especificado. La operación es recursiva, por lo que también afecta a todos los paquetes anidados.

Observaciones

Aprende más

Ejemplos

Este ejemplo demuestra cómo agregar un paquete XMP personalizado a un archivo de cualquier formato compatible.

using (Metadata metadata = new Metadata(Constants.InputJpeg))
{
    IXmp root = metadata.GetRootPackage() as IXmp;
    if (root != null)
    {
        var packet = new XmpPacketWrapper();

        var custom = new XmpPackage("gd", "https://groupdocs.com");
        custom.Set("gd:Copyright", "Copyright (C) 2011-2022 GroupDocs. All Rights Reserved.");
        custom.Set("gd:CreationDate", DateTime.Today);
        custom.Set("gd:Company", XmpArray.From(new [] { "Aspose", "GroupDocs" }, XmpArrayType.Ordered));

        packet.AddPackage(custom);
        root.XmpPackage = packet;

        metadata.Save(Constants.OutputJpeg);
    }
}

Ver también