Obter metadados XMP de um ficheiro EPS utilizando JavaScript
Para extrair metadados XMP de um ficheiro EPS, é necessário seguir vários passos:
- Criar o leitor de ficheiros ‘const file_reader = new FileReader();’ e ler o ficheiro ‘file_reader.readAsArrayBuffer(e.target.files[0]);’.
- Ao carregar, o manipulador de eventos chama AsposeEPSGetXMP e passa-lhe o conteúdo do ficheiro, o seu nome e o nome do ficheiro de resultados. 3.Se o ficheiro EPS não contiver metadados XMP, obtemos um novo ficheiro preenchido com valores dos comentários de metadados PS (%%Creator, %%CreateDate, %%Title, etc.).
- O JSON resultante contém o nome do ficheiro em fileNameResult e obtém os metadados no elemento XMP.
- Pode descarregar ficheiros utilizando a função DownloadFile: ‘DownloadFile(json.fileNameResult, “image/pdf”);’ e apresentar o resultado ‘document.getElementById(‘output’).textContent = json.XMP;’
O seguinte excerto de código mostra como extrair metadados XMP de um ficheiro EPS em JavaScript:
1 // Get XMP metadata. If the EPS file doesn't contain XMP metadata, we get a new one filled with values from PS metadata comments (%%Creator, %%CreateDate, %%Title, etc)
2 var fGetXmpMetadata = function (e) {
3 const file_reader = new FileReader();
4 file_reader.onload = (event) => {
5 const JSON = EPSGetXMP(event.target.result, e.target.files[0].name, e.target.files[0].name + "_out.eps");
6 if (JSON.errorCode == 0) {
7 document.getElementById('output').textContent = JSON.XMP;
8 DownloadFile(JSON.fileNameResult, "image/eps");
9 }
10 else
11 document.getElementById('output').textContent = JSON.errorText;
12 }
13 file_reader.readAsArrayBuffer(e.target.files[0]);
14 }
Pode descarregar exemplos e ficheiros de dados do GitHub.