python pdf文件转图片

在Python中,有很多的第三方库可以用于PDF文件的转换,比如PyPDF2和pdf2image。

其中PyPDF2可以从PDF文件中提取每一页并将其保存为图像文件,需要安装Pillow库。

pdf2image则直接将PDF文件转换为PNG或JPEG图像文件,可以使用ImageMagick或Ghostscript作为后台渲染引擎。

以下是使用这两个库的示例代码:

  1. 使用PyPDF2库将PDF文件中的第一页转换为图像文件
python 复制代码
import io
import os
from PIL import Image
import PyPDF2

pdf_file = "example.pdf"
page_number = 0
output_file = "output.jpg"

# 打开PDF文件并读取第一页
with open(pdf_file, "rb") as f:
    pdf = PyPDF2.PdfFileReader(f)
    page = pdf.getPage(page_number)

    # 获取页面大小和旋转角度
    bbox = page.mediaBox
    rotate = page.get('/Rotate', 0)

    # 转换为Pillow图像对象
    img = page.toImage()
    img = img.convert("RGB")
    img = img.rotate(-rotate)

    # 保存为JPEG图像文件
    img.save(output_file, "JPEG")
    
    print(f"{pdf_file}的第{page_number+1}页已保存为{output_file}")
  1. 使用pdf2image库将PDF文件转换为PNG图像文件
python 复制代码
import os
from pdf2image import convert_from_path

pdf_file = "example.pdf"
output_file = "output.png"

# 将PDF文件转换为PNG图像列表
images = convert_from_path(pdf_file)

# 获取第一页并保存为图像文件
image = images[0]
image.save(output_file, "PNG")

print(f"{pdf_file}的第一页已保存为{output_file}")
相关推荐
qeen878 分钟前
【C++】智能指针介绍
开发语言·c++·笔记·指针
hanchenxing13 分钟前
本地AI绘画网关: 用 30 行 Python 把 NVIDIA FLUX.2 Klein 接入 OpenAI 兼容客户端Python
开发语言·python·ai作画·ai绘画·nvidia
Allen.Su17 分钟前
大模型 LoRA 微调全流程实战 - 车载问答全流程(跑通 + 参数详解 + 训练日志逐行解读 + 模型合并)
人工智能·python·lora·大模型微调
卷无止境17 分钟前
大模型如何调用工具,一次讲清背后的技术门道
后端·python
PHP实战开发录2 小时前
PHP脚本手动能跑定时任务却失败
开发语言·php·开发
郝学胜-神的一滴3 小时前
Effective Python 条款 10 :海象运算符_=
开发语言·python·程序人生·开源
wuyk5553 小时前
Python零基础入门第十四章:异常处理(try-except)
开发语言·python
2601_962078193 小时前
Appium+Python+pytest自动化测试框架详解
自动化测试·python·appium·pytest·移动应用
wuyk5553 小时前
【Socket 进阶之路】第 3 章 TCP 三次握手 & 四次挥手深度剖析|连接建立、断开、状态机、TIME_WAIT 核心工程问题
服务器·开发语言·网络·物联网·网络协议·tcp/ip
卷无止境7 小时前
智能体开发环境ADE浅析,编程工具的下一次范式跃迁
后端·python