PDF to PNG to PDF
PDF to PNG to PDF
PDF 2 PNG
step 1, install PyMuPDF
pip install pymupdf -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com
step 2, code
# encoding:utf8
import sys
import os
import fitz
if __name__ == '__main__':
if len(sys.argv) < 3:
print('Usage: python3 pdf2pic.py input.pdf output-dir')
exit()
pdf_file_path, output_dir = sys.argv[1], sys.argv[2]
doc = fitz.open(pdf_file_path)
for pg in range(doc.pageCount):
page = doc[pg]
rotate = int(0)
zoom_x = 2.0
zoom_y = 2.0
trans = fitz.Matrix(zoom_x, zoom_y).preRotate(rotate)
pm = page.getPixmap(matrix=trans, alpha=False)
pm.writePNG(output_dir + os.sep + "%d.png" % pg)
step 3, run the command
python3 pdf2png.py ../pdf/cwmt14_tutorial.pdf ../png/
PNG 2 PDF
step 1, install fitz
pip install fitz -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com
step 2, code
import fitz
import os
import sys
def cmp(x):
idx, file_type = x.split('.')
return int(idx)
if __name__ == '__main__':
if len(sys.argv) < 3:
print('Uage: python3 png2pdf.py pic-dir output.pdf')
exit()
pic_dir, output_file = sys.argv[1], sys.argv[2]
doc = fitz.open()
for pic_name in sorted(os.listdir(pic_dir), key=cmp):
pic_file = pic_dir + os.sep + pic_name
print(pic_file)
imgdoc = fitz.open(pic_file)
pdfbytes = imgdoc.convertToPDF()
imgpdf = fitz.open("pdf", pdfbytes)
doc.insertPDF(imgpdf)
doc.save(output_file)
step 3, run the command
python3 png2pdf.py ../pic/ ../pdf/cwmt14_tutorial_lite.pdf
智慧在街市上呼喊,在宽阔处发声。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
2018-05-19 Iris Classification on Tensorflow