PDFtoOCR对PDF文档进行OCR处理。OCR文本用于搜索结果。
项目描述
简介
PDFtoOCR使用OCR处理PDF文档中的文本。当无法从(扫描的)PDF中提取文本时,需要这样做。PDFtoOCR使用内容规则来安排OCR处理。处理不能即时进行,例如使用自定义TextIndexNG插件。使用OCR处理大型PDF文档是一项耗时/处理器消耗的任务。
配置
操作系统上
PDF to Text 在 Linux 下使用三个可用的工具。这些工具的协作仅在 Debian 上进行了测试。但在其他 *NIX 环境中可能也能正常工作。
安装要求,PDF to OCR 使用以下程序
pdftotext,检查是否需要进行 OCR 处理
ghostscript,将 PDF 文档转换为 tiff 图像
tesseract,执行 OCR 处理(确保您已安装所有语言包!)
设置环境变量
环境变量 $GS 必须设置,并指向 ghostscript 可执行文件。
环境变量 $TESSERACT 必须设置,并指向 tesseract 可执行文件。
在 Plone 网站上
添加内容规则
事件触发:对象修改和对象添加
条件:内容类型是文件
操作:将 PDF 的 OCR 输出存储为可搜索文本
将内容规则分配给 Plone 网站或文件夹
安装 cron4plone 并添加以下 cron 作业:portal/@@do_pdf_ocr_index
用法
只需添加包含 PDF 文档的文件。可选地,您可以选择语言,以便 OCR 引擎在索引时可以使用词典。Tesseract 仅支持有限数量的语言。
在控制面板中可以找到已索引文档的概述,‘PDF to OCR 状态’。在此状态页面上可以进行文档的(重新)索引。
PDF 处理
每次添加或修改文件时,都会将文件的唯一 ID(uid)添加到队列中。此队列是持久的,具有两个功能,用于索引和重新索引。索引功能使用队列处理文档。当使用重新索引时,将处理队列历史记录中的所有文件。
如果使用 pdftotext 从 PDF 文档中提取文本,则不执行 OCR。否则,OCR 将提取文本并将其存储在内容类型文件中。ATFile 使用额外的字段进行了修补,以容纳提取的文本和 PDF 的语言。
页面视图
@@do_pdf_ocr_index - 索引队列中的文档
@@do_pdf_ocr_reindex - 重新索引 Plone 网站中的所有 PDF 文档
@@pdf_ocr_status - 显示队列和 10 个文档的历史记录
进一步阅读
http://plone.org/documentation/how-to/ocr-in-plone-using-tesseract-ocr/ http://code.google.com/p/tesseract-ocr/
确保您在 /usr/local/share/tessdata/ 中没有空的语言文件
可能是一个好的替代方案,使用 tesseract 但设置困难,并且仍然处于测试阶段:http://sites.google.com/site/ocropus/
变更日志
1.1
与 Plone 4 兼容
添加了一个控制面板页面
使用 archetypes.schemaextender 添加了“OCR 文本”字段,而不是使用猴子补丁
不再使用旧风格的文件系统外部方法来执行操作。
添加了文档测试
1.0 - 首次发布
初始发布