如何将Pdf文件转化成PNG图像?
在青少年编程竞赛交流群中,我每周日晚20:00都会开展直播活动,带着小朋友们学习编程。
之后,我也会把每周要求小朋友做的题目以图文的形式发放出来,方便小朋友们复习。比如:Scratch等级考试(二级)模拟题。
其中,有一个环节就是把PDF文档转成PNG图像。然后,上传到微信公众号后台。
今天,我向大家介绍一下,自己是如何使用PyMuPDF库来完成这些操作的。
官方文档:
https://pymupdf.readthedocs.io/en/latest/intro.html
PyPI 源:
https://pypi.org/project/PyMuPDF/
PyMuPDF 安装:
pip install PyMuPDF
安装完成之后:
Name: PyMuPDF
Version: 1.18.14
Summary: PyMuPDF is a Python binding for the document renderer and toolkit MuPDFHome-page: https://github.com/pymupdf/PyMuPDF
Author: Jorj McKie
Author-email: jorj.x.mckie@outlook.de
License: GNU AFFERO GPL 3.0
Location: c:\programdata\anaconda3\lib\site-packages
Requires:
Required-by:
(base) PS D:\Users\Administrator>
PyMuPDF包的导入
import fitz
注意:这块跟我们其它包不太一样,通常情况下包的名称跟pip install
后的名称一致,但这个包导入的是fitz
。
完整代码如下:
import fitz
import os
from datetime import datetimedef PDF_To_PNG(pdfPath, imagePath):startTime = datetime.now() # 开始时间if not os.path.exists(imagePath):os.makedirs(imagePath)print('ImagePath:' + imagePath)pdfDoc = fitz.Document(pdfPath) # 打开文件for pg in range(pdfDoc.page_count): # 遍历所有页面page = pdfDoc[pg]rotate = int(0) # 页面旋转角度# 此处若是不做设置,默认图片大小为:792X612, dpi=96zoom_x = 1.0 # 设置图片相对于PDF文件在X轴上的缩放比例zoom_y = 1.0 # 设置图片相对于PDF文件在Y轴上的缩放比例mat = fitz.Matrix(zoom_x, zoom_y).prerotate(rotate)pix = page.getPixmap(matrix=mat, alpha=False) pix.writePNG(imagePath + '/' + 'images_%s.png' % pg)endTime = datetime.now()print('pdf2png Time:', (endTime - startTime).seconds)if __name__ == '__main__':pdfPath = './Scratch二级20210613.pdf'imagePath = './提取结果'PDF_To_PNG(pdfPath, imagePath)
得到结果如下:
如何将Pdf文件转化成PNG图像?相关推荐
- 使用C#在PDF文件中插入或删除文本/图像水印
PDF文件中经常使用水印.只需几个简单的步骤即可在PDF文件中插入或删除文本和图像水印.同样可以轻松控制用于处理水印的许多属性.例如,不透明度,位置,旋转度,颜色,字体,图像等,等等.同样,可以使用快 ...
- 用CleverPDF在线办公工具怎么将PDF文件转化成Word?
PDF文件由于无法快捷在线进行编辑,所以在日常办公中很多人在处理文字文件时会将PDF文件转化成Word文件:目前可用于文件转换的办公工具是比较多的,为减轻大家日常办公的负担,推荐大家可使用clever ...
- java 去掉pdf文字_如何从PDF文件中删除所有图像/图纸,并仅在Java中留下文本?
我在类似的情况下使用Apache PDFBox. 要更具体一点,请尝试这样的事情: import org.apache.pdfBox.exceptions.COSVisitorException; i ...
- Image 图像转化为 PDF 文件
开发中如果有这样的需求把 Image 图像转化为 PDF 文件你会怎么做呢?你可能会在网上狂找资料寻找解决方案,但是事实上网上这方面的资料非常少,有的作者没有给出一个完整的内容或者给出的内容不适合现在 ...
- html文件转换html格式,pdf文件怎么转换成html格式
PDF文件怎么转换成html格式呢?html格式其实就是网页格式,PDF文件和网页文件一般情况下是两种完全不搭边的格式,但是不可否定的是办公室的多样化总有人会有这样的需求,只要有需求就会有其相应的解决 ...
- blue html中转换,BlueFox Free PDF to HTML Converter(PDF文件转换软件)
BlueFox Free PDF to HTML Converter是一款pdf文件转换软件,能直接查看PDF文件和对PDF文件进行编辑,支持批量进行转换,使用非常方便,操作简单,有需要可以下载. 软 ...
- pypdf2 存储pdf_PyPDF2:用于PDF文件操作的Python库
pypdf2 存储pdf PyPDF2 is a pure-python library to work with PDF files. We can use the PyPDF2 module to ...
- Python自动化办公【PDF文件自动化】
PDF 文件可以分为可编辑型PDF 文件与扫描型PDF 文件,内容可以复制,是可编辑型PDF文件,反之则是扫描型PDF 文件.简单理解扫描型PDF文件是由一张张图像构建而成. 读取PDF文件内容 1. ...
- Python实用功能之pdf文件转png图片数据
今天遇上一个问题就是需要将几个pdf合并起来,我百度了一下有哪些方法可以做,可以先看下: 第一种:使用"iLovePDF"(在线端) 这是一个国外的免费在线PDF文件处理工具,它提 ...
最新文章
- R语言使用gt包和gtExtras包漂亮地显示表格数据:gtExtras包的gt_hulk_col_numeric函数对单列、多列数据进行着色、使用不同的调色板(color palette)对列着色
- 用MySQL数据库来支持Schemaless的数据库存储方案
- 重庆三峡学院计算机应用技术,重庆三峡学院 数学与计算机学院 刘福明老师简介 联系方式 手机电话 邮箱...
- php基于新浪ip库获取城市,PHP基于新浪IP库获取IP详细地址的方法
- TensorFlow模型转换h5转pb
- php 获取请求设备,php – 如何获取设备令牌
- 榜单:全球 35 位 35 岁以下科技创新青年
- Java判断一个数是不是素数
- 论文写作--表格解读
- Redis数据类型及其命令
- c语言程序设计输出函数,输出函数C语言程序设计.pdf
- H5 页面在 APP 里如何支持缩放,并隐藏手机自带的放大缩小图标。
- Indented Inventory BOM如何转为最终的单层采购BOM
- 坐着童年纸飞机的C语言for循环!超好玩!超详细!
- 数字信号处理中均值、均方值、均方差、均方根值、均方误差、均方根误差、方差、协方差、标准差对比分析及统计学意义
- Ubuntu下批量修改文件名以及后缀名
- 构建虚拟Web主机——基于IP地址的虚拟主机
- (int*)、(int *)和(int **)的区别
- 自己碰到的360安全浏览器兼容模式的问题总结
- excel一列前加一固定值
热门文章
- 群晖 建立文件禁止访问_在设计系统中建立可访问性
- adb连接夜神模拟器出现error: cannot connect to daemon无法连接到守护程序
- 汇编语言之母100岁逝世:曾和冯·诺依曼一起研究,退休后还在研究神经网络...
- Office设置不同章节的页眉页脚及下划线的清除与添加
- 【基于SSH框架的个人博客系统06】头像文件上传与前后端分页机制
- 10个Web日志安全性分析工具
- 关于计算机网络协议 下面说法错误的是,关于计算机网络协议,下面说法错误的是____...
- 实木家具选什么性价比高
- launchctl mysql_Mac--Launchctl介绍
- 如何使用proxyTable