去年,Ghostscript 中发现了一个错误。记录如下:http://bugs.ghostscript.com/show_bug.cgi?id=696116
它被标记为状态:已解决且未修复
最后,受让人 Ken Sharp 写道:“不幸的是,我看不到 Ghostscript 有任何解决这一问题的希望。”
我有两个问题想问大家:
- 真的没有办法让 Ghostscript 解决这个问题(在字符之间添加空格)吗?
- 是否有 Ghostscript 的开源替代品,可以将扫描的 PDF 批量转换为 PDF/A-1b 而不会弄乱 OCR?
提前谢谢了!
/保罗
答案1
真的没有办法让 Ghostscript 解决这个问题(在字符之间添加空格)吗?
肯·夏普 说
您遇到的似乎是 Acrobat 搜索功能的限制,这是通过我们发出文本的方式暴露出来的。
我认为他说的不是 Ghostscript 在字符之间添加了空格。
我相信他的解释。PDFWrite 设备驱动程序受到 Ghostscript 中设备驱动程序的限制。我猜想 API 是为在可见表面上做标记而设计的,而不是为后来强行塞入的任何其他东西而设计的。
尤其是,在特定位置做标记时,一系列标记组成一个单词的概念并不重要。标记制作设备不需要知道空格和间距(字距调整等)之间的区别。
由此得出的一个推论是,据我所知,PDF 及其祖先 Postscript 中不存在单词。它们不需要跟踪单词,也不提供在 PDF 或 PS 文件内容中识别单词的任何特定方法。
有没有 Ghostscript 的开源替代品,可以批量将扫描的 PDF 转换为 PDF/A-1b,而不会弄乱 OCR
据我所知,PDF 规范没有定义“扫描 PDF”或“OCR”。一些 PDF 创作工具在从扫描图像创建 PDF 文件以及在不可见地包含使用 OCR 创建的文本时,可能会巧妙地利用 PDF 功能。这允许在生成的 PDF 上执行文本搜索和剪切粘贴操作 - 如果仅存在位图图像,则这是不可能的。
这样的 PDF 可能很有用,但实际上却有点令人厌恶。如果可用,最好从非扫描源生成 PDF。
PDF 最初旨在成为一种“最终”文档格式。并非旨在对其进行进一步的操作。
但是,其他支持 PDF 操作的程序必须能够做到这一点,而无需强制通过打印 API 进行转换。在这种情况下,它们可以以更适合 Acrobat 和其他 PDF 阅读软件的特点的方式执行转换。