我们很高兴宣布 GroupDocs.Conversion for Java 26.10 已于 2026年10月 发布。此版本引入了对 ISO 和 UUE(uuencode)归档转换的支持、通过可配置的解码器连接器进行 HEIC 图像转换,以及在将 WordProcessing、Spreadsheet、Presentation 和 PDF 文档转换时删除内置和自定义文档元数据的功能。它还包括对文件类型检测、页面尺寸、边距保留的改进,并修复了若干错误——包括在 26.9 版本中出现的关键回归,即首次调用 License.setLicense() 失败。

本次发布的新功能

  • [功能] 将 ZIP、7z、TAR 和 CPIO 归档转换为 ISO (CONVERSIONNET-7079)
  • [功能] 将 ISO 归档转换为 ZIP、7z、TAR 和 CPIO (CONVERSIONNET-7078)
  • [功能] 将 UUE 转换为 Bzip2、Gzip、Lzip、LZMA、XZ、Unix Z、Zstandard、UUE 以及受支持的归档格式 (CONVERSIONNET-7154)
  • [功能] 将 Bzip2、Gzip、LZMA、XZ、Unix Z 和 Zstandard 转换为 UUE (CONVERSIONNET-7155)
  • [功能] 通过解码器连接器支持从 HEIC 图像进行转换 (CONVERSIONNET-7140)
  • [增强] 当 LoadOptions 未指定格式时改进文件类型检测 (CONVERSIONNET-7161)
  • [增强] 从 PDF 文档转换时删除元数据 (CONVERSIONNET-7131)
  • [增强] 从 演示文稿 文档转换时删除元数据 (CONVERSIONNET-7130)
  • [增强] 从 电子表格 文档转换时删除元数据 (CONVERSIONNET-7129)
  • [增强] 从 文字处理 文档转换时删除元数据 (CONVERSIONNET-7128)
  • [错误] 在按文件名转换时遵循 LoadOptions 中指定的文件类型 (CONVERSIONNET-7089)
  • [错误] 修复 macOS 和 Linux 上的图表转图像转换 (CONVERSIONNET-7088)
  • [错误] 正确应用请求的页面尺寸 (CONVERSIONNET-7080)
  • [错误] 在转换输出中包含自定义 MPP 列 (CONVERSIONNET-6905)
  • [错误] 修复通过 PDF 的 HTML 到 RTF 转换 (CONVERSIONNET-6969)
  • [错误] 修复从 Word 文档中提取原生和转换后的嵌入文本文件 (CONVERSIONNET-7138)
  • [错误] 修复 PDF 文档信息检索 (CONVERSIONNET-7183)
  • [任务] 在转换操作和保存器中实现取消令牌 (CONVERSIONJAVA-3265)
  • [任务] 使转换可取消 (CONVERSIONJAVA-3266)
  • [错误] 修复首次调用 License.setLicense() 时的 IllegalAccessError,该错误导致库处于评估模式(26.9 中的回归) (CONVERSIONJAVA-3300)

公共 API 更改

ISO 和 UUE 转换支持

使用 CompressionConvertOptions.setFormat(...) 并传入 CompressionFileType.Iso 或 CompressionFileType.Uue。

import com.groupdocs.conversion.Converter;
import com.groupdocs.conversion.filetypes.CompressionFileType;
import com.groupdocs.conversion.options.convert.CompressionConvertOptions;

CompressionConvertOptions options = new CompressionConvertOptions();
options.setFormat(CompressionFileType.Iso);

try (Converter converter = new Converter("input.zip")) {
    converter.convert("converted.iso", options);
}

ISO 支持与 ZIP、7z、TAR 和 CPIO 之间的相互转换,以及 ISO 到 ISO 的转换。
UUE 可以转换为 Bzip2、Gzip、Lzip、LZMA、XZ、Unix Z、Zstandard、UUE、ZIP、7z、TAR、CPIO 和 ISO。
支持从 Bzip2、Gzip、LZMA、XZ、Unix Z 和 Zstandard 转换为 UUE。不支持 Lzip 转换为 UUE。

HEIC 转换支持

使用 RasterImageLoadOptions.setHeicConnector(...) 配置 com.groupdocs.conversion.integration.heic.IHeicConnector 的实现,并在加载 HEIC 图像时将这些加载选项传递给 Converter。
该连接器提供 HEIC 解码器;HEIC 转换需要解码器实现。

IHeicConnector.getBitmapInfo(InputStream) 返回已解码的位图。其默认的 getDecodedBitmapInfo(InputStream) 方法将该位图适配为 com.groupdocs.conversion.contracts.BitmapInfo。连接器可以覆盖后者方法,以直接提供已解码的像素数据。

元数据删除

WordProcessingLoadOptions、SpreadsheetLoadOptions、PresentationLoadOptions 和 PdfLoadOptions 实现 IMetadataLoadOptions,并公开 setClearBuiltInDocumentProperties(boolean) 和 setClearCustomDocumentProperties(boolean),以及相应的 getter。两个选项默认值为 false。

import com.groupdocs.conversion.Converter;
import com.groupdocs.conversion.options.convert.PdfConvertOptions;
import com.groupdocs.conversion.options.load.WordProcessingLoadOptions;

WordProcessingLoadOptions loadOptions = new WordProcessingLoadOptions();
loadOptions.setClearBuiltInDocumentProperties(true);
loadOptions.setClearCustomDocumentProperties(true);

try (Converter converter = new Converter("input.docx", () -> loadOptions)) {
    converter.convert("converted.pdf", new PdfConvertOptions());
}

可空页面边距和电子表格默认值

IPageMarginConvertOptions、PdfConvertOptions 和 WordProcessingConvertOptions 中的边距 getter 现在返回 Float 而不是 float。边距默认值为 null,在适用时保留源文档的边距。setter 接受可空的 Float 值;原始的 float setter 重载仍然可用。

请针对更新后的库重新编译应用程序。对边距 getter 结果进行拆箱的代码必须处理 null。设置显式边距以保持固定边距布局。

SpreadsheetLoadOptions.getAllColumnsInOnePagePerSheet() 和 getSkipEmptyRowsAndColumns() 现在默认值为 false。如果您的应用程序需要所有列在同一页或省略空行和列,请显式设置为 true。

电子邮件加载选项

移除了过时的 EmailLoadOptions.getDisplayEmailAddress() 和 setDisplayEmailAddress(boolean) 方法。请改用 getDisplayFromEmailAddress() 和 setDisplayFromEmailAddress(boolean)。

加载选项格式检测

覆盖多种文件类型的加载选项不再分配默认格式。当 Format 未指定时,源格式将从输入中检测。按文件名加载时,会尊重显式指定的格式。

新功能

此版本引入了新格式、元数据控制和转换修复:

  • 添加了 ISO 归档的相互转换。
  • 添加了 UUE(uuencode)的相互转换,格式对应关系见下文。
  • 通过可配置的解码器连接器添加了 HEIC 图像转换。
  • 添加了在转换 WordProcessing、Spreadsheet、Presentation 和 PDF 文档时删除内置和自定义文档属性的选项。
  • 改进了文件类型检测、页面尺寸以及源文档边距的保留。
  • 修复了 macOS 和 Linux 上的图表转图像转换、MPP 自定义列、嵌入文本提取和 PDF 页面选择问题。
  • 修复了 26.9 中的回归,即首次调用 License.setLicense() 抛出 IllegalAccessError 并导致库处于评估模式。

代码示例

import com.groupdocs.conversion.Converter;
import com.groupdocs.conversion.filetypes.CompressionFileType;
import com.groupdocs.conversion.options.convert.CompressionConvertOptions;

CompressionConvertOptions options = new CompressionConvertOptions();
options.setFormat(CompressionFileType.Iso);

try (Converter converter = new Converter("input.zip")) {
    converter.convert("converted.iso", options);
}

如何获取更新

Maven

通过 Maven 升级到最新的 GroupDocs.Conversion 包:

GroupDocs.Conversion for Java 26.10

<dependency>
    <groupId>com.groupdocs</groupId>
    <artifactId>groupdocs-conversion</artifactId>
    <version>26.10</version>
</dependency>

资源