Python

PyMuPDF:用于 Python 的高性能 PDF 处理

PyMuPDF 是一个用于 PDF、XPS、EPUB 和图像文档处理的高性能 Python 库,具有渲染、提取和注释功能。

Keeping this site alive takes effort — your support means everything.
無程式碼也能輕鬆打造專業LINE官方帳號!一鍵導入模板,讓AI助你行銷加分! 無程式碼也能輕鬆打造專業LINE官方帳號!一鍵導入模板,讓AI助你行銷加分!
PyMuPDF:用于 Python 的高性能 PDF 处理

当你需要 PDF 处理的原始速度时,PyMuPDF 是 Python PDF 库中的性能领导者。PyMuPDF 构建为 Artifex 基于 C 语言的 MuPDF 库的 Python 绑定,结合了 Python 的易用性与 C 语言级别的渲染、提取和操作 PDF 文档的性能。

PyMuPDF 处理 PDF 的速度比纯 Python 替代方案快 10-100 倍。它在毫秒内将页面渲染为图像,以精确定位提取文字,管理注释,并处理表单。除了 PDF 之外,它还支持 XPS、EPUB、MOBI、FB2 和常见的图像格式,使其成为一个多功能文档处理引擎。

性能基准

操作PyMuPDFpypdfpdfminer单位
文字提取(100 页)0.34.28.5
页面渲染0.05N/AN/A秒/页
内存使用451202001000 页的 MB
PDF 合并(50 个文件)0.82.1N/A

核心能力

功能描述
页面渲染以任何分辨率将页面转换为 PNG、JPEG 或 Pixmap
文字提取获取带有位置、字体和样式的文字
图像提取以原始格式提取嵌入的图像
注释管理添加、编辑和移除高亮、笔记、印章
文档转换在 PDF、XPS、EPUB 和图像之间进行转换

渲染和提取管线

MuPDF 核心引擎解析文档结构并提供对每个元素的高速访问。Python 绑定将此包装为熟悉的对象,如 DocumentPagePixmap,并附有直观的方法。

何时选择 PyMuPDF

当性能至关重要时,PyMuPDF 是最佳选择:渲染数千页进行预览、从大型文档存档中提取文字,或构建实时文档处理管线。其基于 C 的核心使其非常适合吞吐量至关重要的服务器端处理。代价是需要更复杂的安装过程,需要原生编译,但大多数平台都提供了预构建的 wheels。

如需更多信息,请访问 PyMuPDF GitHub 仓库PyMuPDF 文档

常见问题

Q:我需要单独安装 MuPDF 吗? A:不需要,MuPDF 与 PyMuPDF 捆绑在一起,并通过 pip 自动安装。

Q:PyMuPDF 能处理 PDF/A 文档吗? A:是的,它处理读取和写入的 PDF/A 文档。

Q:PyMuPDF 可以从扫描的 PDF 中提取文字吗? A:不能直接提取——它提取 PDF 中存储的文字。对于扫描文档,请与 OCR 库配合使用。

Q:PyMuPDF 是线程安全的吗? A:Document 对象不是线程安全的,但你可以使用多个进程进行并行处理。

Q:页面渲染支持哪些图像格式? A:PNG、JPEG、TIFF、BMP、PPM 和 PGM,支持任何分辨率或 DPI 设置。

TAG
CATEGORIES