本示例可将多张图片转为一个pdf文件
pip install Pillow
from PIL import Image
import os
# 设置图片文件夹路径和输出PDF文件名
image_folder = "./images" # 替换为你的图片文件夹路径
output_pdf = "output.pdf"
# 获取所有图片文件(按文件名排序)
image_files = [
f for f in sorted(os.listdir(image_folder))
if f.lower().endswith(('.png', '.jpg', '.jpeg'))
]
# 将所有图片合并为PDF
images = []
for file in image_files:
img_path = os.path.join(image_folder, file)
img = Image.open(img_path)
# 如果图片模式为 CMYK,转为 RGB(避免保存PDF报错)
if img.mode == 'CMYK':
img = img.convert('RGB')
images.append(img)
# 保存为PDF(第一张图片为基准,后续图片追加为多页)
images[0].save(
output_pdf,
save_all=True,
append_images=images[1:],
resolution=100.0 # 可调整分辨率(默认 72 DPI)
)
print(f"PDF 已生成:{output_pdf}")