无需付费开会员,一个Python程序实现PDF转高清图片

今天需要将一个PDF导出为图片,但是一般的在线转换网站导出的图片清晰度都不高,分辨率只有1241*1754,这就导致输出的图片放大后字体是有点模糊的,所以就想到了使用Python中的PyPDF2库来处理PDF文件,以及Pillow库来处理图像

首先,确保你已安装所需的库。你可以使用以下命令来安装它们:

复制代码
pip install PyPDF2 Pillow

接下来,可以使用以下Python程序来执行PDF到图片的转换:

复制代码
import fitz
from PIL import Image

# 读取PDF文件
pdf_file = "your_pdf_file.pdf"

# 打开PDF文件
pdf_document = fitz.open(pdf_file)

# 自定义输出图片的清晰度(dpi)
dpi = 300

# 逐页将PDF转换为图像
for page_num in range(pdf_document.page_count):
    page = pdf_document.load_page(page_num)
    
    # 将PDF页面转换为PIL图像
    image = page.get_pixmap(matrix=fitz.Matrix(dpi/72, dpi/72))
    
    # 创建PIL图像对象
    pil_image = Image.frombytes("RGB", [image.width, image.height], image.samples)
    
    # 保存图像为文件
    image_file = f"output_page_{page_num+1}.png"
    pil_image.save(image_file, dpi=(dpi, dpi))

print(f"{pdf_document.page_count} 页PDF已转换为图像。")

将上述代码中的your_pdf_file.pdf替换为你要处理的PDF文件的路径。程序将为每一页生成一个单独的PNG图像文件,你可以自定义dpi变量来控制输出图像的清晰度(每英寸点数)。

相关推荐
czliutz1 小时前
使用pdfplumber库处理pdf文件获取文本图片作者等信息
python·pdf
archko2 小时前
用rust+slint编写一个pdf阅读器
pdf
jimmyleeee4 小时前
人工智能基础知识笔记二十四:构建一个可以解析PDF简历的Agent
笔记·pdf
archko5 小时前
用rust+slint编写一个pdf阅读器2
pdf
坚定信念,勇往无前5 小时前
vue3图片,pdf,word,excel,ppt多格式文件预览组件Vue Doc Viewers Plus
pdf·word·excel
拓端研究室21 小时前
2025医疗健康行业革新报告:AI赋能、国际化|附170+份报告PDF、数据、可视化模板汇总下载
人工智能·pdf
小年糕是糕手1 天前
【C++】类和对象(六) -- 友元、内部类、匿名对象、对象拷贝时的编译器优化
开发语言·c++·算法·pdf·github·排序算法
libolei1 天前
压缩 pdf 文件大小 完全免费
pdf·pdf压缩
一只小羊啊1 天前
Vue + Android WebView 实现大文件 PDF 预览完整解决方案
android·vue.js·pdf·webview
梅如你1 天前
《从零开始构建智能体》PDF教程分享
pdf