Skip to content

Commit 11f2057

Browse files
committed
Multi-page TIFF buffering is broken - fix #233
1 parent 38cb4ac commit 11f2057

File tree

2 files changed

+9
-3
lines changed

2 files changed

+9
-3
lines changed

api/baseapi.cpp

+4-2
Original file line numberDiff line numberDiff line change
@@ -984,6 +984,7 @@ bool TessBaseAPI::ProcessPagesMultipageTiff(const l_uint8 *data,
984984
OpenclDevice od;
985985
#endif // USE_OPENCL
986986
int page = (tessedit_page_number >= 0) ? tessedit_page_number : 0;
987+
size_t offset = 0;
987988
for (; ; ++page) {
988989
if (tessedit_page_number >= 0)
989990
page = tessedit_page_number;
@@ -995,8 +996,8 @@ bool TessBaseAPI::ProcessPagesMultipageTiff(const l_uint8 *data,
995996
} else {
996997
#endif // USE_OPENCL
997998
pix = (data) ?
998-
pixReadMemTiff(data, size, page) :
999-
pixReadTiff(filename, page);
999+
pixReadMemFromMultipageTiff(data, size, &offset) :
1000+
pixReadFromMultipageTiff(filename, &offset);
10001001
#ifdef USE_OPENCL
10011002
}
10021003
#endif // USE_OPENCL
@@ -1010,6 +1011,7 @@ bool TessBaseAPI::ProcessPagesMultipageTiff(const l_uint8 *data,
10101011
pixDestroy(&pix);
10111012
if (!r) return false;
10121013
if (tessedit_page_number >= 0) break;
1014+
if (!offset) break;
10131015
}
10141016
return true;
10151017
#else

classify/mastertrainer.cpp

+5-1
Original file line numberDiff line numberDiff line change
@@ -214,10 +214,14 @@ void MasterTrainer::AddSample(bool verification, const char* unichar,
214214
// Must be called after ReadTrainingSamples, as the current number of images
215215
// is used as an offset for page numbers in the samples.
216216
void MasterTrainer::LoadPageImages(const char* filename) {
217+
size_t offset = 0;
217218
int page;
218219
Pix* pix;
219-
for (page = 0; (pix = pixReadTiff(filename, page)) != NULL; ++page) {
220+
for (page = 0; ; page++) {
221+
pix = pixReadFromMultipageTiff(filename, &offset);
222+
if (!pix) break;
220223
page_images_.push_back(pix);
224+
if (!offset) break;
221225
}
222226
tprintf("Loaded %d page images from %s\n", page, filename);
223227
}

0 commit comments

Comments
 (0)