Holen Sie sich XMP-Metadaten aus einer EPS-Datei mit .NET
Sie können die Qualität der Aspose.Page-XMP-Metadaten bei der Arbeit mit der Metadata-Webanwendung überprüfen.
Um XMP-Metadaten aus einer EPS-Datei zu extrahieren, müssen mehrere Schritte ausgeführt werden:
- Öffnen Sie einen
FileStream(oder eine „using“-Anweisung) für die EPS-Datei, z. B.using var stream = new FileStream(„sample.eps“, FileMode.Open);. - Erstellen Sie ein „PsDocument“ aus dem Stream:
var document = new PsDocument(stream);. - Rufen Sie die XMP-Metadaten über
XmpMetadata xmp = document.XmpMetadata;ab. Wenn die EPS-Datei kein XMP enthält, erstellt Aspose ein neuesXmpMetadata-Objekt, das aus den PS-Kommentaren gefüllt wird. - Greifen Sie auf die Metadateneigenschaften wie
xmp.Title,xmp.Authorundxmp.Descriptionzu, um die Werte zu lesen.
Der folgende Codeausschnitt zeigt, wie XMP-Metadaten aus einer EPS-Datei in C# extrahiert werden:
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());Bewerten Sie XMP-Metadaten, indem Sie online mit unserer Metadatenanwendung arbeiten.
Sie können Beispiele und Datendateien herunterladen von GitHub.