XmpPacketWrapper

XmpPacketWrapper class

Berisi paket XMP berseri termasuk header dan trailer. Pembungkus yang terdiri dari sepasang instruksi pemrosesan XML (PI) dapat ditempatkan di sekitar elemen rdf:RDF.

public class XmpPacketWrapper : MetadataPackage, IXmpType

Konstruktor

Nama Keterangan
XmpPacketWrapper() Menginisialisasi instance baru dariXmpPacketWrapper kelas.
XmpPacketWrapper(XmpHeaderPI, XmpTrailerPI, XmpMeta) Menginisialisasi instance baru dariXmpPacketWrapper kelas.

Properti

Nama Keterangan
Count { get; } Mendapat jumlah properti metadata.
HeaderPI { get; set; } Mendapat atau menyetel instruksi pemrosesan tajuk.
Item { get; } MendapatkanMetadataProperty dengan nama yang ditentukan.
Keys { get; } Mendapat kumpulan nama properti metadata.
Meta { get; set; } Mendapat atau menyetel meta XMP.
MetadataType { get; } Mendapatkan jenis metadata.
PackageCount { get; } Mendapat jumlah paket di dalam struktur XMP.
Packages { get; } Mendapat berbagaiXmpPackage di dalam XMP.
PropertyDescriptors { get; } Mendapat kumpulan deskriptor yang berisi informasi tentang properti yang dapat diakses melalui mesin pencari GroupDocs.Metadata.
Schemes { get; } Memberikan akses ke skema XMP yang dikenal.
TrailerPI { get; set; } Mendapat atau menyetel instruksi pemrosesan trailer.

Metode

Nama Keterangan
AddPackage(XmpPackage) Menambahkan paket.
AddProperties(Func<MetadataProperty, bool>, PropertyValue) Menambahkan properti metadata yang dikenal yang memenuhi predikat yang ditentukan. Operasi bersifat rekursif sehingga memengaruhi semua paket bersarang juga.
ClearPackages() Menghapus semuaXmpPackage di dalam XMP.
Contains(string) Menentukan apakah paket berisi properti metadata dengan nama yang ditentukan.
ContainsPackage(string) Menentukan apakah paket ada di pembungkus XMP.
virtual FindProperties(Func<MetadataProperty, bool>) Menemukan properti metadata yang memenuhi predikat yang ditentukan. Pencarian bersifat rekursif sehingga memengaruhi semua paket bersarang juga.
GetEnumerator() Mengembalikan pencacah yang mengulang melalui koleksi.
GetPackage(string) Mendapat paket dengan namespace uri.
GetXmpRepresentation() Mengembalikan string berisi nilai dalam format XMP.
RemovePackage(XmpPackage) Menghapus paket yang ditentukan.
virtual RemoveProperties(Func<MetadataProperty, bool>) Menghapus properti metadata yang memenuhi predikat yang ditentukan.
virtual Sanitize() Menghapus properti metadata yang dapat ditulisi dari paket. Operasi bersifat rekursif sehingga memengaruhi semua paket bersarang juga.
SetProperties(Func<MetadataProperty, bool>, PropertyValue) Menyetel properti metadata yang dikenal yang memenuhi predikat yang ditentukan. Operasi bersifat rekursif sehingga memengaruhi semua paket bersarang juga. Metode ini merupakan kombinasi dariAddProperties DanUpdateProperties Jika properti yang ada memenuhi predikat, nilainya diperbarui. Jika ada properti yang diketahui hilang dalam paket yang memenuhi predikat itu ditambahkan ke paket.
UpdateProperties(Func<MetadataProperty, bool>, PropertyValue) Memperbarui properti metadata yang dikenal yang memenuhi predikat yang ditentukan. Operasi bersifat rekursif sehingga memengaruhi semua paket bersarang juga.

Perkataan

Belajarlah lagi

Contoh

Contoh ini menunjukkan cara memperbarui properti metadata XMP.

using (Metadata metadata = new Metadata(Constants.GifWithXmp))
{
    IXmp root = metadata.GetRootPackage() as IXmp;
    if (root != null && root.XmpPackage != null)
    {
        // jika tidak ada skema seperti itu di paket XMP, kita harus membuatnya
        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;

        // Jika Anda tidak ingin mempertahankan nilai lama, ganti saja seluruh skema
        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();

        // Tetapkan properti tipe kompleks
        root.XmpPackage.Schemes.BasicJobTicket.Jobs = new[]
        {
            new XmpJob
            {
                ID = "1",
                Name = "test job",
                Url = "https://groupdocs.com"
            },
        };

        // ... 

        metadata.Save(Constants.OutputGif);
    }
}

Lihat juga