OCR C++ Tesseract生成可搜索的pdf

这个程序使用Tesseract OCR识别图片里的字符,生成可以搜索文本内容的pdf,当然也可以复制pdf里的文本或者执行其他pdf操作。

输入图片:程序运行后会生成pdf,这里演示生成的pdf可以选中和复制:

输入:phototest.tif

输出:my_first_tesseract_pdf.pdf

代码:

cpp 复制代码
#include <leptonica/allheaders.h>
#include <tesseract/baseapi.h>
#include <tesseract/renderer.h>

int main()
{
    const char* input_image = "/usr/src/tesseract-oc/testing/phototest.tif";
    const char* output_base = "my_first_tesseract_pdf";
    const char* datapath = "/Projects/OCR/tesseract/tessdata";
    int timeout_ms = 5000;
    const char* retry_config = nullptr;
    bool textonly = false;
    int jpg_quality = 92;

    tesseract::TessBaseAPI *api = new tesseract::TessBaseAPI();
    if (api->Init(datapath, "eng")) {
        fprintf(stderr, "Could not initialize tesseract.\n");
        exit(1);
    }

    tesseract::TessPDFRenderer *renderer = new tesseract::TessPDFRenderer(
              output_base, api->GetDatapath(), textonly, jpg_quality);

    bool succeed = api->ProcessPages(input_image, retry_config, timeout_ms, renderer);
    if (!succeed) {
      fprintf(stderr, "Error during processing.\n");
      return EXIT_FAILURE;
    }
    api->End();
    delete api;
    return EXIT_SUCCESS;
}
相关推荐
@蔓蔓喜欢你1 小时前
AI 辅助智能组件生成:从设计稿到可运行代码的工程化实践
人工智能·ai
xd1855785551 小时前
歌词创作工坊-基于鸿蒙的AI歌词创作应用开发实践
人工智能·华为·harmonyos·鸿蒙
皓悦编程记1 小时前
【YOLO26系列】基于YOLO26的面部表情检测系统【python源码+Pyqt5界面/WEB+数据集+训练代码】
人工智能·yolo·目标检测·开源·yolo26
远铂1 小时前
BuildAdmin AI内容营销一体化解决方案:整合SEO与GEO优化,解锁AI时代全域流量增长
人工智能·geo·buildadmin
黑马水牛1 小时前
PC+RK3588连板在线调试模型推理
人工智能·经验分享·深度学习
tntxia2 小时前
迁移学习
人工智能
Eloudy2 小时前
基于 RDMA-CM(librdmacm)的聊天程序
网络·人工智能
WUYOUGYLU2 小时前
大模型:人工智能时代的关键引擎
人工智能
2601_950760792 小时前
BCMA:急性髓系白血病免疫治疗的新型可行靶点
人工智能·算法·蛋白
vickycheung32 小时前
启扬I.MX8MPlus开发板如何在NPU上适配Movenet 模型
人工智能·arm 嵌入式开发