#pdf #ocr #ocrmypdf

bin+lib ocrmypdf-rs

ocrmypdf 命令行工具的 SDK

8 个版本

0.0.8 2024年5月21日
0.0.7 2024年5月21日

#8 in #ocr

MIT/Apache

89KB
66 代码行

ocrmypdf-rs

一个 Rust 库,可以为 PDF 中的图像添加“层”文本,使扫描图像 PDF 可搜索,使用的是 ocrmypdf,这是一个 Python 应用程序和库。

先决条件

为了正确运行,您需要在您的操作系统上安装 ocrmypdf

示例

Debian 或 Ubuntu 用户可以使用以下命令

sudo apt install ocrmypdf

有关如何在不同操作系统上安装的信息,请参阅安装 文档

安装

使用 cargo 安装 ocrmypdf-rs;

[dependencies]
ocrmypdf-rs = "0.0.7"

用法/示例

基本示例 参考

use ocrmypdf_rs::{Ocr, OcrMyPdf};

fn main() {
    let mut ocr = OcrMyPdf::new(None, None, None);

    ocr.set_input_path("input.pdf".into())
        .set_output_path("output.pdf".into())
        .set_args(vec!["--force-ocr".into()])
        .execute();
}

新方法

在实例化 OcrMyPdf 结构时,可以传递以下参数

  • args: Option<Vec<String>> 关于参数的更多信息请参见 文档
  • input_path: Option<String> 输入 PDF 路径
  • output_path: Option<String> 输出 PDF 路径

[!TIP] 💡 如果提供了 input_path 或 output_path 字段,则无需在运行时提供它们。

use ocrmypdf_rs::{Ocr, OcrMyPdf};

fn main() {
    let args: Vec<String> = vec!["-l por".into()];
    let input_path = "input.pdf";
    let output_path = "output.pdf";

    let mut ocr = OcrMyPdf::new(
        Some(args),
        Some(input_path.into()),
        Some(output_path.into()),
    );

    ocr.execute();
}

[!NOTE] 要使用 -l por 参数工作,需要安装额外选择的语言,请参见如何 安装;

依赖关系

~1.5MB
~38K SLoC