使用 Python 将 JPG / PNG 转换为 PDF (含合并)
在数字化时代,图像与文档的转换与管理变得越来越重要。尤其是在需要将多张 JPG 或 PNG 图片合并成一份 PDF 文件时,使用 Python 编程语言提供了一种简单而高效的解决方案。本文将介绍如何利用 Spire.PDF for Python 库实现图像转换和合并操作。 在开始之前,确保你已经安装了 Python 环境以及 Spire.PDF for Python 库。可以通过以下命令进行安装: 此外,确保你的电脑上有需要转换的 JPG 或 PNG 图像,并将其放在一个文件夹中。 以下是将 JPG 和 PNG 图片转换为 PDF 文件的示例代码: 首先,导入所需的 使用 调用 使用 对于每个文件,使用 根据图像的尺寸创建一个与其相同大小的页面,使用 使用 最后,调用 通过使用 Spire.PDF for Python 库,我们可以轻松地将多张 JPG 或 PNG 图像合并为一份 PDF 文件。这种方法不仅简单高效,而且在处理大量图像时表现出色。无论是工作还是个人项目,这种自动化的图片处理方式都能够节省大量时间。希望这篇文章能帮助你更好地掌握图像转换与合并的技巧!一、工具准备
pip install Spire.PDF二、代码实现
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\\Images\\"
files = os.listdir(path)
# 遍历文件夹中的文件
for root, dirs, files in os.walk(path):
for file in files:
# 加载特定的图像
image = PdfImage.FromFile(os.path.join(root, file))
# 获取图像的宽度和高度
width = image.PhysicalDimension.Width
height = image.PhysicalDimension.Height
# 添加页面,其大小与图像相同
page = doc.Pages.Add(SizeF(width, height))
# 在页面的 (0, 0) 位置绘制图像
page.Canvas.DrawImage(image, 0.0, 0.0, width, height)
# 保存文件
doc.SaveToFile("output/CombineImages.pdf")
doc.Dispose()三、代码解析
spire.pdf 和 os 库,后者用于文件和目录操作。PdfDocument() 初始化一个 PDF 文档对象,之后可以对该对象进行进一步操作。SetMargins(0.0) 方法,将页面边距设置为 0,这样图像可以完全填满整个页面。os.listdir(path) 获取指定目录下的所有文件,并使用 os.walk 遍历该目录中的所有文件。PdfImage.FromFile() 函数加载图像,并获取其宽度和高度。doc.Pages.Add() 方法。page.Canvas.DrawImage() 将图像绘制到页面的指定位置。doc.SaveToFile() 将合并后的 PDF 文件保存到指定路径。四、总结