Travailler avec les métadonnées EPS XMP

Ajouter, modifier et obtenir des métadonnées de fichiers EPS avec C#

 

Les métadonnées XMP sont un ensemble de propriétés qui caractérisent le fichier et sont représentées au format XML. Il contient des informations sur le fichier qui décrivent le contenu du fichier et des identifications qui permettent de distinguer ce fichier des autres fichiers. Il stocke également des données sur la création et la modification, les utilisateurs qui ont participé d'une manière ou d'une autre à la création, à la modification et au téléchargement du fichier, ainsi que l'historique de la transformation du fichier.

La solution API Aspose.Page parmi les différentes autres fonctionnalités permet de travailler les métadonnées XMP des fichiers EPS. Vous trouverez ici des informations expliquant comment l’ajouter, la modifier et l’obtenir. Découvrez d’autres exemples d’utilisation des métadonnées XMP . Essayez également notre application Web XMP Metadata Editor pour voir comment la fonctionnalité peut être utilisée.

Étapes pour ajouter des métadonnées XMP au fichier EPS C#

  1. Définissez le chemin d’accès au répertoire des documents.
  2. Initialiser un flux d’entrée de fichier EPS.
  3. Créez un fichier PS à partir d’un flux à l’aide de PsDocument Class .
  4. Pour obtenir des métadonnées XMP, utilisez la méthode GetXmpMetadata() .
  5. Enregistrez le document EPS modifié à l’aide de la méthode Save() .

Code C# pour ajouter des métadonnées XMP

    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();
    }

Étapes pour modifier les métadonnées XMP dans le fichier EPS C#

  1. Définissez le chemin d’accès au répertoire des documents.
  2. Initialiser un flux d’entrée de fichier EPS.
  3. Créez un fichier PS à partir d’un flux à l’aide de la classe PsDocument.
  4. Pour obtenir les métadonnées XMP, utilisez la méthode GetXmpMetadata().
  5. Pour modifier les valeurs des métadonnées XMP, utilisez la méthode SetArrayItem() .
  6. Enregistrez le fichier EPS modifié.

Code C# pour modifier les métadonnées XMP

    // 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();
    }

Étapes pour obtenir les métadonnées XMP du fichier EPS C#

  1. Définissez le chemin d’accès au répertoire des documents.
  2. Initialiser un flux d’entrée de fichier EPS.
  3. Créez un fichier PS à partir d’un flux à l’aide de la classe PsDocument.
  4. Obtenez les métadonnées XMP à l’aide de la méthode GetXmpMetadata().

Code C# pour obtenir les métadonnées XMP

    // 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();
    }



FAQ

1. Que sont les métadonnées XMP ?

XMP est l’abréviation de Extensible Metadata Platform, une norme permettant d’intégrer des propriétés de métadonnées dans des fichiers multimédias.

2. Quelles informations sont incluses dans XMP ?

Il existe des informations sur l’auteur, l’éditeur et le créateur de l’application avec la version, le titre, la description, les mots-clés, les identifiants qui permettent d’identifier de manière unique le fichier et les informations d’historique.

3. Comment ajouter des métadonnées XMP à un fichier EPS ?

Définissez le chemin d’accès au répertoire des documents et créez le fichier EPS à partir d’un flux. Pour ajouter des métadonnées XMP, utilisez les méthodes Add() de la classe XmpMetadata.

EPS Qu'est-ce que le format de fichier EPS

EPS (ERSF) ou format de fichier PostScript encapsulé est le format qui est en fait un programme PS qui décrit à quoi ressemblerait une seule page. Il s'agit en fait d'un PS limité et de notes particulières qui aident à encapsuler des graphiques PostScript dans un autre document. EPS prend parfaitement en charge les graphiques vectoriels ou les graphiques vectoriels-raster combinés. La particularité du format est que dès qu'il est importé dans un document, il ne peut plus être édité. C'est l'une des raisons de convertir ce format en celui avec lequel vous êtes capable de travailler.