问题标签 [pymupdf]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
165 浏览

python - 如何使用 PyMuPDF 库突出显示 .pdf 文件中的多个关键字

我可以使用这个突出显示 .pdf 文件中所有出现的单个单词

但无法突出显示 .pdf 文件中的多个关键字。这是我的代码

完成对单个关键字的搜索但收到此错误后,我正在覆盖文件

Traceback (most recent call last): File "D:/Python_Scripts/Email Analysis/PDF.py", line 19, in <module> pdf.save(f"{os.path.splitext(os.path.basename(pdfFile))[0]}.pdf", garbage=4, deflate=True, clean=True) File "D:\Python_Scripts\Email Analysis\venv\lib\site-packages\fitz\fitz.py", line 4209, in save user_pw, RuntimeError: cannot remove file 'certification-ACDA.pdf': Permission denied

0 投票
0 回答
240 浏览

python-3.x - PyMuPDF 使用文档索引系统提取文本

我正在寻找一种使用 PyMUPDF 使用文档索引系统提取文本的方法。许多文档都有一个索引系统,我希望能够从文档中提取和保存每个项目(索引号下的文本)。示例文件:-

在此处输入图像描述

显然,我可以像这样抓取文本:

我试过get_toc()但无法让它工作,可能是因为某些文档没有目录。

我正在考虑使用正则表达式来查找这样的数字

我在想我可以得到索引号的坐标并保存它们之间的坐标。这将是最好的方法,还是有更好的更原生的方法来使用 PyMUPDF?非常感谢

编辑 - 似乎可以使用Page.get_text('words')Page.get_textbox(react)如这里讨论的那样拉出一个文本矩形https://github.com/pymupdf/PyMuPDF-Utilities/tree/master/textbox-extraction。但是这些示例都使用 PDF 注释来构建 rect 对象。我想要做的是找到索引号的位置,例如 30.1 并使用该位置和以下索引号的位置来构建 rect 对象。

edit2 - 所以我发现Page.search_for()返回一个具有坐标的矩形对象。所以也许我可以将索引号(例如 30.1)传递给它并取回坐标。

0 投票
0 回答
338 浏览

python - 使用标志提取文本以使用 PyMUPDF 专注于粗体/斜体字体

我正在尝试使用 PyMUPDF 1.18.14 从 PDF 中提取粗体文本元素。我希望这能像我从flags=4针对粗体字体的文档中所理解的那样工作。

但它会打印出页面上的所有文本,而不仅仅是粗体文本。

当使用TextPage.extractDICT() (or Page.get_text(“dict”))这样的: -

该标志有效,但我无法理解它在做什么。也许在图像和文本块之间切换。

跨度

因此,您似乎必须到达 才能span访问标志。

在此处输入图像描述

所以你可以做这样的事情,我flags=20在 span 标签上使用来获得粗体字体。

但这似乎很遥远。

所以我的问题是这是找到粗体元素的最佳方式,还是我遗漏了什么?

能够使用搜索粗体元素会很棒page.search_for()

0 投票
0 回答
44 浏览

python - PyMuPDF:删除出现在固定位置的所有页面中的重复对象

我正在尝试打印在 pdf 查看器软件中看起来不错的 pdf,但是当我打印 pdf 时,会在每页的固定位置打印额外的“文本”。

我已采取的步骤:

  1. 通过“打印到 pdf”选项打印 PDF,以便在软拷贝中可以看到额外的文本。
  2. 我试图以编程方式从我上面打印的软拷贝中删除这个“文本相似”对象,但 page.getImageList() 或 page.get_text() 都没有获取该对象。

有没有办法通过 PyMuPDF 访问“文本相似”对象并删除该对象?

0 投票
0 回答
48 浏览

amazon-web-services - 如何使用 Lambda 函数将 S3 文件夹中的单独 PNG 对象转换为单个 PDF 文档

我目前在 S3 存储桶中有一个文件夹,其中包含多个不同的 PNG 图像文件,我想将它们组合成一个多页 PDF 文档。我一直在尝试使用 PyMUPDF 和 Pillow,但一直在努力创建输出 PDF 文档。在理想情况下,Lambda 函数是通过在 S3 存储桶中创建新的 PNG 文件文件夹来触发的,然后将它们转换为单个 PDF 文档。这是可能的还是有人对如何做到这一点有建议?

0 投票
1 回答
45 浏览

python - PyMuPDF - 从中​​心向各个方向缩放四边形

我正在搜索pdf中的文本并提取一个四边形并在其周围添加一个polygon_annot。但我想缩放polygon_annot。我怎样才能做到这一点?

下面是我的代码:

我目前正在使用 inst.transform(fitz.Matrix(2, 2)) 对其进行缩放,但这只是将值相乘。如何从四边形的中心缩放值?

0 投票
1 回答
1085 浏览

python-3.x - 在 MacOS Big Sur 上安装 PyMuPDF

我想在我的代码中导入 fitz。为此,我尝试使用安装 PyMuPDF

但是,此安装失败并返回此错误:

我还尝试通过 Homebrew 安装 mupdf 和 mupdf-tools。他们都无法解决这个问题。对于修复此安装错误的任何帮助,我将不胜感激!

0 投票
0 回答
26 浏览

python - 我想将 pdf 文件的一页放在 pdf 文件的另一页上

我想将 pdf 文件的一页放在 pdf 文件的另一页上。例如:从顶部向下放置 50 毫米,向左放置 150 毫米。物体尺寸 75 x 100 毫米。

我想使用PythonPyMuPDF库来完成所有这些工作。

谢谢你,对不起我的英语。

0 投票
0 回答
48 浏览

python - 如何使用 lxml 解析 pymupdf 的 xml 提取?

因此,我阅读了 pdf 的每一页并将每个 xml 提取附加到一个字符串变量中。使用Page.get_text(“xml”). 文本输出由许多单元组成

我知道这些是文本周围的边界框,并且在文档中指定这些最好使用 lxml 解析。所以我尝试了下面的实现方式。

并得到以下错误:

我真的很想知道当前实现 lxml 和使用边界框从 pdf 文档中获取文本的方式。

0 投票
1 回答
263 浏览

python - PyMuPDF ModuleNotFoundError

我成功运行了命令:

然而,两者

import pymupdf

都输出一个 ModuleNotFoundError.

为什么python给我一个ModuleNotFoundError