将图片转为 PDF 的主要原因之一是为了方便共享和传输。此外,将多张图片合并成一个 PDF 文件还可以简化文件管理。之前文章详细介绍过如何使用第三方库Spire.PDF for Python将PDF文件转为图片,那么本文介绍使用同样工具在Python中实现图片转PDF文件的功能。
通过以下pip命令进行安装Python库:
pip install Spire.PDF
Python 实现图片转PDF
以下是将一个文件夹中的多张图片转换为一个PDF文件的示例。几乎每行代码都有详细注释,并且Spire.PDF for Python提供的接口也非常简单易懂,大家可直接查看。
from spire.pdf.common import *
from spire.pdf import *
import os# 创建PdfDocument对象
doc = PdfDocument()# 将页边距设置为0
doc.PageSettings.SetMargins(0.0)# 指定存放图片的文件夹路径
path = "C:\\Users\\Administrator\\Desktop\\图片\\"
files = os.listdir(path)# 遍历文件夹中的文件
for root, dirs, files in os.walk(path):for file in files:# 加载图片image = PdfImage.FromFile(os.path.join(root, file)) #FromFile(os.path.join(root, file))# 获取图片的宽度和高度width = image.PhysicalDimension.Widthheight = image.PhysicalDimension.Height# 在PDF中添加与图片相同尺寸的页面page = doc.Pages.Add(SizeF(width, height))# 从页面的 (0, 0) 处开始绘制图片page.Canvas.DrawImage(image, 0.0, 0.0, width, height)# 保存生成文件
doc.SaveToFile("图片转Pdf.pdf")
doc.Dispose()
图片转PDF效果图:
参考:
Python PDF库下载链接https://www.e-iceblue.cn/Downloads/Spire-PDF-Python.html
Spire.PDF for Python 安装教程https://www.e-iceblue.cn/pdf_python_other/how-to-install-spire-pdf-for-python-in-vs-code.html
Python 操作PDF教程https://www.e-iceblue.cn/pdfforpython/spire-pdf-for-python-program-guide-content.html
申请授权移除水印https://www.e-iceblue.cn/misc/temporary-license.html