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

PDF to PNG to PDF的更多相关文章

  1. 如何使用免费PDF控件从PDF文档中提取文本和图片

             如何使用免费PDF控件从PDF文档中提取文本和图片 概要 现在手头的项目有一个需求是从PDF文档中提取文本和图片,我以前也使用过像iTextSharp, PDFBox 这些免费的PD ...

  2. .NET 操作PDF文档以及PDF文件打印摸索总结

    关于生成 PDF 的操作,相信大家的在实际的工作过程中难免会碰到.以前我们通过生成 word 文档来进行文件的打印,但是由于太过依赖 office 软件,因此尝试能不能使用 PDF 进行文件打印. 在 ...

  3. 史上最强php生成pdf文件,html转pdf文件方法

    body{ font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI& ...

  4. 怎么编辑PDF文件内容,PDF文件编辑方法

    怎样编辑PDF文件内容?这是一个常常困扰我们的问题,工作当中我们经常会收到PDF格式的文件,但有时的文件内容不是我们想要的或者是觉得不合理的需要改掉.但是每次有这样的问题时都没有什么好的解决方法,每次 ...

  5. 全面接触PDF:最好用的PDF软件汇总(转)

    全面接触PDF:最好用的PDF软件汇总(2010-12-07更新): http://xbeta.info/pdf-software.htm 比较全面的c#帮助类,各种功能性代码: https://gi ...

  6. 如何在PDF中添加水印,PDF添加水印技巧

    PDF文件现在的使用很是普遍,不管是工作中还是学习中都会使用到PDF文件,制作一个PDF文件就很辛苦的,我们要是想把PDF文件中添加水印防止抄袭的时候应该要怎么做呢,其实吧PDF文件添加水印还挺简单的 ...

  7. PDF编辑方法,PDF如何去除数字签名

    有些人会在PDF文件中添加数字签名,但当PDF文件有数字签名的时候就无法对PDF文件进行编辑.添加等操作.这个时候就需要去除PDF文件中的数字签名了,要怎么做呢,就由我来跟大家分享一下小编我的去除数字 ...

  8. PDF裁剪页面,PDF怎么裁剪页面的方法

    PDF文件要怎么裁剪页面呢,是不是有很多的小伙们想知道呢,当打开一个PDF文件的时候如果一个页面中有很多的空白页面就会影响文件的美观与使用,今天小编就为大家分享一下小编的裁剪页面的方法. 操作软件:迅 ...

  9. PDF编辑方法,PDF怎么去除背景

    PDF文件现在是使用的频率很高的一个软件的格式,PDF文件能够更加直观清楚的表达,PDF文件的使用很方便但编辑起来就来没有那么容易了,PDF文件的编辑是需要借助软件的,今天小编就来跟大家分享一下PDF ...

  10. PDF如何添加水印,PDF添加水印工具的使用方法

    PDF文件在编辑修改的时候是需要借助工具才可以编辑,PDF文件不像普通的文件可以直接打开编辑,PDF编辑工具是PDF文件进行编辑的重要工具,就以添加水印为例,能够在PDF中添加水印的工具有哪些呢?要怎 ...

随机推荐

  1. api接口统一封装

    具体的接口api模块,例如authorization.js import axios from '../axiosWrapper' let prefix = process.env.API_ROOT ...

  2. C语言几种常用的排序算法

    /* ============================================================================= 相关知识介绍(所有定义只为帮助读者理解 ...

  3. IDEA debug模式鼠标悬停提示变量值

  4. 2019-11-29-Roslyn-使用-Directory.Build.props-文件定义编译

    title author date CreateTime categories Roslyn 使用 Directory.Build.props 文件定义编译 lindexi 2019-11-29 08 ...

  5. JS基础知识二

    JS控制语句 switch 语句用于基于不同的条件来执行不同的动作 <script> function myFunction(){ var x; var d=new Date().getD ...

  6. 005-使用smtp发送邮件报警

    创建监控项: 如果有两个触发条件则中间用  and 连接,or等 此上  触发器已经创建好了,但是触发器的动作还需要去定义: 默认动作是停用的需要手动打开:

  7. linux编译安装mysql5.7

    一.下载源码包 -src cd /usr/local/src/mysql--src wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5 ...

  8. Python Web 服务开发者: 第 1 部分

    Python Web 服务开发者: 第 1 部分 Python Web 服务世界 Python 的座右铭一向是“装备齐全”,这是指在安装该语言时会附带一大套标准库和功能程序.本文概述了在 Python ...

  9. 什么是工作流java Activity

    见:http://www.it165.net/pro/html/201504/37443.html 一. 什么是工作流 以请假为例,现在大多数公司的请假流程是这样的 员工打电话(或网聊)向上级提出请假 ...

  10. like sql

    like '%'+@parm+'%' ---用+号表示字符串连接 like '%@strKeyword%' --是查询某个字段 包含@strKeyword这个字符串