You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Tesseract 5.2.0时找不到leptonica-1.80.0.dll的解决方案咨询

问题:Tesseract 5.2.0初始化时找不到指定版本Leptonica DLL

我正在使用Tesseract 5.2.0开发C#控制台应用,代码如下:

System.Drawing.Bitmap img = new System.Drawing.Bitmap(convertedFile);
//TesseractEngine engine = new TesseractEngine(convertedFile, "eng", EngineMode.Default);
var path = Path.GetDirectoryName(Assembly.GetExecutingAssembly().CodeBase);
path = Path.Combine(path, "tessdata");
path = path.Replace("file:\\", "");
using (var engine = new TesseractEngine(path, "eng", EngineMode.Default))
{
    engine.SetVariable("tessedit_char_whitelist", "1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ");
    engine.SetVariable("tessedit_unrej_any_wd", true);

    using (var page = engine.Process(img, PageSegMode.Auto))
        strTextData = page.GetText();

}

执行var engine = new TesseractEngine(path, "eng", EngineMode.Default)时抛出“Exception has been thrown by the target of an invocation.”异常,内部异常显示“Failed to find library "leptonica-1.80.0.dll" for platform x64”。我已安装VC_redist.x64,但下载的Tesseract 5.2.0附带的是leptonica-1.82.0.dll,与预期版本不符,请问该如何解决?


解决方案
  • 对齐绑定库与原生DLL版本
    当前你用的Tesseract .NET绑定(如NuGet包)依赖Leptonica 1.80.0,但手里的是1.82.0,版本不匹配导致加载失败。二选一解决:

    • 下载对应Leptonica 1.80.0的x64版本DLL替换现有文件;
    • 升级Tesseract .NET绑定到适配Leptonica 1.82.0的版本,保证绑定库和原生DLL版本完全一致。
  • 确保DLL放置路径正确
    将匹配版本的Leptonica DLL放到程序输出目录(比如bin/Debug/x64或bin/Release/x64),或者把DLL所在目录添加到系统环境变量PATH中,让程序运行时能找到该文件。注意必须用x64版本DLL,不能混用x86版本。

  • 设置项目目标平台为x64
    在Visual Studio里右键项目→属性→生成,把目标平台设为x64,取消Any CPU选项,避免平台不兼容导致的DLL加载失败。

  • 手动指定DLL搜索路径(可选)
    如果DLL不在默认搜索路径,可在初始化Tesseract引擎前设置环境变量添加DLL所在目录:

    // 替换为你的Leptonica DLL实际所在目录
    string leptonicaPath = @"C:\path\to\leptonica-dll-folder";
    Environment.SetEnvironmentVariable("PATH", $"{Environment.GetEnvironmentVariable("PATH")};{leptonicaPath}");
    

内容的提问来源于stack exchange,提问作者Ibrahim shaikh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 22:48:08