Tesseract-OCR Windows下不换行的问题研究

时间:2022-08-11 09:02:53

Tesseract-OCR 直接识别出的文字,用记事本打开会发现不会换行,但是用Notepad++打开却能看到换行。


其实这是因为Windows下的换行 结尾是要加 回车符 和换行符  也就是 \r  \n  。

而Unix等操作系统只需要\n就可以了。


知道了原理后 就好办了。

在Tesseract-OCR工程里找到ltrresultiterator.cpp

修改第36行如下:

namespace tesseract {

LTRResultIterator::LTRResultIterator(PAGE_RES* page_res, Tesseract* tesseract,
int scale, int scaled_yres,
int rect_left, int rect_top,
int rect_width, int rect_height)
: PageIterator(page_res, tesseract, scale, scaled_yres,
rect_left, rect_top, rect_width, rect_height),
line_separator_("\r\n"),
paragraph_separator_("\r\n") {
}