安装pymupdf
pip install pymupdf
PDF转为图片
def pdf2pic(pdf_file):doc = fitz.open(pdf_file)pdf_name = os.path.splitext(pdf_file)[0]for pg in range(doc.pageCount):page = doc[pg]rotate = int(0)# 每个尺寸的缩放系数为2,这将为我们生成分辨率提高四倍的图像。zoom_x = 1.0zoom_y = 1.0trans = fitz.Matrix(zoom_x, zoom_y).preRotate(rotate)pm = page.getPixmap(matrix=trans, alpha=False)pm.writePNG('img/%s.png' % page)
图片转PDF
def pic2pdf(source_folder):doc = fitz.open()try:print(source_folder)source_folder = source_folder + "*" if source_folder.endswith("\\") else source_folder + "\\*"for img in sorted(glob.glob(source_folder),key=lambda x:int(str(x).split(" ")[1])): # 读取图片,确保按文件名排序print(img)imgdoc = fitz.open(img) # 打开图片pdfbytes = imgdoc.convertToPDF() # 使用图片创建单页的 PDFimgpdf = fitz.open("pdf", pdfbytes)doc.insertPDF(imgpdf) # 将当前页插入文档doc.save("target.pdf") # 保存pdf文件except:print("目录:[ %s ] 转换pdf异常" % source_folder)finally:doc.close()