python实现PDF转PNG高清图片

11/19/2021 pythonpdf

# 1.需求

将PDF格式的文件,给转换成PNG或者JPG格式图片

# 2.实现

# 2.1安装依赖包

pip install fitz  PyMuPDF

# 2.2导入使用

import fitz
'''
# 将PDF转化为图片
pdfPath pdf文件的路径
imgPath 图像要保存的文件夹
zoom_x x方向的缩放系数
zoom_y y方向的缩放系数
rotation_angle 旋转角度
'''
def pdf_image(pdfPath,imgPath,zoom_x,zoom_y,rotation_angle):
    # 打开PDF文件
    pdf = fitz.open(pdfPath)
    print(pdf.pageCount)
    # 逐页读取PDF
    for pg in range(0, pdf.pageCount):
        page = pdf[pg]
        # 设置缩放和旋转系数
        trans = fitz.Matrix(zoom_x, zoom_y).prerotate(rotation_angle)
        pm = page.get_pixmap(matrix=trans, alpha=False)
        # 开始写图像
        pm.save(imgPath+str(pg)+".png")
        (print("输出完成,共输出 %s 张PNG图片" %(pg+1)) if pg==pdf.pageCount-1 else print("当前输出第 %s 张" %(pg+1)))
    pdf.close()

pdf_image(r"D:\BaiduNetdiskDownload\测试.pdf",r"E:\work_python\pdfToImg\\",4,4,0)

注意zoom_x和zoom_y一般取相同值,值越大,图像分辨率越高。

参考文章:

https://zhuanlan.zhihu.com/p/102742847 (opens new window)

Last Updated: 11/24/2021, 4:49:54 PM