使用 JavaScript 从 EPS 文件获取 XMP 元数据
要从 EPS 文件中提取 XMP 元数据,需要执行以下步骤:
- 创建文件读取器“const file_reader = new FileReader();”并读取文件“file_reader.readAsArrayBuffer(e.target.files[0]);”。
- 在加载事件处理程序中调用 AsposeEPSGetXMP,并将文件内容、文件名称和结果文件名传递给它。
- 如果 EPS 文件不包含 XMP 元数据,我们将获取一个新的 XMP 元数据,其中包含 PS 元数据注释中的值(%%Creator、%%CreateDate、%%Title 等)。
- 结果 JSON 在 fileNameResult 中包含文件名,并在 XMP 元素中获取元数据。
- 您可以使用 DownloadFile 函数下载文件:“DownloadFile(json.fileNameResult, “image/pdf”);”。并显示结果“document.getElementById(‘output’).textContent = json.XMP;”
以下代码片段展示了如何使用 JavaScript 从 EPS 文件中提取 XMP 元数据:
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 }
您可以从 GitHub下载示例和数据文件。