一、PyMuPDF简介
1.介绍
在介绍PyMuPDF之前,先来了解一下MuPDF,从命名形式中就可以看出,PyMuPDF是MuPDF的Python接口形式。
MuPDF
MuPDF 是一个轻量级的 PDF、XPS和电子书查看器。MuPDF 由软件库、命令行工具和各种平台的查看器组成。
MuPDF 中的渲染器专为高质量抗锯齿图形量身定制。它以精确到像素的几分之一内的度量和间距呈现文本,以在屏幕上再现打印页面的外观时获得最高保真度。
这个观察器很小,速度很快,但是很完整。它支持多种文档格式,如PDF、XPS、OpenXPS、CBZ、EPUB和FictionBook 2。您可以使用移动查看器对PDF文档进行注释和填写表单(这个功能很快也将应用于桌面查看器)。
命令行工具允许您注释、编辑文档,并将文档转换为其他格式,如HTML、SVG、PDF和CBZ。您还可以使用Javascript编写脚本来操作文档。
PyMuPDF PyMuPDF(当前版本1.18.17)是支持MuPDF(当前版本1.18.*)的Python绑定。
使用PyMuPDF,你可以访问扩展名为
“.pdf”、“.xps”、“.oxps”、“.cbz”、“.fb2”或“.epub”。
此外,大约10种流行的图像格式也可以像文档一样处理
:“.png”,“.jpg”,“.bmp”,“.tiff”等。
2.功能
对于所有支持的文档类型可以:
解密文件 - 访问元信息、链接和书签 - 以栅格格式(PNG和其他格式)或矢量格式SVG呈现页面 - 搜索文本 - 提取文本和图像 - 转换为其他格式:PDF, (X)HTML, XML, JSON, text 对于PDF文档,存在大量的附加功能:它们可以创建、合并或拆分。页面可以通过多种方式插入、删除、重新排列或修改(包括注释和表单字段)。- 可以提取或插入图像和字体 - 完全支持嵌入式文件 - pdf文件可以重新格式化,以支持双面打印,色调分离,应用标志或水印 - 完全支持密码保护:解密、加密、加密方法选择、权限级别和用户/所有者密码设置 - 支持图像、文本和绘图的 PDF 可选内容概念 - 可以访问和修改低级 PDF 结构
命令行模块"python -m fitz…"具有以下特性的多功能实用程序
加密/解密/优化- 创建子文档- 文档连接- 图像/字体提取- 完全支持嵌入式文件- 保存布局的文本提取(所有文档) 新:布局保存文本提取! 脚本fitzcliy .py
通过子命令“gettext”
提供不同格式的文本提取。特别有趣的当然是布局保存,它生成的文本尽可能接近原始物理布局,周围有图像的区域,或者在表格和多列文本中复制文本。
二、安装
PyMuPDF可以从源码安装,也可以从wheels安装。
对于Windows, Linux和Mac OSX平台,在PyPI的下载部分有wheels。这包括Python 64位版本3.6到3.9。Windows版本也有32位版本。从最近开始,Linux ARM架构也出现了一些问题——查找平台标签manylinux2014_aarch64。
除了标准库,它没有强制性的外部依赖项。只有在安装了某些包时,才会有一些不错的方法:
Pillow:当使用Pixmap.pil_save()和 Pixmap.pil_tobytes()时需要- fontTools