使用Python把目录下的所有图片,合并成一个PDF

目录

■前言

■Python代码

■启动用的Bat

■前提

■效果


====

■前言

图片一张张看太累了。

=====

■Python代码

===

python 复制代码
import os
from PIL import Image
from natsort import natsorted

def jpg_to_pdf(image_folder, output_pdf_path="output.pdf"):
    """
    将文件夹中的所有JPG图片合并为一个PDF文件
    :param image_folder: 图片所在文件夹路径
    :param output_pdf_path: 输出PDF的文件名/路径
    """
    # 存储合法的图片对象
    image_list = []
    
    # 获取文件夹中所有文件,自然排序(1,2,10 而不是 1,10,2)
    files = natsorted(os.listdir(image_folder))
    
    for file in files:
        # 只处理JPG/JPEG格式
        if file.lower().endswith((".jpg", ".jpeg")):
            img_path = os.path.join(image_folder, file)
            try:
                # 打开图片并转换为RGB(PDF不支持透明通道)
                img = Image.open(img_path).convert("RGB")
                image_list.append(img)
                print(f"已添加:{file}")
            except Exception as e:
                print(f"跳过损坏文件 {file}:{str(e)}")
    
    if not image_list:
        print("错误:未找到任何有效的JPG图片!")
        return
    
    # 保存为PDF(第一张图作为基底,后续追加)
    image_list[0].save(
        output_pdf_path,
        save_all=True,
        append_images=image_list[1:]
    )
    print(f"\✅ 转换完成!PDF已保存至:{os.path.abspath(output_pdf_path)}")

# ====================== 使用方法 ======================
if __name__ == "__main__":
    # 【修改这里】填写你的图片文件夹路径
    IMAGE_FOLDER = r"G:\迅雷下载\OnePiece_068_J"
    
    # 执行转换
    jpg_to_pdf(IMAGE_FOLDER, "合并后的图片.pdf")

===

■启动用的Bat

bash 复制代码
@echo off
 
rem pause
echo waiting...
 
"C:\Program Files\Python38\python.exe" ./CreatePDF.py
 

===

■前提

pip install pillow natsort

如果已经安装,就不用安装了,如果已经安装,是下面的效果提示

===

■效果

==

===

===

相关推荐
泡海椒1 小时前
jquick-pdf 表格实战:动态数据 PDF 报表生成
java·开发语言·pdf
泡海椒5 小时前
jquick-pdf 表格行列尺寸控制实战:单元格合并的可行边界
java·开发语言·pdf
java_logo21 小时前
Docker 部署 Gotenberg 完整教程:Compose 搭建文档转 PDF API
docker·pdf·chromium·libreoffice·文档转换·轩辕镜像·gotenberg
泡海椒1 天前
jquick-pdf 防止 PDF 内容分页断裂:keepTogether 属性妙用
java·开发语言·pdf
泡海椒1 天前
jquick-pdf 文本元素实战:段落、行内文本、制表符用法详解
java·开发语言·pdf
SamChan902 天前
Python 处理小语种 PDF 的编码坑:重音字符、连字与 (cid:xx) 乱码的解决方案
python·ai·pdf·机器翻译
微咣科技2 天前
平台化工业AI再突破|大捷智能携手岚图汽车,打造车身焊装智能设计行业标杆
pdf·音视频
我滴老baby2 天前
工业物联网数据库选型:把计算能力放回第一维度
数据库·人工智能·架构·pdf
SamChan902 天前
多栏PDF阅读顺序重建:用Python按坐标聚类还原双栏论文的翻译顺序
python·ai·pdf
浩风祭月2 天前
ChatGPT上传PDF后漏读图表?文字版、扫描件和图片要分开处理
人工智能·chatgpt·pdf·提示词·办公效率