文章目录
1、PyMuPDF简介

1. 资料链接
- github地址: pymupdf/PyMuPDF: Python bindings for MuPDF’s rendering library
- 官方手册: PyMuPDF Documentation — PyMuPDF 1.18.17 documentation
2. 介绍
在介绍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”等。
3. 功能
对于所有支持的文档类型可以:
-
解密文件
-
访问元信息、链接和书签
-
以栅格格式(
PNG和其他格式)或矢量格式SVG呈现页面 -
搜索文本
-
提取文本和图像
-
转换为其他格式:
PDF, (X)HTML, XML, JSON, text对于
PDF文档,存在大量的附加功能:它们可以创建、合并或拆分。页面可以通过多种方式插入、删除、重新排列或修改(包括注释和表单字段)。 -
可以提取或插入图像和字体
-
完全支持嵌入式文件
-
pdf文件可以重新格式化,以支持双面打印,色调分离,应用标志或水印
-
完全支持密码保护:解密、加密、加密方法选择、权限级别和用户/所有者密码设置
-
支持图像、文本和绘图的 PDF 可选内容概念
-
可以访问和修改低级 PDF 结构
-
命令行模块
"python -m fitz…"具有以下特性的多功能实用程序- 加密/解密/优化
- 创建子文档
- 文档连接
- 图像/字体提取
- 完全支持嵌入式文件
- 保存布局的文本提取(所有文档)
新:布局保存文本提取!
脚本fitzcliy .py通过子命令“gettext”提供不同格式的文本提取。特别有趣的当然是布局保存,它生成的文本尽可能接近原始物理布局,周围有图像的区域,或者在表格和多列文本中复制文本。
2、安装
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:当使用Document.subset_fonts()时需要pymupdf-fonts是一个不错的字体选择,可以用于文本输出方法
使用pip安装命令:
pip install PyMuPDF
导入库:
import fitz
关于命名fitz的说明
这个库的标准Python导入语句是import fitz。这是有历史原因的:
MuPDF的原始渲染库被称为Libart。
在Artifex软件获得MuPDF项目后,开发的重点转移到编写一种新的现代图形图书馆称为“Fitz”。Fitz最初是作为一个研发项目,以取代老化的Ghostscript图形库,但却成为了MuPDF的渲染引擎(引用自维基百科)。
3、使用方法
1. 导入库,查看版本
import fitz
print<


2749

被折叠的 条评论
为什么被折叠?



