XmpPacketWrapper

XmpPacketWrapper class

Başlık ve son bilgi dahil olmak üzere seri hale getirilmiş XMP paketi içerir. Bir çift XML işleme talimatından (PI) oluşan bir sarmalayıcı, rdf:RDF öğesinin etrafına yerleştirilebilir.

public class XmpPacketWrapper : MetadataPackage, IXmpType

yapıcılar

İsim Tanım
XmpPacketWrapper() Yeni bir örneğini başlatır.XmpPacketWrapper sınıf.
XmpPacketWrapper(XmpHeaderPI, XmpTrailerPI, XmpMeta) Yeni bir örneğini başlatır.XmpPacketWrapper sınıf.

Özellikleri

İsim Tanım
Count { get; } Meta veri özelliklerinin sayısını alır.
HeaderPI { get; set; } Başlık işleme talimatını alır veya ayarlar.
Item { get; } Şunu alır:MetadataProperty belirtilen ada sahip.
Keys { get; } Meta veri özellik adlarının bir koleksiyonunu alır.
Meta { get; set; } XMP metasını alır veya ayarlar.
MetadataType { get; } Meta veri türünü alır.
PackageCount { get; } XMP yapısı içindeki paket sayısını alır.
Packages { get; } dizisini alırXmpPackage XMP. içinde
PropertyDescriptors { get; } GroupDocs.Metadata arama motoru aracılığıyla erişilebilen özellikler hakkında bilgi içeren tanımlayıcılardan oluşan bir koleksiyon alır.
Schemes { get; } Bilinen XMP şemalarına erişim sağlar.
TrailerPI { get; set; } Fragman işleme talimatını alır veya ayarlar.

yöntemler

İsim Tanım
AddPackage(XmpPackage) Paketi ekler.
AddProperties(Func<MetadataProperty, bool>, PropertyValue) Belirtilen yüklemi karşılayan bilinen meta veri özelliklerini ekler. İşlem özyinelemeli olduğundan tüm iç içe geçmiş paketleri de etkiler.
ClearPackages() Tümünü kaldırırXmpPackage XMP. içinde
Contains(string) Paketin belirtilen ada sahip bir meta veri özelliği içerip içermediğini belirler.
ContainsPackage(string) Paketin XMP paketleyicide var olup olmadığını belirler.
virtual FindProperties(Func<MetadataProperty, bool>) Belirtilen yüklemi karşılayan meta veri özelliklerini bulur. Arama özyinelemeli olduğu için iç içe geçmiş tüm paketleri de etkiler.
GetEnumerator() Koleksiyon boyunca yinelenen bir numaralandırıcı döndürür.
GetPackage(string) uri. ad alanına göre paketi alır
GetXmpRepresentation() XMP biçiminde dizge içerdiği değeri döndürür.
RemovePackage(XmpPackage) Belirtilen paketi kaldırır.
virtual RemoveProperties(Func<MetadataProperty, bool>) Belirtilen yüklemi karşılayan meta veri özelliklerini kaldırır.
virtual Sanitize() Paketten yazılabilir meta veri özelliklerini kaldırır. İşlem özyinelemeli olduğundan iç içe geçmiş tüm paketleri de etkiler.
SetProperties(Func<MetadataProperty, bool>, PropertyValue) Belirtilen yüklemi karşılayan bilinen meta veri özelliklerini ayarlar. İşlem özyinelemeli olduğundan tüm iç içe geçmiş paketleri de etkiler. Bu yöntem,AddProperties VeUpdateProperties Mevcut bir özellik yüklemi karşılıyorsa, değeri güncellenir. Yüklemi karşılayan pakette eksik bilinen bir özellik varsa, pakete eklenir.
UpdateProperties(Func<MetadataProperty, bool>, PropertyValue) Belirtilen yüklemi karşılayan bilinen meta veri özelliklerini günceller. İşlem yinelemeli olduğundan tüm iç içe geçmiş paketleri de etkiler.

Notlar

Daha fazla bilgi edin

Örnekler

Bu örnek, XMP meta veri özelliklerinin nasıl güncelleneceğini gösterir.

using (Metadata metadata = new Metadata(Constants.GifWithXmp))
{
    IXmp root = metadata.GetRootPackage() as IXmp;
    if (root != null && root.XmpPackage != null)
    {
        // XMP paketinde böyle bir şema yoksa onu oluşturmalıyız
        if (root.XmpPackage.Schemes.DublinCore == null)
        {
            root.XmpPackage.Schemes.DublinCore = new XmpDublinCorePackage();
        }
        root.XmpPackage.Schemes.DublinCore.Format = "image/gif";
        root.XmpPackage.Schemes.DublinCore.SetRights("Copyright (C) 2011-2022 GroupDocs. All Rights Reserved");
        root.XmpPackage.Schemes.DublinCore.SetSubject("test");

        if (root.XmpPackage.Schemes.CameraRaw == null)
        {
            root.XmpPackage.Schemes.CameraRaw = new XmpCameraRawPackage();
        }
        root.XmpPackage.Schemes.CameraRaw.Shadows = 50;
        root.XmpPackage.Schemes.CameraRaw.AutoBrightness = true;
        root.XmpPackage.Schemes.CameraRaw.AutoExposure = true;
        root.XmpPackage.Schemes.CameraRaw.CameraProfile = "test";
        root.XmpPackage.Schemes.CameraRaw.Exposure = 0.0001;

        // Eski değerleri korumak istemiyorsanız tüm şemayı değiştirin
        root.XmpPackage.Schemes.XmpBasic = new XmpBasicPackage();
        root.XmpPackage.Schemes.XmpBasic.CreateDate = DateTime.Today;
        root.XmpPackage.Schemes.XmpBasic.BaseUrl = "https://groupdocs.com";
        root.XmpPackage.Schemes.XmpBasic.Rating = 5;

        root.XmpPackage.Schemes.BasicJobTicket = new XmpBasicJobTicketPackage();

        // Karmaşık bir tür özelliği ayarla
        root.XmpPackage.Schemes.BasicJobTicket.Jobs = new[]
        {
            new XmpJob
            {
                ID = "1",
                Name = "test job",
                Url = "https://groupdocs.com"
            },
        };

        // ... 

        metadata.Save(Constants.OutputGif);
    }
}

Ayrıca bakınız