1. 程式人生 > >Tesseract-OCR Windows下不換行的問題研究

Tesseract-OCR Windows下不換行的問題研究

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") {
}