python实现高质量PDF转PNG

今天画了用PPT画了个图,然后把图另存为图片。但是生成的图像质量较低,百度了一下没找到提高分辨率的方法。然后就采用现将PPT转为PDF,再将PDF转成PNG,但是生成的图像分辨率仍然不高,最后还是python大法好,实现了将PDF转为高质量PNG的方法。

需要的库

traits

pip install traits‑5.2.0‑cp37‑cp37m‑win_amd64.whl
注意,fitz要先在下面的网址下载

https://www.lfd.uci.edu/~gohlke/pythonlibs/#traits​www.lfd.uci.edu

 

fitz

pip install fitz

PyMuPDF

pip install PyMuPDF

代码

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)
    # 逐页读取PDF
    for pg in range(0, pdf.pageCount):
        page = pdf[pg]
        # 设置缩放和旋转系数
        trans = fitz.Matrix(zoom_x, zoom_y).preRotate(rotation_angle)
        pm = page.getPixmap(matrix=trans, alpha=False)
        # 开始写图像
        pm.writePNG(imgPath+str(pg)+".png")
    pdf.close()
    
pdf_image(r"C:\Users\12624\Desktop\a.pdf",r"C:\Users\12624\Desktop\\",5,5,0)

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

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

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

后记

如有问题,欢迎交流批评指正。

参考网页

Python使用到第三方库PyMuPDF图片与pdf相互转换_python_脚本之家​www.jb51.net

 

CSDN-专业IT技术社区-登录​blog.csdn.net

 

python大法确实好,但是Adobe Acrobat DC更好,安装了破解版Adobe Acrobat DC,发现其处理PDF功能真强大,分享给大家:

搜索