python how to convert pdf to image

最近有需求将pdf 转成image ,很多软件都要钱。。于是网上搜下有没有可用的代码处理。找到了:
参考了 https://www.thepythoncode.com/article/convert-pdf-files-to-images-in-python
但是因为那个库 函数有更新了,所以运行错误了,我重新改了下:
安装就不用说了
本地有python3

安装包:

brew install swig 
python -m pip install --upgrade pymupdf

建立一个python文件:

import fitz

from typing import Tuple
import os
def dbg(msg):
    print(msg)

def convert_pdf2img(input_file:str, pages:Tuple=None):
    pdfIn = fitz.open(input_file)
    dbg(pdfIn);
    output_files = []
    for pg in range(pdfIn.page_count):
        if str(pages)!=str(None):
            if str(pg) not in str(pages):
                continue
        page = pdfIn[pg]
        rotate = int(0)
        zoom_x = 2
        zoom_y = 2

        mat = fitz.Matrix(zoom_x,zoom_y).prerotate(rotate)
        pix = page.get_pixmap(matrix=mat, alpha=False)
        output_file = f"{os.path.splitext(os.path.basename(input_file))[0]}_page{pg+1}.png"
        pix.save(output_file)
        output_files.append(output_file)
    pdfIn.close()
    summary = {
        "File": input_file, "Pages": str(pages), "Output File(s)": str(output_files)
    }
    # Printing Summary
    print("## Summary ########################################################")
    print("\n".join("{}:{}".format(i, j) for i, j in summary.items()))
    print("###################################################################")
    return output_files

if __name__ == "__main__":
    import sys
    input_file = sys.argv[1]
    convert_pdf2img(input_file)
~                  

运行 当前pdf文件
然后就ok了

python pdfimage.py needtoconvert.pdf
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值