Tesseract应用:ScrollView.jar以及ViewDebugging的使用及相关问题

tesseract中提供了一个显示其内部状态的工具ViewDebugging
官网:https://github.com/tesseract-ocr/tesseract/wiki/ViewerDebugging

主要是依赖生成的ScrollView.jar,具体生成方法可以参照
http://blog.csdn.net/uestc_chenmo/article/details/78668681
网上也已经有很多其他方法再次不赘述。

正确生成好jar包,根据网上查阅的资料放在相应位置,以及设置ScrollView_path环境变量,调试过程中都没有成功出现ViewDebug窗口。

查看tesseract源码:
这里写图片描述

之所以没有调用成功是因为源码中相关代码没有编译进来。
所以只要找到源码中#define GRAPHICS_DISABLED 1 这句代码,注释掉,不定义GRAPHICS_DISABLED,将所有代码重新编译应该就能调用ScrollView.jar了。
查看了下这个宏定义GRAPHICS_DISABLED,F12转到定义提示该符号不在源代码文件中:
Tesseract应用:ScrollView.jar以及ViewDebugging的使用及相关问题_第1张图片

在整个解决方案里搜索,没有搜到GRAPHICS_DISABLED的定义。那应该是其他地方定义了。
在libtesseract项目的属性中有看到:
Tesseract应用:ScrollView.jar以及ViewDebugging的使用及相关问题_第2张图片

预处理器定义中有该定,删除后注释部分参与编译,成功通过。

问题1:
Tesseract应用:ScrollView.jar以及ViewDebugging的使用及相关问题_第3张图片
通常出现无法解析的外部符号是缺少部分库。看其中缺少的函数应该是windows的socket相关,在附加库中添加ws2_32.lib解决

问题2:
Tesseract应用:ScrollView.jar以及ViewDebugging的使用及相关问题_第4张图片
不停显示ScrollView: Waiting for server…
我猜想出现这个问题可能是由于exe没有找到ScrollView.jar,上述路径之前环境变量scrollview_path中设置了多个,可能因此无法打开。源码中默认有

scrollview_path = “.”;

所以应该可以把ScrollView.jar移动到项目目录,然后不用设置环境变量路径。

你可能感兴趣的:(Tesseract应用:ScrollView.jar以及ViewDebugging的使用及相关问题)