tesseract  4.1.1
capi.h
Go to the documentation of this file.
1 // File: capi.h
3 // Description: C-API TessBaseAPI
4 //
5 // (C) Copyright 2012, Google Inc.
6 // Licensed under the Apache License, Version 2.0 (the "License");
7 // you may not use this file except in compliance with the License.
8 // You may obtain a copy of the License at
9 // http://www.apache.org/licenses/LICENSE-2.0
10 // Unless required by applicable law or agreed to in writing, software
11 // distributed under the License is distributed on an "AS IS" BASIS,
12 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 // See the License for the specific language governing permissions and
14 // limitations under the License.
15 //
17 
18 #ifndef API_CAPI_H_
19 #define API_CAPI_H_
20 
21 #if defined(TESSERACT_API_BASEAPI_H_) && !defined(TESS_CAPI_INCLUDE_BASEAPI)
22 # define TESS_CAPI_INCLUDE_BASEAPI
23 #endif
24 
25 #ifdef TESS_CAPI_INCLUDE_BASEAPI
26 # include "baseapi.h"
27 # include "ocrclass.h"
28 # include "pageiterator.h"
29 # include "renderer.h"
30 # include "resultiterator.h"
31 #else
32 # include <stdbool.h>
33 # include <stdio.h>
34 # include "platform.h"
35 #endif
36 
37 #ifdef __cplusplus
38 extern "C" {
39 #endif
40 
41 #ifndef TESS_CALL
42 # if defined(WIN32)
43 # define TESS_CALL __cdecl
44 # else
45 # define TESS_CALL
46 # endif
47 #endif
48 
49 #ifndef BOOL
50 # define BOOL int
51 # define TRUE 1
52 # define FALSE 0
53 #endif
54 
55 #ifdef TESS_CAPI_INCLUDE_BASEAPI
59 typedef tesseract::TessAltoRenderer TessAltoRenderer;
60 typedef tesseract::TessTsvRenderer TessTsvRenderer;
64 typedef tesseract::TessWordStrBoxRenderer TessWordStrBoxRenderer;
65 typedef tesseract::TessLSTMBoxRenderer TessLSTMBoxRenderer;
73 typedef tesseract::ImageThresholder TessImageThresholder;
75 typedef tesseract::DictFunc TessDictFunc;
76 typedef tesseract::ProbabilityInContextFunc TessProbabilityInContextFunc;
77 // typedef tesseract::ParamsModelClassifyFunc TessParamsModelClassifyFunc;
78 typedef tesseract::FillLatticeFunc TessFillLatticeFunc;
79 typedef tesseract::Dawg TessDawg;
80 typedef tesseract::TruthCallback TessTruthCallback;
86 #else
88 typedef struct TessTextRenderer TessTextRenderer;
89 typedef struct TessHOcrRenderer TessHOcrRenderer;
90 typedef struct TessPDFRenderer TessPDFRenderer;
91 typedef struct TessUnlvRenderer TessUnlvRenderer;
93 typedef struct TessBaseAPI TessBaseAPI;
94 typedef struct TessPageIterator TessPageIterator;
98 typedef enum TessOcrEngineMode {
104 typedef enum TessPageSegMode {
119  PSM_COUNT
121 typedef enum TessPageIteratorLevel {
126  RIL_SYMBOL
128 typedef enum TessPolyBlockType {
144  PT_COUNT
146 typedef enum TessOrientation {
158 typedef enum TessWritingDirection {
163 typedef enum TessTextlineOrder {
168 typedef struct ETEXT_DESC ETEXT_DESC;
169 #endif
170 
171 typedef bool (*TessCancelFunc)(void* cancel_this, int words);
172 typedef bool (*TessProgressFunc)(ETEXT_DESC* ths, int left, int right, int top,
173  int bottom);
174 
175 struct Pix;
176 struct Boxa;
177 struct Pixa;
178 
179 /* General free functions */
180 
181 TESS_API const char* TESS_CALL TessVersion();
182 TESS_API void TESS_CALL TessDeleteText(const char* text);
183 TESS_API void TESS_CALL TessDeleteTextArray(char** arr);
184 TESS_API void TESS_CALL TessDeleteIntArray(const int* arr);
185 
186 /* Renderer API */
188 TessTextRendererCreate(const char* outputbase);
190 TessHOcrRendererCreate(const char* outputbase);
192 TessHOcrRendererCreate2(const char* outputbase, BOOL font_info);
194 TessAltoRendererCreate(const char* outputbase);
196 TessTsvRendererCreate(const char* outputbase);
198  const char* outputbase, const char* datadir, BOOL textonly);
200 TessUnlvRendererCreate(const char* outputbase);
202 TessBoxTextRendererCreate(const char* outputbase);
204 TessLSTMBoxRendererCreate(const char* outputbase);
206 TessWordStrBoxRendererCreate(const char* outputbase);
207 
210  TessResultRenderer* next);
214  TessResultRenderer* renderer, const char* title);
216  TessBaseAPI* api);
219 
220 TESS_API const char* TESS_CALL
222 TESS_API const char* TESS_CALL
225 
226 /* Base API */
227 
230 
232  void** device);
233 
235  const char* name);
237 
239  struct Pix* pix);
241 
244 
246  const char* name);
247 
249  const char* name,
250  const char* value);
252  const char* name,
253  const char* value);
254 
256  const char* name, int* value);
258  const char* name,
259  BOOL* value);
261  const char* name,
262  double* value);
263 TESS_API const char* TESS_CALL
264 TessBaseAPIGetStringVariable(const TessBaseAPI* handle, const char* name);
265 
267  FILE* fp);
269  const TessBaseAPI* handle, const char* filename);
270 
271 #ifdef TESS_CAPI_INCLUDE_BASEAPI
272 
274  const char* name,
275  STRING* val);
276 
277 TESS_API int TESS_CALL TessBaseAPIInit(
278  TessBaseAPI* handle, const char* datapath, const char* language,
279  TessOcrEngineMode mode, char** configs, int configs_size,
280  const STRING* vars_vec, size_t vars_vec_size, const STRING* vars_values,
281  size_t vars_values_size, BOOL set_only_init_params);
282 
283 #endif // def TESS_CAPI_INCLUDE_BASEAPI
284 
286  const char* datapath,
287  const char* language,
288  TessOcrEngineMode oem, char** configs,
289  int configs_size);
291  const char* datapath,
292  const char* language,
293  TessOcrEngineMode oem);
295  const char* datapath,
296  const char* language);
297 
299  TessBaseAPI* handle, const char* datapath, const char* language,
300  TessOcrEngineMode mode, char** configs, int configs_size, char** vars_vec,
301  char** vars_values, size_t vars_vec_size, BOOL set_only_non_debug_params);
302 
303 TESS_API const char* TESS_CALL
305 TESS_API char** TESS_CALL
307 TESS_API char** TESS_CALL
309 
311  const char* datapath,
312  const char* language);
314 
316  const char* filename);
318  const char* filename);
319 
321  TessPageSegMode mode);
324 
326  const unsigned char* imagedata,
327  int bytes_per_pixel,
328  int bytes_per_line, int left, int top,
329  int width, int height);
330 
332 
334  const unsigned char* imagedata,
335  int width, int height,
336  int bytes_per_pixel,
337  int bytes_per_line);
339  struct Pix* pix);
340 
342  int ppi);
343 
345  int top, int width, int height);
346 
347 #ifdef TESS_CAPI_INCLUDE_BASEAPI
349  TessBaseAPI* handle, TessImageThresholder* thresholder);
350 #endif
351 
352 TESS_API struct Pix* TESS_CALL
355  struct Pixa** pixa);
357  struct Pixa** pixa,
358  int** blockids);
359 TESS_API struct Boxa* TESS_CALL
360 TessBaseAPIGetTextlines1(TessBaseAPI* handle, BOOL raw_image, int raw_padding,
361  struct Pixa** pixa, int** blockids, int** paraids);
363  struct Pixa** pixa,
364  int** blockids);
366  struct Pixa** pixa);
367 TESS_API struct Boxa* TESS_CALL
368 TessBaseAPIGetConnectedComponents(TessBaseAPI* handle, struct Pixa** cc);
370  TessBaseAPI* handle, TessPageIteratorLevel level, BOOL text_only,
371  struct Pixa** pixa, int** blockids);
373  TessBaseAPI* handle, TessPageIteratorLevel level, BOOL text_only,
374  BOOL raw_image, int raw_padding, struct Pixa** pixa, int** blockids,
375  int** paraids);
376 
379 
382 
384  ETEXT_DESC* monitor);
385 
386 #ifndef DISABLED_LEGACY_ENGINE
388  ETEXT_DESC* monitor);
389 #endif
390 
392  const char* filename,
393  const char* retry_config,
394  int timeout_millisec,
395  TessResultRenderer* renderer);
397  struct Pix* pix, int page_index,
398  const char* filename,
399  const char* retry_config,
400  int timeout_millisec,
401  TessResultRenderer* renderer);
402 
407 
410  int page_number);
411 
413  int page_number);
415  int page_number);
416 
418  int page_number);
420  int page_number);
422  int page_number);
423 
426 
428 
429 #ifndef DISABLED_LEGACY_ENGINE
431  TessPageSegMode mode,
432  const char* wordstr);
433 #endif // ndef DISABLED_LEGACY_ENGINE
434 
437 
439  const char* word);
441  int* out_offset,
442  float* out_slope);
443 
444 #ifdef TESS_CAPI_INCLUDE_BASEAPI
445 
447  TessDictFunc f);
448 
450 
452  TessBaseAPI* handle, TessProbabilityInContextFunc f);
453 
454 // Call TessDeleteText(*best_script_name) to free memory allocated by this
455 // function
457  TessBaseAPI* handle, int* orient_deg, float* orient_conf,
458  const char** script_name, float* script_conf);
459 
460 #endif // def TESS_CAPI_INCLUDE_BASEAPI
461 
463  int unichar_id);
464 
466  double margin);
467 
468 #ifdef TESS_CAPI_INCLUDE_BASEAPI
469 
470 TESS_API const TessDawg* TESS_CALL TessBaseAPIGetDawg(const TessBaseAPI* handle,
471  int i);
472 
474 
476 
478  TessTruthCallback* cb);
479 
481  TessBaseAPI* handle, int** block_orientation, bool** vertical_writing);
482 
483 #endif
484 
485 /* Page iterator */
486 
488 
491 
493 
495  TessPageIteratorLevel level);
496 
498  const TessPageIterator* handle, TessPageIteratorLevel level);
499 
501  const TessPageIterator* handle, TessPageIteratorLevel level,
502  TessPageIteratorLevel element);
503 
505  const TessPageIterator* handle, TessPageIteratorLevel level, int* left,
506  int* top, int* right, int* bottom);
507 
510 
512  const TessPageIterator* handle, TessPageIteratorLevel level);
513 
515  const TessPageIterator* handle, TessPageIteratorLevel level, int padding,
516  struct Pix* original_image, int* left, int* top);
517 
519  TessPageIteratorLevel level,
520  int* x1, int* y1, int* x2,
521  int* y2);
522 
524  TessPageIterator* handle, TessOrientation* orientation,
525  TessWritingDirection* writing_direction, TessTextlineOrder* textline_order,
526  float* deskew_angle);
527 
529  TessPageIterator* handle, TessParagraphJustification* justification,
530  BOOL* is_list_item, BOOL* is_crown, int* first_line_indent);
531 
532 /* Result iterator */
533 
543 
545  TessPageIteratorLevel level);
547  const TessResultIterator* handle, TessPageIteratorLevel level);
549  const TessResultIterator* handle, TessPageIteratorLevel level);
550 TESS_API const char* TESS_CALL
553  const TessResultIterator* handle, BOOL* is_bold, BOOL* is_italic,
554  BOOL* is_underlined, BOOL* is_monospace, BOOL* is_serif, BOOL* is_smallcaps,
555  int* pointsize, int* font_id);
556 
567 
570 TESS_API const char* TESS_CALL
572 TESS_API float TESS_CALL
574 
575 /* Progress monitor */
576 
580  TessCancelFunc cancelFunc);
582  void* cancelThis);
584 TESS_API void TESS_CALL
588  int deadline);
589 
590 #ifndef DISABLED_LEGACY_ENGINE
591 
592 # ifdef TESS_CAPI_INCLUDE_BASEAPI
593 TESS_API void TESS_CALL TessBaseAPISetFillLatticeFunc(TessBaseAPI* handle,
594  TessFillLatticeFunc f);
595 
597  TessBaseAPI* handle, TBLOB* blob, INT_FEATURE_STRUCT* int_features,
598  int* num_features, int* FeatureOutlineIndex);
599 
600 TESS_API ROW* TESS_CALL TessFindRowForBox(BLOCK_LIST* blocks, int left, int top,
601  int right, int bottom);
602 
604  TessBaseAPI* handle, TBLOB* blob, int num_max_matches, int* unichar_ids,
605  float* ratings, int* num_matches_returned);
606 
607 TESS_API ROW* TESS_CALL TessMakeTessOCRRow(float baseline, float xheight,
608  float descender, float ascender);
609 
611 
612 TESS_API void TESS_CALL TessNormalizeTBLOB(TBLOB* tblob, ROW* row,
613  BOOL numeric_mode);
614 
615 TESS_API BLOCK_LIST* TESS_CALL
617 
618 TESS_API void TESS_CALL TessDeleteBlockList(BLOCK_LIST* block_list);
619 
620 # endif // def TESS_CAPI_INCLUDE_BASEAPI
621 
622 #endif // ndef DISABLED_LEGACY_ENGINE
623 
624 #ifdef __cplusplus
625 }
626 #endif
627 
628 #endif // API_CAPI_H_
TESS_API void TESS_CALL TessBaseGetBlockTextOrientations(TessBaseAPI *handle, int **block_orientation, bool **vertical_writing)
Definition: capi.cpp:665
TESS_API void TESS_CALL TessBaseAPISetDictFunc(TessBaseAPI *handle, TessDictFunc f)
Definition: capi.cpp:574
TESS_API void TESS_CALL TessBaseAPISetThresholder(TessBaseAPI *handle, TessImageThresholder *thresholder)
Definition: capi.cpp:390
TESS_API int TESS_CALL TessBaseAPINumDawgs(const TessBaseAPI *handle)
Definition: capi.cpp:631
TESS_API void TESS_CALL TessBaseAPIClearPersistentCache(TessBaseAPI *)
Definition: capi.cpp:580
TESS_API void TESS_CALL TessNormalizeTBLOB(TBLOB *tblob, ROW *row, BOOL numeric_mode)
Definition: capi.cpp:645
TESS_API void TESS_CALL TessBaseAPISetProbabilityInContextFunc(TessBaseAPI *handle, TessProbabilityInContextFunc f)
Definition: capi.cpp:584
TESS_API ROW *TESS_CALL TessMakeTessOCRRow(float baseline, float xheight, float descender, float ascender)
Definition: capi.cpp:636
TESS_API TessOcrEngineMode TESS_CALL TessBaseAPIOem(const TessBaseAPI *handle)
Definition: capi.cpp:651
TESS_API void TESS_CALL TessBaseAPIInitTruthCallback(TessBaseAPI *handle, TessTruthCallback *cb)
Definition: capi.cpp:655
TESS_API const TessDawg *TESS_CALL TessBaseAPIGetDawg(const TessBaseAPI *handle, int i)
Definition: capi.cpp:626
TESS_API void TESS_CALL TessBaseAPIGetFeaturesForBlob(TessBaseAPI *handle, TBLOB *blob, INT_FEATURE_STRUCT *int_features, int *num_features, int *FeatureOutlineIndex)
Definition: capi.cpp:600
TESS_API TBLOB *TESS_CALL TessMakeTBLOB(struct Pix *pix)
Definition: capi.cpp:641
TESS_API ROW *TESS_CALL TessFindRowForBox(BLOCK_LIST *blocks, int left, int top, int right, int bottom)
Definition: capi.cpp:607
TESS_API void TESS_CALL TessBaseAPIRunAdaptiveClassifier(TessBaseAPI *handle, TBLOB *blob, int num_max_matches, int *unichar_ids, float *ratings, int *num_matches_returned)
Definition: capi.cpp:612
TESS_API BOOL TESS_CALL TessBaseAPIGetVariableAsString(TessBaseAPI *handle, const char *name, STRING *val)
Definition: capi.cpp:244
TESS_API void TESS_CALL TessDeleteBlockList(BLOCK_LIST *block_list)
Definition: capi.cpp:45
TESS_API BOOL TESS_CALL TessBaseAPIDetectOrientationScript(TessBaseAPI *handle, int *orient_deg, float *orient_conf, const char **script_name, float *script_conf)
Definition: capi.cpp:591
TESS_API BLOCK_LIST *TESS_CALL TessBaseAPIFindLinesCreateBlockList(TessBaseAPI *handle)
Definition: capi.cpp:672
TessPolyBlockType
Definition: capi.h:128
@ PT_VERT_LINE
Definition: capi.h:142
@ PT_PULLOUT_TEXT
Definition: capi.h:132
@ PT_COUNT
Definition: capi.h:144
@ PT_HEADING_TEXT
Definition: capi.h:131
@ PT_TABLE
Definition: capi.h:135
@ PT_NOISE
Definition: capi.h:143
@ PT_PULLOUT_IMAGE
Definition: capi.h:140
@ PT_HEADING_IMAGE
Definition: capi.h:139
@ PT_INLINE_EQUATION
Definition: capi.h:134
@ PT_FLOWING_TEXT
Definition: capi.h:130
@ PT_UNKNOWN
Definition: capi.h:129
@ PT_HORZ_LINE
Definition: capi.h:141
@ PT_VERTICAL_TEXT
Definition: capi.h:136
@ PT_EQUATION
Definition: capi.h:133
@ PT_FLOWING_IMAGE
Definition: capi.h:138
@ PT_CAPTION_TEXT
Definition: capi.h:137
#define TESS_CALL
Definition: capi.h:45
TESS_API TessResultRenderer *TESS_CALL TessUnlvRendererCreate(const char *outputbase)
Definition: capi.cpp:81
TESS_API TessPageIterator *TESS_CALL TessBaseAPIAnalyseLayout(TessBaseAPI *handle)
Definition: capi.cpp:456
TESS_API void TESS_CALL TessPageIteratorOrientation(TessPageIterator *handle, TessOrientation *orientation, TessWritingDirection *writing_direction, TessTextlineOrder *textline_order, float *deskew_angle)
Definition: capi.cpp:735
TESS_API void TESS_CALL TessBaseAPIInitForAnalysePage(TessBaseAPI *handle)
Definition: capi.cpp:326
TESS_API TessResultRenderer *TESS_CALL TessHOcrRendererCreate2(const char *outputbase, BOOL font_info)
Definition: capi.cpp:61
TessParagraphJustification
Definition: capi.h:152
@ JUSTIFICATION_LEFT
Definition: capi.h:154
@ JUSTIFICATION_RIGHT
Definition: capi.h:156
@ JUSTIFICATION_CENTER
Definition: capi.h:155
@ JUSTIFICATION_UNKNOWN
Definition: capi.h:153
TESS_API void TESS_CALL TessBaseAPIDelete(TessBaseAPI *handle)
Definition: capi.cpp:148
TESS_API char *TESS_CALL TessBaseAPIGetAltoText(TessBaseAPI *handle, int page_number)
Definition: capi.cpp:510
TESS_API void TESS_CALL TessChoiceIteratorDelete(TessChoiceIterator *handle)
Definition: capi.cpp:861
TESS_API struct Pix *TESS_CALL TessBaseAPIGetInputImage(TessBaseAPI *handle)
Definition: capi.cpp:171
TESS_API void TESS_CALL TessDeleteTextArray(char **arr)
Definition: capi.cpp:33
struct TessMutableIterator TessMutableIterator
Definition: capi.h:96
TESS_API void TESS_CALL TessMonitorSetCancelFunc(ETEXT_DESC *monitor, TessCancelFunc cancelFunc)
Definition: capi.cpp:887
TESS_API struct Pix *TESS_CALL TessPageIteratorGetImage(const TessPageIterator *handle, TessPageIteratorLevel level, int padding, struct Pix *original_image, int *left, int *top)
Definition: capi.cpp:722
TESS_API BOOL TESS_CALL TessPageIteratorBaseline(const TessPageIterator *handle, TessPageIteratorLevel level, int *x1, int *y1, int *x2, int *y2)
Definition: capi.cpp:728
TESS_API BOOL TESS_CALL TessResultIteratorWordIsFromDictionary(const TessResultIterator *handle)
Definition: capi.cpp:837
TESS_API BOOL TESS_CALL TessChoiceIteratorNext(TessChoiceIterator *handle)
Definition: capi.cpp:865
TESS_API float TESS_CALL TessResultIteratorConfidence(const TessResultIterator *handle, TessPageIteratorLevel level)
Definition: capi.cpp:792
TESS_API const char *TESS_CALL TessChoiceIteratorGetUTF8Text(const TessChoiceIterator *handle)
Definition: capi.cpp:870
TESS_API void TESS_CALL TessDeleteText(const char *text)
Definition: capi.cpp:29
TESS_API size_t TESS_CALL TessBaseAPIGetOpenCLDevice(TessBaseAPI *handle, void **device)
Definition: capi.cpp:152
TESS_API int TESS_CALL TessBaseAPIGetThresholdedImageScaleFactor(const TessBaseAPI *handle)
Definition: capi.cpp:451
struct TessPDFRenderer TessPDFRenderer
Definition: capi.h:90
bool(* TessProgressFunc)(ETEXT_DESC *ths, int left, int right, int top, int bottom)
Definition: capi.h:172
TESS_API void TESS_CALL TessBaseAPIReadDebugConfigFile(TessBaseAPI *handle, const char *filename)
Definition: capi.cpp:335
TESS_API TessChoiceIterator *TESS_CALL TessResultIteratorGetChoiceIterator(const TessResultIterator *handle)
Definition: capi.cpp:778
TESS_API struct Boxa *TESS_CALL TessBaseAPIGetComponentImages1(TessBaseAPI *handle, TessPageIteratorLevel level, BOOL text_only, BOOL raw_image, int raw_padding, struct Pixa **pixa, int **blockids, int **paraids)
Definition: capi.cpp:441
TESS_API int TESS_CALL TessMonitorGetProgress(ETEXT_DESC *monitor)
Definition: capi.cpp:906
TESS_API const char *TESS_CALL TessVersion()
Definition: capi.cpp:25
TESS_API struct Boxa *TESS_CALL TessBaseAPIGetWords(TessBaseAPI *handle, struct Pixa **pixa)
Definition: capi.cpp:424
TESS_API BOOL TESS_CALL TessBaseAPIAdaptToWordStr(TessBaseAPI *handle, TessPageSegMode mode, const char *wordstr)
Definition: capi.cpp:548
TESS_API TessResultIterator *TESS_CALL TessBaseAPIGetIterator(TessBaseAPI *handle)
Definition: capi.cpp:492
TESS_API struct Boxa *TESS_CALL TessBaseAPIGetRegions(TessBaseAPI *handle, struct Pixa **pixa)
Definition: capi.cpp:400
TESS_API BOOL TESS_CALL TessPageIteratorBoundingBox(const TessPageIterator *handle, TessPageIteratorLevel level, int *left, int *top, int *right, int *bottom)
Definition: capi.cpp:706
TESS_API int TESS_CALL TessBaseAPIInit2(TessBaseAPI *handle, const char *datapath, const char *language, TessOcrEngineMode oem)
Definition: capi.cpp:276
TESS_API void TESS_CALL TessResultRendererInsert(TessResultRenderer *renderer, TessResultRenderer *next)
Definition: capi.cpp:104
TESS_API char **TESS_CALL TessBaseAPIGetLoadedLanguagesAsVector(const TessBaseAPI *handle)
Definition: capi.cpp:295
TESS_API TessResultRenderer *TESS_CALL TessHOcrRendererCreate(const char *outputbase)
Definition: capi.cpp:56
TESS_API const char *TESS_CALL TessBaseAPIGetUnichar(TessBaseAPI *handle, int unichar_id)
Definition: capi.cpp:621
TESS_API BOOL TESS_CALL TessResultIteratorSymbolIsSuperscript(const TessResultIterator *handle)
Definition: capi.cpp:847
struct TessBaseAPI TessBaseAPI
Definition: capi.h:93
TESS_API int TESS_CALL TessBaseAPIRecognizeForChopTest(TessBaseAPI *handle, ETEXT_DESC *monitor)
Definition: capi.cpp:466
TESS_API BOOL TESS_CALL TessPageIteratorIsAtFinalElement(const TessPageIterator *handle, TessPageIteratorLevel level, TessPageIteratorLevel element)
Definition: capi.cpp:700
TESS_API BOOL TESS_CALL TessBaseAPIProcessPages(TessBaseAPI *handle, const char *filename, const char *retry_config, int timeout_millisec, TessResultRenderer *renderer)
Definition: capi.cpp:472
TessPageSegMode
Definition: capi.h:104
@ PSM_AUTO
Definition: capi.h:108
@ PSM_OSD_ONLY
Definition: capi.h:105
@ PSM_SINGLE_CHAR
Definition: capi.h:115
@ PSM_AUTO_OSD
Definition: capi.h:106
@ PSM_CIRCLE_WORD
Definition: capi.h:114
@ PSM_SINGLE_BLOCK_VERT_TEXT
Definition: capi.h:110
@ PSM_SINGLE_COLUMN
Definition: capi.h:109
@ PSM_SPARSE_TEXT
Definition: capi.h:116
@ PSM_COUNT
Definition: capi.h:119
@ PSM_SINGLE_LINE
Definition: capi.h:112
@ PSM_SINGLE_BLOCK
Definition: capi.h:111
@ PSM_RAW_LINE
Definition: capi.h:118
@ PSM_AUTO_ONLY
Definition: capi.h:107
@ PSM_SINGLE_WORD
Definition: capi.h:113
@ PSM_SPARSE_TEXT_OSD
Definition: capi.h:117
TESS_API TessPageIterator *TESS_CALL TessPageIteratorCopy(const TessPageIterator *handle)
Definition: capi.cpp:682
TESS_API void TESS_CALL TessBaseAPISetInputImage(TessBaseAPI *handle, struct Pix *pix)
Definition: capi.cpp:166
TESS_API struct Boxa *TESS_CALL TessBaseAPIGetTextlines1(TessBaseAPI *handle, BOOL raw_image, int raw_padding, struct Pixa **pixa, int **blockids, int **paraids)
Definition: capi.cpp:411
TESS_API BOOL TESS_CALL TessBaseAPIGetBoolVariable(const TessBaseAPI *handle, const char *name, BOOL *value)
Definition: capi.cpp:206
TESS_API TessResultRenderer *TESS_CALL TessPDFRendererCreate(const char *outputbase, const char *datadir, BOOL textonly)
Definition: capi.cpp:75
TESS_API char *TESS_CALL TessBaseAPIGetWordStrBoxText(TessBaseAPI *handle, int page_number)
Definition: capi.cpp:525
TESS_API void TESS_CALL TessBaseAPIClear(TessBaseAPI *handle)
Definition: capi.cpp:555
TESS_API ETEXT_DESC *TESS_CALL TessMonitorCreate()
Definition: capi.cpp:879
TESS_API BOOL TESS_CALL TessResultIteratorNext(TessResultIterator *handle, TessPageIteratorLevel level)
Definition: capi.cpp:782
TESS_API void TESS_CALL TessBaseAPIEnd(TessBaseAPI *handle)
Definition: capi.cpp:559
TESS_API const TessPageIterator *TESS_CALL TessResultIteratorGetPageIteratorConst(const TessResultIterator *handle)
Definition: capi.cpp:773
TESS_API char *TESS_CALL TessBaseAPIGetUTF8Text(TessBaseAPI *handle)
Definition: capi.cpp:501
TESS_API char *TESS_CALL TessBaseAPIRect(TessBaseAPI *handle, const unsigned char *imagedata, int bytes_per_pixel, int bytes_per_line, int left, int top, int width, int height)
Definition: capi.cpp:350
TESS_API BOOL TESS_CALL TessResultIteratorSymbolIsDropcap(const TessResultIterator *handle)
Definition: capi.cpp:857
TESS_API TessBaseAPI *TESS_CALL TessBaseAPICreate()
Definition: capi.cpp:144
TESS_API void TESS_CALL TessDeleteIntArray(const int *arr)
Definition: capi.cpp:40
TESS_API TessResultRenderer *TESS_CALL TessBoxTextRendererCreate(const char *outputbase)
Definition: capi.cpp:86
TESS_API BOOL TESS_CALL TessBaseAPIGetIntVariable(const TessBaseAPI *handle, const char *name, int *value)
Definition: capi.cpp:200
TESS_API TessResultIterator *TESS_CALL TessResultIteratorCopy(const TessResultIterator *handle)
Definition: capi.cpp:763
TESS_API void TESS_CALL TessPageIteratorBegin(TessPageIterator *handle)
Definition: capi.cpp:686
TESS_API int TESS_CALL TessBaseAPIInit1(TessBaseAPI *handle, const char *datapath, const char *language, TessOcrEngineMode oem, char **configs, int configs_size)
Definition: capi.cpp:267
struct TessResultRenderer TessResultRenderer
Definition: capi.h:87
struct TessChoiceIterator TessChoiceIterator
Definition: capi.h:97
TESS_API void TESS_CALL TessBaseAPISetImage2(TessBaseAPI *handle, struct Pix *pix)
Definition: capi.cpp:374
TESS_API const char *TESS_CALL TessResultRendererTitle(TessResultRenderer *renderer)
Definition: capi.cpp:135
TESS_API BOOL TESS_CALL TessBaseAPISetDebugVariable(TessBaseAPI *handle, const char *name, const char *value)
Definition: capi.cpp:194
TESS_API void TESS_CALL TessDeleteResultRenderer(TessResultRenderer *renderer)
Definition: capi.cpp:100
TESS_API BOOL TESS_CALL TessBaseAPIGetDoubleVariable(const TessBaseAPI *handle, const char *name, double *value)
Definition: capi.cpp:217
TESS_API struct Pix *TESS_CALL TessBaseAPIGetThresholdedImage(TessBaseAPI *handle)
Definition: capi.cpp:396
struct TessTextRenderer TessTextRenderer
Definition: capi.h:88
TESS_API void TESS_CALL TessPageIteratorParagraphInfo(TessPageIterator *handle, TessParagraphJustification *justification, BOOL *is_list_item, BOOL *is_crown, int *first_line_indent)
Definition: capi.cpp:743
TESS_API struct Boxa *TESS_CALL TessBaseAPIGetComponentImages(TessBaseAPI *handle, TessPageIteratorLevel level, BOOL text_only, struct Pixa **pixa, int **blockids)
Definition: capi.cpp:434
TESS_API const char *TESS_CALL TessResultIteratorWordRecognitionLanguage(const TessResultIterator *handle)
Definition: capi.cpp:798
TESS_API void TESS_CALL TessBaseAPISetImage(TessBaseAPI *handle, const unsigned char *imagedata, int width, int height, int bytes_per_pixel, int bytes_per_line)
Definition: capi.cpp:366
struct TessPageIterator TessPageIterator
Definition: capi.h:94
TESS_API BOOL TESS_CALL TessResultIteratorSymbolIsSubscript(const TessResultIterator *handle)
Definition: capi.cpp:852
TESS_API const char *TESS_CALL TessBaseAPIGetStringVariable(const TessBaseAPI *handle, const char *name)
Definition: capi.cpp:224
TESS_API int *TESS_CALL TessBaseAPIAllWordConfidences(TessBaseAPI *handle)
Definition: capi.cpp:543
TESS_API void TESS_CALL TessBaseAPISetMinOrientationMargin(TessBaseAPI *handle, double margin)
Definition: capi.cpp:660
TESS_API void TESS_CALL TessMonitorSetDeadlineMSecs(ETEXT_DESC *monitor, int deadline)
Definition: capi.cpp:910
TESS_API TessPageSegMode TESS_CALL TessBaseAPIGetPageSegMode(const TessBaseAPI *handle)
Definition: capi.cpp:346
TESS_API TessMutableIterator *TESS_CALL TessBaseAPIGetMutableIterator(TessBaseAPI *handle)
Definition: capi.cpp:497
TESS_API TessPageIterator *TESS_CALL TessResultIteratorGetPageIterator(TessResultIterator *handle)
Definition: capi.cpp:768
TESS_API int TESS_CALL TessBaseAPIMeanTextConf(TessBaseAPI *handle)
Definition: capi.cpp:539
bool(* TessCancelFunc)(void *cancel_this, int words)
Definition: capi.h:171
struct TessResultIterator TessResultIterator
Definition: capi.h:95
TESS_API void *TESS_CALL TessMonitorGetCancelThis(ETEXT_DESC *monitor)
Definition: capi.cpp:897
TESS_API struct Boxa *TESS_CALL TessBaseAPIGetStrips(TessBaseAPI *handle, struct Pixa **pixa, int **blockids)
Definition: capi.cpp:418
TESS_API BOOL TESS_CALL TessPageIteratorIsAtBeginningOf(const TessPageIterator *handle, TessPageIteratorLevel level)
Definition: capi.cpp:695
TESS_API TessResultRenderer *TESS_CALL TessWordStrBoxRendererCreate(const char *outputbase)
Definition: capi.cpp:91
TESS_API struct Boxa *TESS_CALL TessBaseAPIGetConnectedComponents(TessBaseAPI *handle, struct Pixa **cc)
Definition: capi.cpp:430
TESS_API char *TESS_CALL TessBaseAPIGetBoxText(TessBaseAPI *handle, int page_number)
Definition: capi.cpp:520
TESS_API void TESS_CALL TessBaseAPIPrintVariables(const TessBaseAPI *handle, FILE *fp)
Definition: capi.cpp:228
TESS_API void TESS_CALL TessBaseAPIReadConfigFile(TessBaseAPI *handle, const char *filename)
Definition: capi.cpp:330
TESS_API BOOL TESS_CALL TessResultRendererBeginDocument(TessResultRenderer *renderer, const char *title)
Definition: capi.cpp:114
TESS_API void TESS_CALL TessBaseAPISetPageSegMode(TessBaseAPI *handle, TessPageSegMode mode)
Definition: capi.cpp:340
TESS_API char **TESS_CALL TessBaseAPIGetAvailableLanguagesAsVector(const TessBaseAPI *handle)
Definition: capi.cpp:307
TESS_API struct Boxa *TESS_CALL TessBaseAPIGetTextlines(TessBaseAPI *handle, struct Pixa **pixa, int **blockids)
Definition: capi.cpp:405
TESS_API const char *TESS_CALL TessResultIteratorWordFontAttributes(const TessResultIterator *handle, BOOL *is_bold, BOOL *is_italic, BOOL *is_underlined, BOOL *is_monospace, BOOL *is_serif, BOOL *is_smallcaps, int *pointsize, int *font_id)
Definition: capi.cpp:802
TESS_API void TESS_CALL TessBaseAPISetSourceResolution(TessBaseAPI *handle, int ppi)
Definition: capi.cpp:379
TESS_API void TESS_CALL TessBaseAPISetOutputName(TessBaseAPI *handle, const char *name)
Definition: capi.cpp:183
TESS_API int TESS_CALL TessBaseAPIGetSourceYResolution(TessBaseAPI *handle)
Definition: capi.cpp:175
TESS_API BOOL TESS_CALL TessResultRendererEndDocument(TessResultRenderer *renderer)
Definition: capi.cpp:125
struct TessBoxTextRenderer TessBoxTextRenderer
Definition: capi.h:92
TESS_API float TESS_CALL TessChoiceIteratorConfidence(const TessChoiceIterator *handle)
Definition: capi.cpp:875
TESS_API TessResultRenderer *TESS_CALL TessTextRendererCreate(const char *outputbase)
Definition: capi.cpp:51
TESS_API int TESS_CALL TessResultRendererImageNum(TessResultRenderer *renderer)
Definition: capi.cpp:140
TESS_API void TESS_CALL TessMonitorSetCancelThis(ETEXT_DESC *monitor, void *cancelThis)
Definition: capi.cpp:892
TESS_API const char *TESS_CALL TessBaseAPIGetInputName(TessBaseAPI *handle)
Definition: capi.cpp:162
TESS_API char *TESS_CALL TessResultIteratorGetUTF8Text(const TessResultIterator *handle, TessPageIteratorLevel level)
Definition: capi.cpp:787
TESS_API BOOL TESS_CALL TessPageIteratorNext(TessPageIterator *handle, TessPageIteratorLevel level)
Definition: capi.cpp:690
struct TessUnlvRenderer TessUnlvRenderer
Definition: capi.h:91
TESS_API int TESS_CALL TessBaseAPIInit3(TessBaseAPI *handle, const char *datapath, const char *language)
Definition: capi.cpp:283
TessTextlineOrder
Definition: capi.h:163
@ TEXTLINE_ORDER_TOP_TO_BOTTOM
Definition: capi.h:166
@ TEXTLINE_ORDER_RIGHT_TO_LEFT
Definition: capi.h:165
@ TEXTLINE_ORDER_LEFT_TO_RIGHT
Definition: capi.h:164
TESS_API TessResultRenderer *TESS_CALL TessAltoRendererCreate(const char *outputbase)
Definition: capi.cpp:66
TESS_API void TESS_CALL TessBaseAPISetInputName(TessBaseAPI *handle, const char *name)
Definition: capi.cpp:157
TESS_API char *TESS_CALL TessBaseAPIGetLSTMBoxText(TessBaseAPI *handle, int page_number)
Definition: capi.cpp:530
TESS_API int TESS_CALL TessBaseAPIInit4(TessBaseAPI *handle, const char *datapath, const char *language, TessOcrEngineMode mode, char **configs, int configs_size, char **vars_vec, char **vars_values, size_t vars_vec_size, BOOL set_only_non_debug_params)
Definition: capi.cpp:250
TESS_API struct Pix *TESS_CALL TessPageIteratorGetBinaryImage(const TessPageIterator *handle, TessPageIteratorLevel level)
Definition: capi.cpp:717
TESS_API char *TESS_CALL TessBaseAPIGetHOCRText(TessBaseAPI *handle, int page_number)
Definition: capi.cpp:505
TESS_API BOOL TESS_CALL TessResultRendererAddImage(TessResultRenderer *renderer, TessBaseAPI *api)
Definition: capi.cpp:119
TESS_API BOOL TESS_CALL TessBaseAPISetVariable(TessBaseAPI *handle, const char *name, const char *value)
Definition: capi.cpp:188
TESS_API void TESS_CALL TessPageIteratorDelete(TessPageIterator *handle)
Definition: capi.cpp:677
TESS_API const char *TESS_CALL TessBaseAPIGetDatapath(TessBaseAPI *handle)
Definition: capi.cpp:179
TESS_API int TESS_CALL TessBaseAPIInitLangMod(TessBaseAPI *handle, const char *datapath, const char *language)
Definition: capi.cpp:319
TESS_API const char *TESS_CALL TessBaseAPIGetInitLanguagesAsString(const TessBaseAPI *handle)
Definition: capi.cpp:290
TESS_API void TESS_CALL TessMonitorSetProgressFunc(ETEXT_DESC *monitor, TessProgressFunc progressFunc)
Definition: capi.cpp:902
TESS_API int TESS_CALL TessBaseAPIIsValidWord(TessBaseAPI *handle, const char *word)
Definition: capi.cpp:563
TESS_API TessPolyBlockType TESS_CALL TessPageIteratorBlockType(const TessPageIterator *handle)
Definition: capi.cpp:713
TessOcrEngineMode
Definition: capi.h:98
@ OEM_DEFAULT
Definition: capi.h:102
@ OEM_TESSERACT_ONLY
Definition: capi.h:99
@ OEM_LSTM_ONLY
Definition: capi.h:100
@ OEM_TESSERACT_LSTM_COMBINED
Definition: capi.h:101
TESS_API int TESS_CALL TessBaseAPIRecognize(TessBaseAPI *handle, ETEXT_DESC *monitor)
Definition: capi.cpp:460
TESS_API TessResultRenderer *TESS_CALL TessTsvRendererCreate(const char *outputbase)
Definition: capi.cpp:71
TESS_API TessResultRenderer *TESS_CALL TessResultRendererNext(TessResultRenderer *renderer)
Definition: capi.cpp:110
#define BOOL
Definition: capi.h:50
TessOrientation
Definition: capi.h:146
@ ORIENTATION_PAGE_DOWN
Definition: capi.h:149
@ ORIENTATION_PAGE_RIGHT
Definition: capi.h:148
@ ORIENTATION_PAGE_UP
Definition: capi.h:147
@ ORIENTATION_PAGE_LEFT
Definition: capi.h:150
TESS_API char *TESS_CALL TessBaseAPIGetUNLVText(TessBaseAPI *handle)
Definition: capi.cpp:535
TessPageIteratorLevel
Definition: capi.h:121
@ RIL_TEXTLINE
Definition: capi.h:124
@ RIL_PARA
Definition: capi.h:123
@ RIL_BLOCK
Definition: capi.h:122
@ RIL_WORD
Definition: capi.h:125
@ RIL_SYMBOL
Definition: capi.h:126
TESS_API BOOL TESS_CALL TessBaseAPIPrintVariablesToFile(const TessBaseAPI *handle, const char *filename)
Definition: capi.cpp:233
TESS_API TessResultRenderer *TESS_CALL TessLSTMBoxRendererCreate(const char *outputbase)
Definition: capi.cpp:96
TessWritingDirection
Definition: capi.h:158
@ WRITING_DIRECTION_RIGHT_TO_LEFT
Definition: capi.h:160
@ WRITING_DIRECTION_TOP_TO_BOTTOM
Definition: capi.h:161
@ WRITING_DIRECTION_LEFT_TO_RIGHT
Definition: capi.h:159
struct TessHOcrRenderer TessHOcrRenderer
Definition: capi.h:89
TESS_API BOOL TESS_CALL TessResultIteratorWordIsNumeric(const TessResultIterator *handle)
Definition: capi.cpp:842
TESS_API BOOL TESS_CALL TessBaseAPIGetTextDirection(TessBaseAPI *handle, int *out_offset, float *out_slope)
Definition: capi.cpp:568
TESS_API BOOL TESS_CALL TessBaseAPIProcessPage(TessBaseAPI *handle, struct Pix *pix, int page_index, const char *filename, const char *retry_config, int timeout_millisec, TessResultRenderer *renderer)
Definition: capi.cpp:481
TESS_API void TESS_CALL TessBaseAPISetRectangle(TessBaseAPI *handle, int left, int top, int width, int height)
Definition: capi.cpp:384
TESS_API void TESS_CALL TessResultIteratorDelete(TessResultIterator *handle)
Definition: capi.cpp:758
TESS_API void TESS_CALL TessMonitorDelete(ETEXT_DESC *monitor)
Definition: capi.cpp:883
TESS_API void TESS_CALL TessBaseAPIClearAdaptiveClassifier(TessBaseAPI *handle)
Definition: capi.cpp:361
TESS_API const char *TESS_CALL TessResultRendererExtention(TessResultRenderer *renderer)
Definition: capi.cpp:130
TESS_API char *TESS_CALL TessBaseAPIGetTsvText(TessBaseAPI *handle, int page_number)
Definition: capi.cpp:515
PolyBlockType
Definition: publictypes.h:53
#define TESS_API
Definition: platform.h:54
@ baseline
Definition: mfoutline.h:63
void(Wordrec::*)(const MATRIX &, const WERD_CHOICE_LIST &, const UNICHARSET &, BlamerBundle *) FillLatticeFunc
Definition: baseapi.h:79
ParagraphJustification
Definition: publictypes.h:251
int(Dict::*)(void *, const UNICHARSET &, UNICHAR_ID, bool) const DictFunc
Definition: baseapi.h:76
double(Dict::*)(const char *, const char *, int, const char *, int) ProbabilityInContextFunc
Definition: baseapi.h:77
Definition: blobs.h:284
Definition: ocrrow.h:37
void * cancel_this
monitor-aware progress callback
Definition: ocrclass.h:116
Definition: strngs.h:45