更改 EPS 的 XMP 元数据中的命名值 |Java

要更改 EPS 文件的 XMP 元数据中的命名值,需要执行以下步骤:

  1. 初始化用于输入 EPS 文件的输入流。
  2. 从先前创建的输入流创建 PsDocument 的实例。
  3. 从 PsDocument 获取 XmpMetadata 的实例。如果给定的 EPS 文件不包含 XMP 元数据,则将创建新的实例,并使用 PS 元数据注释中的值填充该实例并返回给您。
  4. 现在您可以更改结构元数据字段的命名值。
  5. 初始化用于输出 EPS 文件的输出流。
  6. 保存包含更改后的 XMP 元数据的 EPS 文件。


以下代码片段展示了如何在 Java 中更改 EPS 文件中 XMP 元数据中的命名值:

 1// Set license
 2new License().setLicense(BaseExamplesTest.LICENSE_PATH);
 3
 4// The path to the documents directory.
 5String dataDir = Utils.getDataDir();
 6
 7// Initialize input EPS file stream
 8FileInputStream psStream = new FileInputStream(dataDir + "xmp4.eps");
 9
10PsDocument document = new PsDocument(psStream);
11
12try {
13    // 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)
14    XmpMetadata xmp = document.getXmpMetadata();
15
16    // Set new string value "Inches" for named value "stDim:unit" of structure "xmpTPg:MaxPageSize" 
17    xmp.setNamedValue("xmpTPg:MaxPageSize", "stDim:unit", new XmpValue("Inches"));
18    
19    
20    // Initialize output EPS file stream
21    FileOutputStream outPsStream = new FileOutputStream(dataDir + "xmp4_changed.eps");
22    
23    // Save document with changed XMP metadata
24		try {			
25			document.save(outPsStream);
26		} finally {
27			outPsStream.close();
28		}
29
30} finally {
31    // close input EPS stream
32		psStream.close();
33}

请参阅 .NETC++ 中 XMP 元数据中命名值的更改。

您可以从 GitHub下载示例和数据文件。

Have any questions about Aspose.Page?



Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.