Az XMP EPS metaadatok használata

EPS-fájlok hozzáadása, szerkesztése és metaadatainak lekérése a C# segítségével

 

Az XMP metaadatok olyan tulajdonságok halmaza, amelyek a fájlt jellemzik, és XML formátumban jelennek meg. Fájlinformációkat tartalmaz, amelyek leírják a fájl tartalmát, és azonosításokat, amelyek lehetővé teszik a fájl megkülönböztetését más fájloktól. Adatokat is tárol a létrehozásról és módosításról, a fájl létrehozásában, módosításában és feltöltésében valamilyen módon részt vett felhasználókról, valamint a fájl átalakítási előzményeiről.

Az Aspose.Page API megoldás a különféle egyéb szolgáltatások mellett lehetővé teszi az EPS-fájlok XMP-metaadatainak kezelését. Itt olyan információkat talál, amelyek elmagyarázzák, hogyan kell hozzáadni, szerkeszteni és megszerezni. További példák az XMP-metaadatok . Próbálja ki XMP Metadata Editor webalkalmazásunkat is, hogy megtudja, hogyan használható a funkció.

Az XMP-metaadatok hozzáadásának lépései a C# EPS-fájlhoz

  1. Állítsa be a dokumentumok könyvtárának elérési útját.
  2. EPS-fájl beviteli adatfolyam inicializálása.
  3. Hozzon létre PS-fájlt egy adatfolyamból a PsDocument Class használatával.
  4. Az XMP-metaadatok lekéréséhez használja a GetXmpMetadata() módszert.
  5. Mentse el a módosított EPS-dokumentumot a Save() módszerrel.

C# kód XMP metaadatok hozzáadásához

    using Aspose.Page.EPS;
    using Aspose.Page.EPS.Device;
    using Aspose.Page.EPS.XMP;
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    // The path to the documents directory.
    string dataDir = RunExamples.GetDataDir_WorkingWithXMPMetadataInEPS();
    // Initialize an EPS file input stream
    System.IO.FileStream psStream = new System.IO.FileStream(dataDir + "add_input.eps", System.IO.FileMode.Open, System.IO.FileAccess.Read);
    // Create the PsDocument instance from the stream
    PsDocument document = new PsDocument(psStream);            

    try
    {
        // Get XMP metadata. If the EPS file doesn't contain XMP metadata we get new one filled with values from PS metadata comments (%%Creator, %%CreateDate, %%Title etc)
        XmpMetadata xmp = document.GetXmpMetadata();

        // Check metadata values extracted from PS metadata comments and set up in new XMP metadata

        // Get the "CreatorTool" value
        if (xmp.Contains("xmp:CreatorTool"))
        Console.WriteLine("CreatorTool: " + xmp["xmp:CreatorTool"].ToStringValue());

        // Get the "CreateDate" value
        if (xmp.Contains("xmp:CreateDate"))
            Console.WriteLine("CreateDate: " + xmp["xmp:CreateDate"].ToStringValue());

        // Get the "format" value
        if (xmp.Contains("dc:format"))
            Console.WriteLine("Format: " + xmp["dc:format"].ToStringValue());

        // Get the "title" value
        if (xmp.Contains("dc:title"))
            Console.WriteLine("Title: " + xmp["dc:title"].ToArray()[0].ToStringValue());

        // Get the "creator" value
        if (xmp.Contains("dc:creator"))
            Console.WriteLine("Creator: " + xmp["dc:creator"].ToArray()[0].ToStringValue());

        // Get the "MetadataDate" value
        if (xmp.Contains("xmp:MetadataDate"))
            Console.WriteLine("MetadataDate: " + xmp["xmp:MetadataDate"].ToStringValue());

        // Save the EPS file with new XMP metadata

        // Create the ouput stream
        using (System.IO.FileStream outPsStream = new System.IO.FileStream(dataDir + "add_output.eps", System.IO.FileMode.Create, System.IO.FileAccess.Write))
        {
            // Save the EPS file
            document.Save(outPsStream);
        }

    }
    finally
    {
        psStream.Close();
    }

Az XMP metaadatok szerkesztésének lépései EPS-fájlba C#

  1. Állítsa be a dokumentumok könyvtárának elérési útját.
  2. EPS-fájl beviteli adatfolyam inicializálása.
  3. Hozzon létre egy PS-fájlt egy adatfolyamból a PsDocument Class használatával.
  4. Az XMP metaadatok lekéréséhez használja a GetXmpMetadata() metódust.
  5. Az XMP metaadatértékek módosításához használja a SetArrayItem() módszert.
  6. Mentse el a módosított EPS fájlt.

C# kód az XMP metaadatok megváltoztatásához

    // The path to the documents directory.
    string dataDir = RunExamples.GetDataDir_WorkingWithXMPMetadataInEPS();
    // Initialize an EPS file input stream
    System.IO.FileStream psStream = new System.IO.FileStream(dataDir + "add_simple_props_input.eps", System.IO.FileMode.Open, System.IO.FileAccess.Read);
    // Create a PsDocument instance from the stream
    PsDocument document = new PsDocument(psStream);            

    try
    {
        // Get XMP metadata. If the EPS file doesn't contain XMP metadata we get new one filled with values from PS metadata comments (%%Creator, %%CreateDate, %%Title etc)
        XmpMetadata xmp = document.GetXmpMetadata();

        //Change the XMP metadata values

        // Change the title item at index 0
        xmp.SetArrayItem("dc:title", 0, new XmpValue("NewTitle"));

        // Change the creator item at index 0
        xmp.SetArrayItem("dc:creator", 0, new XmpValue("NewCreator"));

        // Save the EPS file with the changed XMP metadata

        // Create an ouput stream
        using (System.IO.FileStream outPsStream = new System.IO.FileStream(dataDir + "change_array_items_output.eps", System.IO.FileMode.Create, System.IO.FileAccess.Write))
        {
            // Save the EPS file
            document.Save(outPsStream);
        }

    }
    finally
    {
        psStream.Close();
    }

A C# EPS-fájl XMP-metaadatainak lekérésének lépései

  1. Állítsa be a dokumentumok könyvtárának elérési útját.
  2. EPS-fájl beviteli adatfolyam inicializálása.
  3. Hozzon létre egy PS-fájlt egy adatfolyamból a PsDocument Class használatával.
  4. Szerezzen be XMP metaadatokat a GetXmpMetadata() metódussal.

C# kód az XMP metaadatok lekéréséhez

    // The path to the documents directory.
    string dataDir = RunExamples.GetDataDir_WorkingWithXMPMetadataInEPS();
    // Initialize an EPS file input stream
    System.IO.FileStream psStream = new System.IO.FileStream(dataDir + "get_input.eps", System.IO.FileMode.Open, System.IO.FileAccess.Read);
    // Create a PsDocument instance from the stream
    PsDocument document = new PsDocument(psStream);            

    try
    {
        // Get XMP metadata. If the EPS file doesn't contain XMP metadata we get new one filled with values from PS metadata comments (%%Creator, %%CreateDate, %%Title etc)
        XmpMetadata xmp = document.GetXmpMetadata();

        // Get the "CreatorTool" value
        if (xmp.Contains("xmp:CreatorTool"))
            Console.WriteLine("CreatorTool: " + xmp["xmp:CreatorTool"].ToStringValue());
                
        // Get the "CreateDate" value
        if (xmp.Contains("xmp:CreateDate"))
            Console.WriteLine("CreateDate: " + xmp["xmp:CreateDate"].ToStringValue());

        // Get a width of a thumbnail image if exists
        if (xmp.Contains("xmp:Thumbnails") && xmp["xmp:Thumbnails"].IsArray)
        {
            XmpValue val = xmp["xmp:Thumbnails"].ToArray()[0];
            if (val.IsNamedValues && val.ToDictionary().ContainsKey("xmpGImg:width"))
                Console.WriteLine("Thumbnail Width: " + val.ToDictionary()["xmpGImg:width"].ToInteger());
        }

        // Get the "Format" value
        if (xmp.Contains("dc:format"))
            Console.WriteLine("Format: " + xmp["dc:format"].ToStringValue());

        // Get the "DocumentID" value
        if (xmp.Contains("xmpMM:DocumentID"))
            Console.WriteLine("DocumentID: " + xmp["xmpMM:DocumentID"].ToStringValue());

    }
    finally
    {
        psStream.Close();
    }



GYIK

1. Mi az XMP metaadat?

Az XMP az Extensible Metadata Platform rövidítése, amely a metaadat-tulajdonságok médiafájlokba való beágyazásának szabványa.

2. Milyen információkat tartalmaz az XMP?

Információk találhatók az alkalmazás szerzőjéről, szerkesztőjéről és készítőjéről a verzióval, címmel, leírással, kulcsszavakkal, azonosítókkal, amelyek lehetővé teszik a fájl egyedi azonosítását és az előzmények információit.

3. Hogyan lehet XMP-metaadatokat hozzáadni egy EPS-fájlhoz?

Állítsa be a dokumentumok könyvtárának elérési útját, és hozza létre az EPS-fájlt egy adatfolyamból. XMP metaadatok hozzáadásához használja az XmpMetadata osztály Add() metódusait.

EPS Mi a EPS fájlformátum

Az EPS (ERSF) vagy az Encapsulated PostScript File Format az a formátum, amely valójában egy PS-program, amely leírja, hogyan nézzen ki egy oldal. Valójában korlátozott PS és különleges megjegyzések, amelyek segítenek a PostScript grafikák egy másik dokumentumba ágyazásában. Az EPS tökéletesen támogatja a vektorgrafikát vagy a kombinált vektor-raszteres grafikát. A formátum sajátossága, hogy amint egy dokumentumba importálják, már nem szerkeszthető. Ez az egyik oka annak, hogy ezt a formátumot olyanra alakítsa, amellyel dolgozni tud.