Obter metadados XMP de um ficheiro EPS utilizando .NET
Pode verificar a qualidade dos metadados XMP do Aspose.Page trabalhando com a aplicação web Metadados.
Para extrair metadados XMP de um ficheiro EPS, é necessário seguir vários passos:
- Abra um
FileStream(ou instruçãousing) para o ficheiro EPS, por exemplo,using var stream = new FileStream("sample. eps", FileMode. Open);. - Crie um
PsDocumenta partir do fluxo:var document = new PsDocument(stream);. - Recupere os metadados XMP através de
XmpMetadata xmp = document.XmpMetadata;. Se o EPS não contiver XMP, o Aspose criará um novo objetoXmpMetadatapreenchido com os comentários PS. - Aceda às propriedades de metadados, como
xmp.Title,xmp.Author,xmp.Descriptionpara ler os valores.
O seguinte excerto de código mostra como extrair metadados XMP de um ficheiro EPS em C#:
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());Avalie os metadados XMP a funcionar online na nossa aplicação Metadados.
Pode descarregar exemplos e ficheiros de dados do GitHub.