Word文件(Doc、Docx)和PDF文件都是使用广泛的文档格式。其中,Word文档格式在编辑内容时优势明显,能够满足各种编辑需求。但想要保证文档的完整和格式的一致,以及使文档有良好的跨平台兼容性,PDF格式则是更好的选择。PDF文档可以在各种平台和设备上打开,并且保持文档的格式和外观一致,同时还有更好的安全性。因此,将Word文档转换为PDF文档也成为一种常见需求。本文将介绍如何使用Spire. Doc for Python实现将Word文档转换为PDF文件,包括批量转换以及各种转换参数的设置。
文章目录
- 引入Spire.Doc for Python
- 将单个Word文档转换为PDF文件
- 批量转换Word文档为PDF文件
- 转换时设置转换参数(加密、包含书签、嵌入字体、图片质量)
引入Spire.Doc for Python
此教程需要使用Spire.Doc for Python。可通过以下 pip 命令将它们轻松安装到 VS 代码中。
pip install Spire.Doc
将单个Word文档转换为PDF文件
Spire.Doc for Python 中的 Document.SaveToFile() 方法,可将 Word 保存为 PDF、XPS、HTML、RTF 等格式。下面是直接将一个Word文档保存为PDF文件的操作步骤:
- 创建一个 Document 类的对象。
- 使用 Document.LoadFromFile() 方法加载 Word 文档示例。
- 使用 Doucment.SaveToFile() 方法将文档保存为 PDF 文件。
Python
from spire.doc import *
from spire.doc.common import *
# 创建一个Document类的对象
document = Document()
# 载入Word文档
document.LoadFromFile("G:/文档/示例1.docx")
# 保存文档为PDF文件
document.SaveToFile("输出/PDF1.pdf", FileFormat.PDF)
document.Close()
转换结果
批量转换Word文档为PDF文件
下面是将Word文档批量转换为PDF文件的操作步骤,包含Doc和Docx格式的Word文档:
- 创建一个 Document 类的对象。
- 遍历指定文件夹中的所有文件,并判断出后缀为.doc和.docx的文件。
- 使用 Document.LoadFromFile() 方法逐个载入文档。
- 使用 Document.SaveToFile() 方法转换文档为PDF格式并保存到指定路径。
Python
import os
from spire.doc import *
from spire.doc.common import *
# 获取文件夹路径
folder_path = "G:/文档"
# 创建一个Document类的对象
document = Document()
# 遍历文件夹中的所有文件
for file_name in os.listdir(folder_path):
if file_name.endswith(".doc") or file_name.endswith(".docx"):
# 构建完整的文件路径
file_path = os.path.join(folder_path, file_name)
# 载入Word文档
document.LoadFromFile(file_path)
# 生成输出文件路径
output_path = os.path.join("输出1", os.path.splitext(file_name)[0] + ".pdf")
# 保存文档为PDF文件
document.SaveToFile(output_path, FileFormat.PDF)
document.Close()
转换结果
转换时设置转换参数(加密、包含书签、嵌入字体、图片质量)
Spire.Doc for Python还支持在转换Word文档时进行加密、包含书签、嵌入字体、设置图片质量等操作,通过 ToPdfParameterList 类下的属性以及 Document.JPEGQuality 属性实现。详细操作步骤如下:
- 创建一个 Document 类的对象。
使用 Document.LoadFromFile() 方法加载 Word 文档示例。
创建一个 ToPdfParameterList 类的对象。
使用 ToPdfParameterList.PdfSecurity.Encrypt() 方法设置查看密码和权限密码。
使用 ToPdfParameterList.CreateWordBookmarks 属性设置直接转换Word文档书签到PDF书签,或使用 ToPdfParameterList.CreateWordBookmarksUsingHeadings 属性设置从各级标题生成PDF书签。
使用 ToPdfParameterList.IsEmbeddedAllFonts 属性设置嵌入字体。
使用 Document.JPEGQuality 属性设置图像质量。
使用 Doucment.SaveToFile() 方法应用参数将文档保存为 PDF 文件。
Python
from spire.doc import *
from spire.doc.common import *
# 创建一个Document类的对象
document = Document()
# 载入Word文档
document.LoadFromFile("G:/文档/示例1.docx")
# 创建一个ToPdfParameterList类的对象
parameter = ToPdfParameterList()
# 设置查看密码和权限密码
openpsd = "password"
permissionpsd = "permission"
parameter.PdfSecurity.Encrypt(openpsd, permissionpsd, PdfPermissionsFlags.Default, PdfEncryptionKeySize.Key128Bit)
# 包含书签
parameter.CreateWordBookmarks = True
# 使用标题创建书签
# parameter.CreateWordBookmarksUsingHeadings = True
# 嵌入字体
parameter.IsEmbeddedAllFonts = True
# 设置图片质量
document.JPEGQuality = 40
#保存文档为PDF文件
document.SaveToFile("输出/PDF2.pdf", parameter)
document.Close()
转换结果
以上就是使用Spire.Doc for Python将Word文档转换为PDF文件的操作方法介绍。如有疑问可前往 官方论坛 讨论。
Spire.Doc 产品QQ交流群:913816707