python批量pdf转png

首先安装对应的库:

pip install fitz
pip install PyMuPDF

代码如下:

import sys, fitz
import os
# 忽略警告
import warnings
warnings.filterwarnings("ignore")

def pdf2image(pdfPath, imgPath, zoom_x, zoom_y, rotation_angle):
    # zoom_x: x方向的缩放系数 zoom_x和zoom_y一般取相同值,值越大,图像分辨率越高
    # zoom_y: y方向的缩放系数
    # rotation_angle: 旋转角度
    pdf = fitz.open(pdfPath)   # 打开PDF文件
    countnum= 0
    for pg in range(pdf.pageCount):   # 逐页读取PDF
        page = pdf[pg]
        trans = fitz.Matrix(zoom_x, zoom_y).preRotate(rotation_angle)       # 设置缩放和旋转系数
        pm = page.getPixmap(matrix=trans, alpha=False)
        pm.writePNG(pdfPath[:pdfPath.rfind('.pdf')] + ".png")
        print(pdfPath[:pdfPath.rfind('.pdf')] + ".png")
        countnum=countnum+1
    pdf.close()
    print(f"已结束,共{str(countnum)}个文件")



if __name__ == "__main__":
    Path = input('请输入存有Pdf的文件夹:').replace('/', '//')  # 存放PDF的原文件夹
    imgs = os.listdir(Path)
    imgs.sort()
    imgs_list = [os.path.join(Path, i) for i in imgs if i[-4:] == '.pdf']

    for img in imgs_list:
        pdf2image(img, Path, 2, 2, 0)

    print("-"*50)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值