IptcRecordSet

IptcRecordSet class

Representerar en samling IPTC-poster.

public sealed class IptcRecordSet : CustomPackage

Konstruktörer

namn Beskrivning
IptcRecordSet() Initierar en ny instans avIptcRecordSet class.
IptcRecordSet(IptcDataSet[]) Initierar en ny instans avIptcRecordSet class.

Egenskaper

namn Beskrivning
ApplicationRecord { get; set; } Hämtar eller sätter applikationsrekordet.
Count { get; } Hämtar antalet metadataegenskaper.
EnvelopeRecord { get; set; } Hämtar eller sätter kuvertposten.
Item { get; } FårIptcRecord med det angivna numret. (3 indexers)
Keys { get; } Hämtar en samling av metadataegenskapsnamnen.
MetadataType { get; } Hämtar metadatatypen.
PropertyDescriptors { get; } Får en samling beskrivningar som innehåller information om egenskaper som är tillgängliga via sökmotorn GroupDocs.Metadata.

Metoder

namn Beskrivning
Add(IptcDataSet) Lägger till den angivna datamängden till lämplig post. Datauppsättningen anses vara repeterbar om en datauppsättning med det angivna numret redan finns.
AddProperties(Func<MetadataProperty, bool>, PropertyValue) Lägger till kända metadataegenskaper som uppfyller det angivna predikatet. Operationen är rekursiv så den påverkar även alla kapslade paket.
Clear() Tar bort alla poster från samlingen.
Contains(string) Bestämmer om paketet innehåller en metadataegenskap med det angivna namnet.
virtual FindProperties(Func<MetadataProperty, bool>) Hittar metadataegenskaperna som uppfyller det angivna predikatet. Sökningen är rekursiv så den påverkar också alla kapslade paket.
GetEnumerator() Returnerar en uppräkning som itererar genom samlingen.
Remove(byte) Tar bort posten med det angivna postnumret.
Remove(byte, byte) Tar bort datamängden med den angivna posten och datamängden.
virtual RemoveProperties(Func<MetadataProperty, bool>) Tar bort metadataegenskaper som uppfyller det angivna predikatet.
virtual Sanitize() Tar bort skrivbara metadataegenskaper från paketet. Operationen är rekursiv så den påverkar alla kapslade paket också.
Set(IptcDataSet) Lägger till eller uppdaterar den angivna datamängden i lämplig post.
SetProperties(Func<MetadataProperty, bool>, PropertyValue) Ställer in kända metadataegenskaper som uppfyller det angivna predikatet. Operationen är rekursiv så den påverkar också alla kapslade paket. Denna metod är en kombination avAddProperties ochUpdateProperties Om en befintlig egenskap uppfyller predikatet uppdateras dess värde. Om det saknas en känd egenskap i paketet som uppfyller predikatet läggs den till i paketet.
ToDataSetList() Skapar en lista med datamängder från paketet.
ToList() Skapar en lista från paketet.
UpdateProperties(Func<MetadataProperty, bool>, PropertyValue) Uppdaterar kända metadataegenskaper som uppfyller det angivna predikatet. Operationen är rekursiv så den påverkar också alla kapslade paket.

Anmärkningar

Läs mer

Exempel

Det här kodexemplet visar heta att uppdatera grundläggande IPTC-metadataegenskaper.

using (Metadata metadata = new Metadata(Constants.InputJpeg))
{
    IIptc root = metadata.GetRootPackage() as IIptc;
    if (root != null)
    {
        // Ställ in IPTC-paketet om det saknas
        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);
    }
}

Se även