IptcRecordSet

IptcRecordSet class

Представляет набор записей IPTC.

public sealed class IptcRecordSet : CustomPackage

Конструкторы

Имя Описание
IptcRecordSet() Инициализирует новый экземплярIptcRecordSet класс.
IptcRecordSet(IptcDataSet[]) Инициализирует новый экземплярIptcRecordSet класс.

Характеристики

Имя Описание
ApplicationRecord { get; set; } Получает или задает запись приложения.
Count { get; } Получает количество свойств метаданных.
EnvelopeRecord { get; set; } Получает или устанавливает запись конверта.
Item { get; } ПолучаетIptcRecord с указанным номером. (3 indexers)
Keys { get; } Получает коллекцию имен свойств метаданных.
MetadataType { get; } Получает тип метаданных.
PropertyDescriptors { get; } Получает набор дескрипторов, содержащих информацию о свойствах, доступных через поисковую систему GroupDocs.Metadata.

Методы

Имя Описание
Add(IptcDataSet) Добавляет указанный набор данных в соответствующую запись. Набор данных считается повторяемым, если набор данных с указанным номером уже существует.
AddProperties(Func<MetadataProperty, bool>, PropertyValue) Добавляет известные свойства метаданных, удовлетворяющие указанному предикату. Операция является рекурсивной, поэтому она также влияет на все вложенные пакеты.
Clear() Удаляет все записи из коллекции.
Contains(string) Определяет, содержит ли пакет свойство метаданных с указанным именем.
virtual FindProperties(Func<MetadataProperty, bool>) Находит свойства метаданных, удовлетворяющие указанному предикату. Поиск является рекурсивным, поэтому он затрагивает также все вложенные пакеты.
GetEnumerator() Возвращает перечислитель, который выполняет итерацию по коллекции.
Remove(byte) Удаляет запись с указанным номером записи.
Remove(byte, byte) Удаляет набор данных с указанной записью и номером набора данных.
virtual RemoveProperties(Func<MetadataProperty, bool>) Удаляет свойства метаданных, удовлетворяющие указанному предикату.
virtual Sanitize() Удаляет доступные для записи свойства метаданных из пакета. Операция является рекурсивной, поэтому она также влияет на все вложенные пакеты.
Set(IptcDataSet) Добавляет или обновляет указанный набор данных в соответствующей записи.
SetProperties(Func<MetadataProperty, bool>, PropertyValue) Устанавливает известные свойства метаданных, удовлетворяющие указанному предикату. Операция является рекурсивной, поэтому она влияет также на все вложенные пакеты. Этот метод представляет собой комбинациюAddProperties иUpdateProperties Если существующее свойство удовлетворяет предикату, его значение обновляется. Если в пакете отсутствует известное свойство, удовлетворяющее предикату, оно добавляется в пакет.
ToDataSetList() Создает список наборов данных из пакета.
ToList() Создает список из пакета.
UpdateProperties(Func<MetadataProperty, bool>, PropertyValue) Обновляет известные свойства метаданных, удовлетворяющие указанному предикату. Операция является рекурсивной, поэтому она также влияет на все вложенные пакеты.

Примечания

Узнать больше

Примеры

В этом примере кода показано, как быстро обновить основные свойства метаданных IPTC.

using (Metadata metadata = new Metadata(Constants.InputJpeg))
{
    IIptc root = metadata.GetRootPackage() as IIptc;
    if (root != null)
    {
        // Устанавливаем пакет IPTC, если он отсутствует
        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);
    }
}

Смотрите также