IptcRecordSet

IptcRecordSet class

Repräsentiert eine Sammlung von IPTC-Einträgen.

public sealed class IptcRecordSet : CustomPackage

Konstrukteure

Name Beschreibung
IptcRecordSet() Initialisiert eine neue Instanz vonIptcRecordSet Klasse.
IptcRecordSet(IptcDataSet[]) Initialisiert eine neue Instanz vonIptcRecordSet Klasse.

Eigenschaften

Name Beschreibung
ApplicationRecord { get; set; } Ruft den Anwendungsdatensatz ab oder legt ihn fest.
Count { get; } Ruft die Anzahl der Metadateneigenschaften ab.
EnvelopeRecord { get; set; } Ruft den Envelope-Datensatz ab oder legt ihn fest.
Item { get; } Ruft die abIptcRecord mit der angegebenen Nummer. (3 indexers)
Keys { get; } Ruft eine Sammlung der Metadaten-Eigenschaftsnamen ab.
MetadataType { get; } Ruft den Metadatentyp ab.
PropertyDescriptors { get; } Ruft eine Sammlung von Deskriptoren ab, die Informationen zu Eigenschaften enthalten, auf die über die Suchmaschine GroupDocs.Metadata zugegriffen werden kann.

Methoden

Name Beschreibung
Add(IptcDataSet) Fügt das angegebene DataSet dem entsprechenden Datensatz hinzu. Das DataSet gilt als wiederholbar, wenn bereits ein DataSet mit der angegebenen Nummer existiert.
AddProperties(Func<MetadataProperty, bool>, PropertyValue) Fügt bekannte Metadateneigenschaften hinzu, die das angegebene Prädikat erfüllen. Die Operation ist rekursiv, sodass sie sich auch auf alle verschachtelten Pakete auswirkt.
Clear() Entfernt alle Datensätze aus der Sammlung.
Contains(string) Bestimmt, ob das Paket eine Metadateneigenschaft mit dem angegebenen Namen enthält.
virtual FindProperties(Func<MetadataProperty, bool>) Findet die Metadateneigenschaften, die das angegebene Prädikat erfüllen. Die Suche ist rekursiv, sodass sie auch alle verschachtelten Pakete betrifft.
GetEnumerator() Gibt einen Enumerator zurück, der die Sammlung durchläuft.
Remove(byte) Entfernt den Datensatz mit der angegebenen Datensatznummer.
Remove(byte, byte) Entfernt das DataSet mit der angegebenen Datensatz- und DataSet-Nummer.
virtual RemoveProperties(Func<MetadataProperty, bool>) Entfernt Metadateneigenschaften, die das angegebene Prädikat erfüllen.
virtual Sanitize() Entfernt beschreibbare Metadateneigenschaften aus dem Paket. Der Vorgang ist rekursiv, sodass er sich auch auf alle verschachtelten Pakete auswirkt.
Set(IptcDataSet) Fügt das angegebene DataSet im entsprechenden Datensatz hinzu oder aktualisiert es.
SetProperties(Func<MetadataProperty, bool>, PropertyValue) Legt bekannte Metadateneigenschaften fest, die das angegebene Prädikat erfüllen. Die Operation ist rekursiv, sodass sie sich auch auf alle verschachtelten Pakete auswirkt. Diese Methode ist eine Kombination ausAddProperties UndUpdateProperties Wenn eine vorhandene Eigenschaft das Prädikat erfüllt, wird ihr Wert aktualisiert. Wenn im Paket eine bekannte Eigenschaft fehlt, die das Prädikat erfüllt, wird sie dem Paket hinzugefügt.
ToDataSetList() Erstellt eine Liste von Datensätzen aus dem Paket.
ToList() Erstellt eine Liste aus dem Paket.
UpdateProperties(Func<MetadataProperty, bool>, PropertyValue) Aktualisiert bekannte Metadateneigenschaften, die das angegebene Prädikat erfüllen. Die Operation ist rekursiv, sodass sie sich auch auf alle verschachtelten Pakete auswirkt.

Bemerkungen

Erfahren Sie mehr

Beispiele

Dieses Codebeispiel zeigt, wie schnell grundlegende IPTC-Metadateneigenschaften aktualisiert werden.

using (Metadata metadata = new Metadata(Constants.InputJpeg))
{
    IIptc root = metadata.GetRootPackage() as IIptc;
    if (root != null)
    {
        // Setze das IPTC-Paket, falls es fehlt
        if (root.IptcPackage == null)
        {
            root.IptcPackage = new IptcRecordSet();
        }

        if (root.IptcPackage.EnvelopeRecord == null)
        {
            root.IptcPackage.EnvelopeRecord = new IptcEnvelopeRecord();
        }

        root.IptcPackage.EnvelopeRecord.DateSent = DateTime.Now;
        root.IptcPackage.EnvelopeRecord.ProductID = Guid.NewGuid().ToString();

        // ...

        if (root.IptcPackage.ApplicationRecord == null)
        {
            root.IptcPackage.ApplicationRecord = new IptcApplicationRecord();
        }

        root.IptcPackage.ApplicationRecord.ByLine = "GroupDocs";
        root.IptcPackage.ApplicationRecord.Headline = "test";
        root.IptcPackage.ApplicationRecord.ByLineTitle = "code sample";
        root.IptcPackage.ApplicationRecord.ReleaseDate = DateTime.Today;

        // ...

        metadata.Save(Constants.OutputJpeg);
    }
}

Siehe auch