python将pdf文档转为png图片

独自空忆成欢 提交于 2020-01-04 15:53:54

python -V 3

需求

五个pdf文档需要都转成png格式图片

代码

可以使用PyMuPDF库

逻辑:
1、首先读取一个文件夹下面的所有pdf文档
2、然后对这些pdf文档一个一个的进行pdf转png,一页pdf转为一个png图片,一个pdf文档转成的所有png图片存在一个文件夹下面

import fitz
import os

def f(position):
    name = os.listdir('./%s' % position)
    for n in name:

        #  打开PDF文件,生成一个对象
        path = r'./pdfs/%s' % n

        doc = fitz.open(path)

        for pg in range(doc.pageCount):
            page = doc[pg]
            rotate = int(0)
            # 每个尺寸的缩放系数为2,这将为我们生成分辨率提高四倍的图像。
            zoom_x = 2
            zoom_y = 2
            trans = fitz.Matrix(zoom_x, zoom_y).preRotate(rotate)
            pm = page.getPixmap(matrix=trans, alpha=False)

            dir_1 = './pngs/%s/' % n[:-3]
            mkdirlambda = lambda x: os.makedirs(x) if not os.path.exists(x) else True  # 目录是否存在,不存在则创建
            mkdirlambda(dir_1)

            pm.writePNG('%s%s.png' % (dir_1,pg+1))

position = 'pdfs'  # 这个就是pdf文件需要转png的文件位置
f(position)

效果
在这里插入图片描述

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!