gpt4 book ai didi

pdf - 从 PDF 中删除所有文本

转载 作者:行者123 更新时间:2023-12-04 04:33:22 26 4
gpt4 key购买 nike

我有一组 PDF,其中包含经过 OCR 处理的扫描图像。文本仍然“以图形方式”显示 - 换句话说,扫描的图像文本仍然存在 - 而 OCR 文本在“图像后面”。这允许搜索文档、复制文本等。

由于 OS X 中的一个严重错误(现已解决),一些 OCR 文本已损坏。因此,我想从 PDF 中删除文本,然后重新对文档进行 OCR。出于许多重要的原因,我不想走“将文档重新打印为 PDF”的路线:我更愿意尽可能地尝试就地修复文档。

由于我找不到可以满足我要求的 PDF 实用程序,而且我有一些编码经验,所以我决定卷起袖子尝试拼凑一些 .NET( C#) 代码删除文本。

我查看了 iTextSharp,我可以打开示例文档,但我遇到困难的地方是只查找(并因此删除)文档中的文本。我查看了各种不同的 PDF 规范文档,但很快就迷失了方向,而我看到的 iTextSharp 的所有示例都涉及向文档添加对象、图形或文本。

总而言之,我想要做的就是找到所有文本 block 并将其删除,同时保留图形(最初是 JPG)图像。谁能告诉我应该寻找哪些对象类型,以及应该遍历哪些层次结构以实现此目的?

最佳答案

改编此 How to find and replace text in a existing PDF file with PDFTK (or other command line application)我能够使用 pdftk 和 sed 删除呈现的文本。这肯定不是完全通用的,但可以快速满足我的需求。

我最终得到了:

pdftk my_input.pdf output - uncompress | sed -e 's/\[.*\]TJ/()Tj/' -e 's/(.*)Tj/()TJ/' | pdftk - output my_output.pdf compress

这会将流转换为文本格式,我在其中找到了 (blah)Tj 和 [blah]TJ 的用法,然后将它们完全剪掉,然后转换回压缩二进制文件。 pdftk 做了一些魔术来修复输出,使其再次有效,因为原始未编辑的输入也是一个有效的 PDF 文件,但在编辑后不是。如果没有一些新模式,这将不适用于扩展字符。

关于pdf - 从 PDF 中删除所有文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20176614/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com