头图

Excel广泛应用于商业、教育等众多领域,具有丰富的数据处理和分析功能,包括计算、图表、排序、筛选、数据透视表等。在处理大型数据内容时,Excel绝对是最佳工具。但如果要将处理好的数据内容进行保存和传输的话,转换为PDF文档格式或许更加可靠。PDF文档的稳定布局可以避免数据内容被随意更改,即使是在多次传输后也能保证数据的准确性。将Excel转换为PDF的工具有很多。这里我将介绍如何通过编程的方法来实现该功能。以Java代码为例,使用到的产品是Free Spire.XLS for Java(免费版)。下面是程序环境和示例代码。

程序环境

IntelliJ IDEA 2018 (jdk 1.8.0)
在进行操作之前先导入JAR包,请参考以下两种导入方式:
方法一:如果您使用的是 maven,先创建maven项目。然后通过添加以下代码来配置pom.xml 文件,再点击Import Changes将 JAR文件导入到应用程序中。

<repositories>
    <repository>
        <id>com.e-iceblue</id>
        <name>e-iceblue</name>
        <url>https://repo.e-iceblue.cn/nexus/content/groups/public/</url>
    </repository>
</repositories>
<dependencies>
    <dependency>
        <groupId>e-iceblue</groupId>
        <artifactId>spire.xls.free</artifactId>
        <version>5.1.0</version>
    </dependency>
</dependencies>

方法二:如果您没有使用 maven,则可以从此链接下载Free Spire.XLS for Java,找到lib文件夹下的Spire.XLS.jar并进行解压;然后在IDEA中创建一个新项目,依次点击“文件”(File),“项目结构”(Project Structure),“组件”(Modules),“依赖项”(Dependencies),再点击右方绿色“+”下的第一个选项“JAR文件或路径”(JARs or Directories),找到解压后的Spire.XLS.jar 文件,点击确认,将其导入到项目中。

将整个工作簿转换为PDF

代码解释:

首先,通过调用Workbook类的构造函数创建一个Workbook对象,并使用loadFromFile()方法从指定的路径加载Excel文件。接着,通过调用setSheetFitToPage()方法设置工作表适应页面,以便更好地进行PDF文件转换。最后,使用saveToFile()方法将生成的PDF文件保存到指定的位置。

示例代码:

import com.spire.xls.FileFormat;
import com.spire.xls.Workbook;

public class ConvertExcelToPdf {

    public static void main(String[] args) {

        //创建Workbook 实例并加载示例文档
        Workbook workbook = new Workbook();
        workbook.loadFromFile("C:\\Users\\Administrator\\Desktop\\Sample.xlsx");

        //转换时设置工作表适应页面
        workbook.getConverterSetting().setSheetFitToPage(true);

        //保存为PDF文档格式
        workbook.saveToFile("output/ExcelToPdf.pdf", FileFormat.PDF);
    }
}

效果图:

image.png

将特定工作表转换为PDF

代码解释:

首先通过调用Workbook类的构造函数创建一个Workbook对象,并使用loadFromFile()方法从指定的路径加载Excel文件。接下来,使用setSheetFitToWidth()方法调整工作表以适合页面大小,然后使用getWorksheets()方法从工作表列表中获取第一个工作表,并使用saveToPdf()方法保存转换后的PDF文件。

示例代码:

import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;

public class ConvertWorksheetToPdf {

    public static void main(String[] args) {

        //创建Workbook 实例并加载示例文档
        Workbook workbook = new Workbook();
        workbook.loadFromFile("C:\\Users\\Administrator\\Desktop\\Sample.xlsx");

        //转换时设置工作表适应宽度
        workbook.getConverterSetting().setSheetFitToWidth(true);

        //获取第一个工作表
        Worksheet worksheet = workbook.getWorksheets().get(0);

        //保存为PDF文档格式
        worksheet.saveToPdf("output/WorksheetToPdf.pdf");
    }
}

效果图:

image.png


Gloria
1 声望1 粉丝