SuperAPI AI 工具集

ocrmypdf-api

编程与开发

查看项目

更新于 10-16 09:56

技能介绍

本技能介绍如何以编程方式使用 OCRmyPDF,而非仅用命令行。用途:在 Python 应用中生成可搜索 PDF,并通过插件替换默认的 Tesseract 引擎。

主要能力:ocrmypdf.ocr() 提供输入输出文件与丰富参数,包括 language(如 'eng+fra')、deskew、rotate_pages、skip_text、force_ocr、redo_ocr、optimize(0-3)、output_type、jobs、sidecar、image_dpi、clean、remove_background、oversample、pages、title、author 等。返回值可用 ocrmypdf.ExitCode 判断,如 ok、already_done_ocr、input_file。

必要用法:安装后调用 ocrmypdf.ocr('input.pdf', 'output.pdf'),按需传参。文档给出 Flask HTTP 服务集成示例及 Streamlit 可选 Web UI(pip install ocrmypdf[webservice])。

插件生态:OCRmyPDF-EasyOCR(pip install ocrmypdf-easyocr,命令 ocrmypdf --plugin ocrmypdf_easyocr)、OCRmyPDF-PaddleOCR(pip install ocrmypdf-paddleocr,命令 ocrmypdf --plugin ocrmypdf_paddleocr)、OCRmyPDF-AppleOCR(macOS 专用,pip install ocrmypdf-appleocr,命令 ocrmypdf --plugin ocrmypdf_appleocr)。也可按接口实现自定义引擎(OcrEngine、hookimpl、get_ocr_engine)。paperless-ngx 内部使用 OCRmyPDF。

适用场景:需要把 OCR 嵌入后端服务、批处理或文档管理系统。

限制:EasyOCR 等插件强烈建议 GPU;大文件可用 jobs=1 或分批处理;插件未安装会报找不到;具体价格、性能数据及完整 API 细节资料暂未提供。