问题标签 [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.
python - Pymupdf getTextbox 返回空
我试图检索矩形中的文本。这个矩形是从 Page.getLinks() 中检索的。当我尝试使用 getTextbox() 和 getText(“text”, clip=rect) 获取矩形中的文本时。两种方法都返回空字符串
python - 创建一个 pdf 文件,在其中写入并使用 PyMuPDF 返回其字节流
使用 PyMuPDF,我需要创建一个 PDF 文件,在其中写入一些文本,然后返回它的字节流。
这是我的代码,但它使用文件系统来创建和保存文件:
有没有一种方法可以创建 PDF 文件,在其中写入一些文本,并在不使用文件系统的情况下返回其字节流?
python - 有什么方法可以识别 PDF 是否被编辑/篡改以及使用 Python 编辑/篡改 PDF 的确切位置?
我正在努力识别银行对账单 PDF 文档中的伪造/篡改。信息元数据和 XMP 元数据并不总是存在于我拥有的 PDF 中,因此我无法创建任何通用规则来识别被篡改的 PDF。我正在使用 Python 库,例如 PyMuPDF、PDFMiner、PyPDF2 等。
我有两个问题:
- 是否有任何具体的方法来识别 PDF 是否被篡改(使用 Python 或任何其他开源技术)?
- 如果 PDF 被篡改,那么 PDF 的哪一部分被篡改(使用 Python 或任何其他开源技术)?
附上 2 个 PDF 供参考 -
原文:-“sbi statment_out2.pdf”链接-https://drive.google.com/file/d/1DoWAKYcCudRO-Cwjbgf7RjiJUsF3DD3s/view ? usp=sharing
使用 Sejda 在线编辑器篡改:-“sbi statment_out2_Sejda_edited.pdf 链接 - https://drive.google.com/file/d/1J4eRy9tO3jN8AqEWNrKXtn40G6vdH5G3/view?usp=sharing
在经过调和的 PDF 中,我已将“信用”列下的“2,412.00”编辑为“12.00”。
如果有任何开源解决方案,请让我知道,最好是在 Python 中。
谢谢。
python - Python 3.7 else 语句没有显示正确的索引?
我的目标是将文本文件中的行打印在一起。然而,有些行并没有像他们应该的那样在一起。我解决了分母在后面的第一个问题。对于该else
声明,它们似乎都具有相同的值/索引。
终端输出:
python - 识别在线编辑器www.ilovepdf.com使用Python修改的PDF中的编辑位置
我有一份被篡改/伪造的 SBI 银行对账单 PDF。这是PDF的链接。
此 PDF 使用在线编辑器www.ilovepdf.com进行编辑。编辑的部分是该'Credit'
列下的第一个条目。原始条目是'2,412.00'
,我已将其修改为'12.00'
.
是否有任何编程方式使用 Python 或任何其他开源技术来识别 PDF 的编辑/修改位置/区域(即此 PDF 中 12.00 学分左右的 BBOX(边界框))?
我已经知道的两件事:
元数据(信息或 XMP 元数据)没有用处。元数据的修改日期不能确认 PDF 是否被压缩或确实被编辑,在这两种情况下都会更改修改日期。它也没有给出编辑的位置。
PyMuPDF SPANS JSON 对象也没有用,因为编辑的条目不在 SPANS JSON 的末尾,而是在 PDF 中的文本的正确顺序中。这是从 PyMuPDF 生成的 SPAN JSON 文件。
请让我知道是否有人有任何开源解决方案来解决这个问题。
python - 如何使用 pymupdf 减小修改后 PDF 的大小
我正在通过编辑某些单词并在 pymupdf 的编辑区域顶部添加不同的单词来编辑 pdf。
该代码成功运行,但是它生成了一个非常大的单页 pdf (9MB)。我认为这是因为绘制了许多形状和编辑,但我似乎无法重构。
我从这篇文章中知道我不应该page.apply_redactions()
多次申请,但如果我不这样做,文本不会正确显示在编辑方块的顶部,或者它会引发ValueError: fill rect must be finite and not empty
.
任何帮助重构较小的输出 pdf 将不胜感激。
python - 如何在 PDF 文件中查找表格网格线?
为了更准确地提取嵌入在表格单元格中的类似表格的数据,我希望能够识别 PDF 中的表格单元格边界,如下所示:
我曾尝试使用 Camelot、pdfplumber 和 PyMuPDF 提取此类表,并取得了不同程度的成功。但由于我们收到的 PDF 不一致,即使指定表格边界,我也无法可靠地获得准确的结果。
我发现如果我通过明确指定单元格边界来单独提取每个表格单元格,结果会更好。我已经通过手动输入边界进行了测试,这是我使用 Camelot 的可视化调试工具获得的。
我的挑战是如何以编程方式识别表格单元格边界,因为表格可能从页面上的任何位置开始,并且单元格的垂直高度可变。
在我看来,可以通过查找行分隔线的坐标来做到这一点,这对人类来说在视觉上是如此明显。但我还没有弄清楚如何使用 python 工具找到这些行。这是可能的,还是有其他/更好的方法来解决这个问题?
python - mupdf:更改加密时无法进行增量写入
我正在尝试使用 package.json 将目录添加到 pdf 中fitz
。
这是我的脚本
这是堆栈跟踪