使用 GroupDocs.Conversion 在 Java 中将 Excel 转换为 PDF 并进行字体替换

介绍

将 Excel 电子表格转换为 PDF 时,保持一致的排版可能颇具挑战性。本指南演示了如何使用 GroupDocs.Conversion for Java 可无缝将 Excel 文件转换为 PDF,并包含字体替换功能。非常适合专注于文档管理解决方案或自动化报告生成的开发人员和业务专业人员。

您将学到什么:

  • 设置并使用 Java 的 GroupDocs.Conversion。
  • 在 Excel 到 PDF 的转换过程中替换字体。
  • 配置设置以优化转换。
  • 解决常见问题。

让我们继续讨论开始之前所需的先决条件。

先决条件

在实现代码之前,请确保您已具备以下条件:

所需的库和依赖项

确保您拥有 GroupDocs.Conversion 库版本 25.2 或更高版本,可以使用 Maven 进行管理。

环境设置要求

  • 您的机器上安装了 Java 开发工具包 (JDK)。
  • 用于编写和运行 Java 代码的 IDE,例如 IntelliJ IDEA 或 Eclipse。

知识前提

了解 Java 编程、通过 Maven 管理库以及文件转换概念将大有裨益,但并非绝对必要。现在,让我们继续在项目中设置 GroupDocs.Conversion。

为 Java 设置 GroupDocs.Conversion

使用 GroupDocs.转换 要将 Excel 转换为 PDF,请按照以下步骤操作:

Maven配置

首先,将必要的存储库和依赖项信息添加到您的 pom.xml 文件:

<repositories>
   <repository>
      <id>repository.groupdocs.com</id>
      <name>GroupDocs Repository</name>
      <url>https://releases.groupdocs.com/conversion/java/</url>
   </repository>
</repositories>

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

许可证获取

获取临时执照 群组文档 以便在评估期间可以完全访问功能。

基本初始化和设置

配置 Maven 后,在 Java 应用程序中初始化 GroupDocs.Conversion:

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

public class ConvertExcelToPDF {
    public static void main(String[] args) {
        String inputDocument = "sample.xlsx";
        String convertedFile = "output.pdf";

        // 使用文档路径初始化 Converter 对象
        Converter converter = new Converter(inputDocument);

        PdfConvertOptions options = new PdfConvertOptions();
        
        // 执行转换
        converter.convert(convertedFile, options);
    }
}

实施指南

本节介绍如何将 Excel 文件转换为 PDF 并替换字体。当原始字体不可用时,这可以确保视觉一致性。

字体替换功能概述

GroupDocs.Conversion 允许在转换期间定义特定的字体替换,从而保持不同系统间的外观。

步骤 1:定义输入和输出路径

确定输入的 Excel 文件路径和所需的输出 PDF 路径:

String inputDocument = "YOUR_DOCUMENT_DIRECTORY/sample.xlsx";
String convertedFile = "YOUR_OUTPUT_DIRECTORY/ConvertSpreadsheetBySpecifyingFontsubstitution.pdf";

步骤 2:设置字体替换的加载选项

创建一个 SpreadsheetLoadOptions 对象来配置转换设置,指定字体替换:

import com.groupdocs.conversion.options.load.SpreadsheetLoadOptions;
import com.groupdocs.conversion.contracts.FontSubstitute;

List<FontSubstitute> fontSubstitutes = new ArrayList<>();
fontSubstitutes.add(FontSubstitute.create("Tahoma", "Arial")); // 用 Arial 替代 Tahoma
fontSubstitutes.add(FontSubstitute.create("Times New Roman", "Arial")); // 用 Arial 替代 Times New Roman

SpreadsheetLoadOptions loadOptions = new SpreadsheetLoadOptions();
loadOptions.setFontSubstitutes(fontSubstitutes);

步骤3:配置默认字体和单页转换

设置默认字体作为后备,确保每张纸都转换为一个 PDF 页面:

loadOptions.setDefaultFont("resources/fonts/Helvetica.ttf");
loadOptions.setOnePagePerSheet(true);

步骤 4:使用加载选项初始化转换器

将加载选项传递给您的 Converter 目的:

Converter converter = new Converter(inputDocument, () -> loadOptions);

步骤 5:定义 PDF 转换选项并转换

指定转换格式并执行流程:

PdfConvertOptions options = new PdfConvertOptions();
converter.convert(convertedFile, options);

故障排除提示

  • 缺少字体:确保您的系统上安装了替代字体。
  • 路径不正确:验证输入和输出文档的文件路径。

实际应用

转换过程中的字体替换有几种实际用途:

  1. 商业报告:跨平台一致的财务报告呈现。
  2. 法律文件:保持共享 PDF 的外观。
  3. 学术出版:标准化论文和演示文稿的字体。
  4. 营销材料:统一的营销手册或通讯。
  5. 协作工具:简化文档管理系统。

性能考虑

为了优化性能:

  • 使用高效的文件处理来最大限度地减少内存使用。
  • 配置 JVM 设置以实现更好的资源分配。
  • 处理大型文档时应用 Java 内存管理最佳实践。

结论

本教程向您展示了如何使用 GroupDocs.Conversion for Java 将 Excel 文件转换为 PDF 并进行字体替换,从而确保整个文档工作流程中的字体排版一致。探索 GroupDocs.Conversion 的更多功能,并根据需要将其应用于其他格式。

后续步骤

  • 尝试不同的转换选项。
  • 与 Aspose.Cells 等系统集成以扩展功能。

准备好在下一个项目中实施此解决方案了吗?

常见问题解答部分

1. GroupDocs.Conversion for Java 用于什么?

  • 用于转换各种文档格式(包括 Excel 和 PDF)的库,具有字体替换等可自定义的设置。

2. 我可以不购买许可证就使用 GroupDocs.Conversion 吗?

  • 是的,您可以通过免费试用或临时许可证在购买前探索其功能。

3. 如何处理转换过程中丢失的字体?

  • 使用以下方式定义替代品 FontSubstitute 加载选项内的对象以实现一致的排版。

4. 使用 GroupDocs.Conversion 优化 Java 性能的一些最佳实践是什么?

  • 高效的内存管理和JVM配置可以显著提高性能。