安装packages:
pip install fitz
pip install PyPDF2import fitz import os import cv2 import PyPDF2 def pic2pdf(): doc = fitz.open() imgs = os.listdir('pic2pdf') for i in range(len(imgs)): img = os.path.join('pic2pdf', f'{i+1}.jpg') print(img) imgdoc = fitz.open(img) # 打开图片 pdfbytes = imgdoc.convertToPDF() # 使用图片创建单页的 PDF imgpdf = fitz.open("pdf", pdfbytes) doc.insertPDF(imgpdf) # 将当前页插入文档 if os.path.exists("maitu.pdf"): os.remove("maitu.pdf") doc.save("maitu.pdf") # 保存pdf文件 doc.close() def rotate_pdf(): # 输入文件 getFile = open('maitu.pdf', 'rb') pdfReader = PyPDF2.PdfFileReader(getFile) pdfWriter = PyPDF2.PdfFileWriter() for i in range(17): page = pdfReader.getPage(i) if i in [5, 10, 13]: # 页面旋转90度 page.rotateClockwise(90) pdfWriter.addPage(page) # 输出文件 outFile = open('rotate.pdf', 'wb') pdfWriter.write(outFile) outFile.close() def resize_img(): img_dir = 'pic2pdf' img_names = os.listdir(img_dir) for i in range(len(img_names)): img_path = os.path.join('pic2pdf', f'{i+1}.jpg') img = cv2.imread(img_path) res = cv2.resize(img, (4002, 3002)) cv2.imwrite(img_path, res)