乐于分享
好东西不私藏

案例分享:使用python实现pdf转jpg

案例分享:使用python实现pdf转jpg

一、需求背景

在日常文档处理场景中,经常需要将PDF文件转换为图片格式,便于网页展示、移动端阅读或自动化文档归档。Linux环境下结合Python,可以高效实现这一需求。

二、环境准备

1、准备Ubuntu 22.04服务器

2系统依赖安装

PDF转图片的核心依赖于Poppler库,Poppler是一个跨平台的PDF渲染工具集。在Ubuntu系统中,首先需要更新包管理器并安装核心依赖:

sudo apt-get update

sudo apt-get install -y poppler-utils

3Python依赖包安装

使用pip安装两个关键Python包:

pip install pdf2image Pillow

pdf2image封装了Poppler的功能,提供简洁的Python接口

Pillow: Python图像处理库,用于图片的后续处理与保存

、核心实现代码

1、编写脚本如下(脚本由华为云码道Codearts智能体提供思路):

pdf_to_jpg_basic.py :

from pdf2image import convert_from_path

from pathlib import Path

def pdf_to_jpg_basic(pdf_path, output_dir=”./output”):

    # 1. 创建输出目录

    Path(output_dir).mkdir(parents=True, exist_ok=True)

    # 2. 转换

    images = convert_from_path(pdf_path, dpi=200)

    # 3. 逐页保存

    for i, image in enumerate(images):

        # 文件名格式:page_1.jpg, page_2.jpg…

        output_path = f”{output_dir}/page_{i+1}.jpg”

        image.save(output_path, “JPEG”)

        print(f”✓ 已保存第 {i+1} 页 -> {output_path}”)

使用

pdf_to_jpg_basic(“example.pdf”)

2、调试执行

1)上传pdf文件

2)执行脚本

python3 pdf_to_jpg_basic.py

3)验证

抽查其中一个图片

四、技术参数说明

DPI参数调优

DPIDots Per Inch)直接影响输出图片的清晰度和文件大小:

150 DPI: 适合预览,文件体积小,处理速度快

200 DPI: 标准质量,平衡清晰度与性能(推荐)

300 DPI: 高清质量,适合打印或精细展示

可按实际需求调整代码

五、后续批量处理优化思路

对于大量PDF文件,代码可以扩展为批量处理脚本,增加错误处理与进度显示功能

六、应用场景

以上代码可用于如下场景:

文档预览系统在线文档平台将PDF转换为图片,避免用户下载

移动端适配PDF转换为JPG便于在手机端快速浏览

自动化归档企业文档管理系统中统一格式存储

OCR预处理PDF转为图片后进行文字识别

七、总结

以上基于Linux环境的Python实现,具有部署简单、性能稳定、扩展性强的特点。通过合理配置DPI参数,可以在清晰度和处理效率之间取得最佳平衡,适用于个人项目到企业级应用的场景。

本文由 richblue原创发布于社区,未经作者许可,禁止转载。

点击下方小程序卡片查看社区更多内容
推荐
阅读

K8s对接多个ceph集群

ServiceMesh微服务是什么服务?

GaussDB 学习笔记之清空表命令:DELETE vs TRUNCATE

服务器数据恢复—虚拟机LVM结构损坏,断电故障下数据库数据成功恢复

精选用户侧内容合集点击查看