前几天有一位粉丝向Paradoxical求助,他工作上需要把PDF文件截图为图片,但是数量太多了,不知道该怎么办。于是Paradoxical在网上查阅资料,发现可以使用PyMuPDF这个库将PDF文件转变为图片。
下面就是简单的例子。
#导入fitz,安装好PyMuPDF后即可导入
import fitz
#使用open()打开PDF文件并赋值给doc变量
doc = fitz.open(file)
#遍历文件的每一页
for page in doc:
#创建pix对象
pix = page.getPixmap()
#根据页码生成png格式的图片
pix.writePNG('page-{}.png'.format(page.number))
这个库还可以生成不同大小的图片。
#导入fitz,安装好PyMuPDF后即可导入
import fitz
#使用open()打开PDF文件并赋值给doc变量
doc = fitz.open(file)
#设置x轴的缩放比例
zoom_x = 2
#设置y轴的缩放比例
zoom_y = 2
#生成缩放矩阵
mat = fitz.Matrix(zoom_x, zomm_y)
#遍历文件的每一页
for page in doc:
#创建pix对象,传入mat参数,生成的图片分辨率为原大小的4倍
pix = page.getPixmap(matrix=mat)
#根据页码生成png格式的图片
pix.writePNG('page-{}.png'.format(page.number))
结合os库,就可以把文件夹内的所有PDF文件都转化为图片了。