Python 实用技巧:使用 Spire.XLS 将 Excel 文件转换为 PDF
将 Excel 文件转换为 PDF 是办公自动化中的常见需求。PDF 格式能够确保文档在不同设备和操作系统上保持统一的样式和布局,非常适合打印、存档或共享敏感数据。本文将详细介绍如何使用 Python 第三方库 Spire.XLS for Python 实现这一功能,涵盖基础转换、分表导出及页面设置等核心场景。
环境准备
在开始之前,请确保已安装 Python 环境(建议版本 3.6+)。推荐使用虚拟环境管理依赖,以避免包冲突。
-
创建并激活虚拟环境
python -m venv env # Windows: env\Scripts\activate # macOS/Linux: source env/bin/activate -
安装 Spire.XLS for Python 通过 pip 命令安装官方库:
pip install Spire.XLS*注意:Spire.XLS 为商业组件,免费版带有水印且限制处理行数。生产环境建议使用授权版本或考虑开源替代方案(如 LibreOffice headless)。
方法一:将整个工作簿保存为单个 PDF
此方法适用于需要将整个 Excel 文件的所有工作表合并到一个 PDF 文档中的场景。每个工作表将作为 PDF 中的一页。
from spire.xls import *
from spire.common import *
import os
# 初始化 Workbook 对象
workbook = Workbook()
try:
# 加载 Excel 文档
excel_file = "data.xlsx"
if not os.path.exists(excel_file):
print(f"文件 {excel_file} 不存在")
exit(1)
workbook.LoadFromFile(excel_file)
# 设置工作表适应页面宽度
workbook.ConverterSetting.SheetFitToPage = True
# 指定输出路径
output_file = "output_single.pdf"
# 转换为 PDF 并保存
workbook.SaveToFile(output_file, FileFormat.PDF)
print(f"成功生成:{output_file}")
finally:
workbook.Dispose()


