.NETを使用してEPSファイルからXMPメタデータを取得する

Aspose.Page XMPメタデータの品質は、Metadata Webアプリで確認できます。

EPSファイルからXMPメタデータを抽出するには、以下の手順を実行する必要があります。

  1. EPS ファイルの FileStream (または using ステートメント) を開きます (例: using var stream = new FileStream("sample.eps", FileMode.Open);)。
  2. ストリームから PsDocument を作成します (var document = new PsDocument(stream);)。
  3. XmpMetadata xmp = document.XmpMetadata; で XMP メタデータを取得します。EPS に XMP が含まれていない場合、Aspose は PS コメントから新しい XmpMetadata オブジェクトを作成します。
  4. xmp.Titlexmp.Authorxmp.Description などのメタデータ プロパティにアクセスして値を読み取ります。

次のコードスニペットは、C# で EPS ファイルから XMP メタデータを抽出する方法を示しています。

 1// Get XMP metadata from EPS document.
 2
 3// Create PsDocument instance from file
 4PsDocument document = new PsDocument(DataDir + "get_input.eps");
 5
 6// Get XMP metadata. If EPS file doesn't contain XMP metadata we get new one filled with values from PS metadata comments (%%Creator, %%CreateDate, %%Title etc)
 7XmpMetadata xmp = document.GetXmpMetadata();
 8
 9// Get "CreatorTool" value
10if (xmp.Contains("xmp:CreatorTool"))
11    Console.WriteLine("CreatorTool: " + xmp["xmp:CreatorTool"].ToStringValue());
12
13// Get "CreateDate" value
14if (xmp.Contains("xmp:CreateDate"))
15    Console.WriteLine("CreateDate: " + xmp["xmp:CreateDate"].ToStringValue());
16
17// Get a width of a thumbnail image if exists
18if (xmp.Contains("xmp:Thumbnails") && xmp["xmp:Thumbnails"].IsArray)
19{
20    XmpValue val = xmp["xmp:Thumbnails"].ToArray()[0];
21    if (val.IsNamedValues && val.ToDictionary().ContainsKey("xmpGImg:width"))
22        Console.WriteLine($"Thumbnail Width: {val.ToDictionary()["xmpGImg:width"].ToInteger()}");
23}
24
25// Get "format" value
26if (xmp.Contains("dc:format"))
27    Console.WriteLine("Format: " + xmp["dc:format"].ToStringValue());
28
29// Get "DocumentID" value
30if (xmp.Contains("xmpMM:DocumentID"))
31    Console.WriteLine("DocumentID: " + xmp["xmpMM:DocumentID"].ToStringValue());

Java および C++ での XMP メタデータの抽出方法をご覧ください。

Metadata アプリケーションで、オンラインで XMP メタデータを評価できます。

サンプルとデータ ファイルは GitHub からダウンロードできます。

Have any questions about Aspose.Page?



Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.