tesseract  3.05.00
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
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 #ifdef TESS_CAPI_INCLUDE_BASEAPI
22 # include "baseapi.h"
23 # include "pageiterator.h"
24 # include "resultiterator.h"
25 # include "renderer.h"
26 #else
27 # include "platform.h"
28 # include <stdio.h>
29 #endif
30 
31 #ifdef __cplusplus
32 extern "C" {
33 #endif
34 
35 #ifndef TESS_CALL
36 # if defined(WIN32)
37 # define TESS_CALL __cdecl
38 # else
39 # define TESS_CALL
40 # endif
41 #endif
42 
43 #ifndef BOOL
44 # define BOOL int
45 # define TRUE 1
46 # define FALSE 0
47 #endif
48 
49 #ifdef TESS_CAPI_INCLUDE_BASEAPI
63 typedef tesseract::ImageThresholder TessImageThresholder;
65 typedef tesseract::DictFunc TessDictFunc;
66 typedef tesseract::ProbabilityInContextFunc TessProbabilityInContextFunc;
67 // typedef tesseract::ParamsModelClassifyFunc TessParamsModelClassifyFunc;
68 typedef tesseract::FillLatticeFunc TessFillLatticeFunc;
69 typedef tesseract::Dawg TessDawg;
70 typedef tesseract::TruthCallback TessTruthCallback;
71 #ifndef NO_CUBE_BUILD
72 typedef tesseract::CubeRecoContext TessCubeRecoContext;
73 #endif // NO_CUBE_BUILD
79 #else
80 typedef struct TessResultRenderer TessResultRenderer;
81 typedef struct TessTextRenderer TessTextRenderer;
82 typedef struct TessHOcrRenderer TessHOcrRenderer;
83 typedef struct TessPDFRenderer TessPDFRenderer;
84 typedef struct TessUnlvRenderer TessUnlvRenderer;
85 typedef struct TessBoxTextRenderer TessBoxTextRenderer;
86 typedef struct TessBaseAPI TessBaseAPI;
87 typedef struct TessPageIterator TessPageIterator;
88 typedef struct TessResultIterator TessResultIterator;
89 typedef struct TessMutableIterator TessMutableIterator;
90 typedef struct TessChoiceIterator TessChoiceIterator;
95 typedef enum TessPageIteratorLevel { RIL_BLOCK, RIL_PARA, RIL_TEXTLINE, RIL_WORD, RIL_SYMBOL} TessPageIteratorLevel;
103 typedef struct ETEXT_DESC ETEXT_DESC;
104 #endif
105 
106 struct Pix;
107 struct Boxa;
108 struct Pixa;
109 
110 /* General free functions */
111 
112 TESS_API const char*
114 TESS_API void TESS_CALL TessDeleteText(char* text);
115 TESS_API void TESS_CALL TessDeleteTextArray(char** arr);
116 TESS_API void TESS_CALL TessDeleteIntArray(int* arr);
117 #ifdef TESS_CAPI_INCLUDE_BASEAPI
118 TESS_API void TESS_CALL TessDeleteBlockList(BLOCK_LIST* block_list);
119 #endif
120 
121 /* Renderer API */
122 TESS_API TessResultRenderer* TESS_CALL TessTextRendererCreate(const char* outputbase);
123 TESS_API TessResultRenderer* TESS_CALL TessHOcrRendererCreate(const char* outputbase);
124 TESS_API TessResultRenderer* TESS_CALL TessHOcrRendererCreate2(const char* outputbase, BOOL font_info);
125 TESS_API TessResultRenderer* TESS_CALL TessPDFRendererCreate(const char* outputbase, const char* datadir);
126 TESS_API TessResultRenderer* TESS_CALL TessUnlvRendererCreate(const char* outputbase);
127 TESS_API TessResultRenderer* TESS_CALL TessBoxTextRendererCreate(const char* outputbase);
128 
129 TESS_API void TESS_CALL TessDeleteResultRenderer(TessResultRenderer* renderer);
130 TESS_API void TESS_CALL TessResultRendererInsert(TessResultRenderer* renderer, TessResultRenderer* next);
131 TESS_API TessResultRenderer*
132  TESS_CALL TessResultRendererNext(TessResultRenderer* renderer);
133 TESS_API BOOL TESS_CALL TessResultRendererBeginDocument(TessResultRenderer* renderer, const char* title);
134 TESS_API BOOL TESS_CALL TessResultRendererAddImage(TessResultRenderer* renderer, TessBaseAPI* api);
135 TESS_API BOOL TESS_CALL TessResultRendererEndDocument(TessResultRenderer* renderer);
136 
137 TESS_API const char* TESS_CALL TessResultRendererExtention(TessResultRenderer* renderer);
138 TESS_API const char* TESS_CALL TessResultRendererTitle(TessResultRenderer* renderer);
139 TESS_API int TESS_CALL TessResultRendererImageNum(TessResultRenderer* renderer);
140 
141 /* Base API */
142 
143 TESS_API TessBaseAPI*
145 TESS_API void TESS_CALL TessBaseAPIDelete(TessBaseAPI* handle);
146 
147 TESS_API size_t TESS_CALL TessBaseAPIGetOpenCLDevice(TessBaseAPI* handle, void **device);
148 
149 TESS_API void TESS_CALL TessBaseAPISetInputName( TessBaseAPI* handle, const char* name);
150 TESS_API const char* TESS_CALL TessBaseAPIGetInputName(TessBaseAPI* handle);
151 
152 TESS_API void TESS_CALL TessBaseAPISetInputImage(TessBaseAPI* handle, struct Pix* pix);
153 TESS_API struct Pix* TESS_CALL TessBaseAPIGetInputImage(TessBaseAPI* handle);
154 
155 TESS_API int TESS_CALL TessBaseAPIGetSourceYResolution(TessBaseAPI* handle);
156 TESS_API const char* TESS_CALL TessBaseAPIGetDatapath(TessBaseAPI* handle);
157 
158 TESS_API void TESS_CALL TessBaseAPISetOutputName(TessBaseAPI* handle, const char* name);
159 
160 TESS_API BOOL TESS_CALL TessBaseAPISetVariable(TessBaseAPI* handle, const char* name, const char* value);
161 TESS_API BOOL TESS_CALL TessBaseAPISetDebugVariable(TessBaseAPI* handle, const char* name, const char* value);
162 
163 TESS_API BOOL TESS_CALL TessBaseAPIGetIntVariable( const TessBaseAPI* handle, const char* name, int* value);
164 TESS_API BOOL TESS_CALL TessBaseAPIGetBoolVariable( const TessBaseAPI* handle, const char* name, BOOL* value);
165 TESS_API BOOL TESS_CALL TessBaseAPIGetDoubleVariable(const TessBaseAPI* handle, const char* name, double* value);
166 TESS_API const char*
167  TESS_CALL TessBaseAPIGetStringVariable(const TessBaseAPI* handle, const char* name);
168 
169 TESS_API void TESS_CALL TessBaseAPIPrintVariables( const TessBaseAPI* handle, FILE* fp);
170 TESS_API BOOL TESS_CALL TessBaseAPIPrintVariablesToFile(const TessBaseAPI* handle, const char* filename);
171 #ifdef TESS_CAPI_INCLUDE_BASEAPI
172 TESS_API BOOL TESS_CALL TessBaseAPIGetVariableAsString(TessBaseAPI* handle, const char* name, STRING* val);
173 #endif
174 
175 #ifdef TESS_CAPI_INCLUDE_BASEAPI
176 TESS_API int TESS_CALL TessBaseAPIInit(TessBaseAPI* handle, const char* datapath, const char* language,
177  TessOcrEngineMode mode, char** configs, int configs_size,
178  const STRING* vars_vec, size_t vars_vec_size,
179  const STRING* vars_values, size_t vars_values_size, BOOL set_only_init_params);
180 #endif
181 TESS_API int TESS_CALL TessBaseAPIInit1(TessBaseAPI* handle, const char* datapath, const char* language, TessOcrEngineMode oem,
182  char** configs, int configs_size);
183 TESS_API int TESS_CALL TessBaseAPIInit2(TessBaseAPI* handle, const char* datapath, const char* language, TessOcrEngineMode oem);
184 TESS_API int TESS_CALL TessBaseAPIInit3(TessBaseAPI* handle, const char* datapath, const char* language);
185 
186 TESS_API int TESS_CALL TessBaseAPIInit4(TessBaseAPI* handle, const char* datapath, const char* language, TessOcrEngineMode mode,
187  char** configs, int configs_size,
188  char** vars_vec, char** vars_values, size_t vars_vec_size,
189  BOOL set_only_non_debug_params);
190 
191 TESS_API const char*
192  TESS_CALL TessBaseAPIGetInitLanguagesAsString(const TessBaseAPI* handle);
193 TESS_API char**
194  TESS_CALL TessBaseAPIGetLoadedLanguagesAsVector(const TessBaseAPI* handle);
195 TESS_API char**
196  TESS_CALL TessBaseAPIGetAvailableLanguagesAsVector(const TessBaseAPI* handle);
197 
198 TESS_API int TESS_CALL TessBaseAPIInitLangMod(TessBaseAPI* handle, const char* datapath, const char* language);
199 TESS_API void TESS_CALL TessBaseAPIInitForAnalysePage(TessBaseAPI* handle);
200 
201 TESS_API void TESS_CALL TessBaseAPIReadConfigFile(TessBaseAPI* handle, const char* filename);
202 TESS_API void TESS_CALL TessBaseAPIReadDebugConfigFile(TessBaseAPI* handle, const char* filename);
203 
204 TESS_API void TESS_CALL TessBaseAPISetPageSegMode(TessBaseAPI* handle, TessPageSegMode mode);
205 TESS_API TessPageSegMode
206  TESS_CALL TessBaseAPIGetPageSegMode(const TessBaseAPI* handle);
207 
208 TESS_API char* TESS_CALL TessBaseAPIRect(TessBaseAPI* handle, const unsigned char* imagedata,
209  int bytes_per_pixel, int bytes_per_line,
210  int left, int top, int width, int height);
211 
212 TESS_API void TESS_CALL TessBaseAPIClearAdaptiveClassifier(TessBaseAPI* handle);
213 
214 TESS_API void TESS_CALL TessBaseAPISetImage(TessBaseAPI* handle, const unsigned char* imagedata, int width, int height,
215  int bytes_per_pixel, int bytes_per_line);
216 TESS_API void TESS_CALL TessBaseAPISetImage2(TessBaseAPI* handle, struct Pix* pix);
217 
218 TESS_API void TESS_CALL TessBaseAPISetSourceResolution(TessBaseAPI* handle, int ppi);
219 
220 TESS_API void TESS_CALL TessBaseAPISetRectangle(TessBaseAPI* handle, int left, int top, int width, int height);
221 
222 #ifdef TESS_CAPI_INCLUDE_BASEAPI
223 TESS_API void TESS_CALL TessBaseAPISetThresholder(TessBaseAPI* handle, TessImageThresholder* thresholder);
224 #endif
225 
226 TESS_API struct Pix*
227  TESS_CALL TessBaseAPIGetThresholdedImage( TessBaseAPI* handle);
228 TESS_API struct Boxa*
229  TESS_CALL TessBaseAPIGetRegions( TessBaseAPI* handle, struct Pixa** pixa);
230 TESS_API struct Boxa*
231  TESS_CALL TessBaseAPIGetTextlines( TessBaseAPI* handle, struct Pixa** pixa, int** blockids);
232 TESS_API struct Boxa*
233  TESS_CALL TessBaseAPIGetTextlines1( TessBaseAPI* handle, const BOOL raw_image, const int raw_padding,
234  struct Pixa** pixa, int** blockids, int** paraids);
235 TESS_API struct Boxa*
236  TESS_CALL TessBaseAPIGetStrips( TessBaseAPI* handle, struct Pixa** pixa, int** blockids);
237 TESS_API struct Boxa*
238  TESS_CALL TessBaseAPIGetWords( TessBaseAPI* handle, struct Pixa** pixa);
239 TESS_API struct Boxa*
240  TESS_CALL TessBaseAPIGetConnectedComponents(TessBaseAPI* handle, struct Pixa** cc);
241 TESS_API struct Boxa*
242  TESS_CALL TessBaseAPIGetComponentImages( TessBaseAPI* handle, const TessPageIteratorLevel level, const BOOL text_only,
243  struct Pixa** pixa, int** blockids);
244 TESS_API struct Boxa*
245  TESS_CALL TessBaseAPIGetComponentImages1( TessBaseAPI* handle, const TessPageIteratorLevel level, const BOOL text_only,
246  const BOOL raw_image, const int raw_padding,
247  struct Pixa** pixa, int** blockids, int** paraids);
248 
249 TESS_API int TESS_CALL TessBaseAPIGetThresholdedImageScaleFactor(const TessBaseAPI* handle);
250 
251 TESS_API void TESS_CALL TessBaseAPIDumpPGM(TessBaseAPI* handle, const char* filename);
252 
253 TESS_API TessPageIterator*
254  TESS_CALL TessBaseAPIAnalyseLayout(TessBaseAPI* handle);
255 
256 TESS_API int TESS_CALL TessBaseAPIRecognize(TessBaseAPI* handle, ETEXT_DESC* monitor);
257 TESS_API int TESS_CALL TessBaseAPIRecognizeForChopTest(TessBaseAPI* handle, ETEXT_DESC* monitor);
258 TESS_API BOOL TESS_CALL TessBaseAPIProcessPages(TessBaseAPI* handle, const char* filename, const char* retry_config,
259  int timeout_millisec, TessResultRenderer* renderer);
260 TESS_API BOOL TESS_CALL TessBaseAPIProcessPage(TessBaseAPI* handle, struct Pix* pix, int page_index, const char* filename,
261  const char* retry_config, int timeout_millisec, TessResultRenderer* renderer);
262 
263 TESS_API TessResultIterator*
264  TESS_CALL TessBaseAPIGetIterator(TessBaseAPI* handle);
265 TESS_API TessMutableIterator*
266  TESS_CALL TessBaseAPIGetMutableIterator(TessBaseAPI* handle);
267 
268 TESS_API char* TESS_CALL TessBaseAPIGetUTF8Text(TessBaseAPI* handle);
269 TESS_API char* TESS_CALL TessBaseAPIGetHOCRText(TessBaseAPI* handle, int page_number);
270 TESS_API char* TESS_CALL TessBaseAPIGetBoxText(TessBaseAPI* handle, int page_number);
271 TESS_API char* TESS_CALL TessBaseAPIGetUNLVText(TessBaseAPI* handle);
272 TESS_API int TESS_CALL TessBaseAPIMeanTextConf(TessBaseAPI* handle);
273 TESS_API int* TESS_CALL TessBaseAPIAllWordConfidences(TessBaseAPI* handle);
274 TESS_API BOOL TESS_CALL TessBaseAPIAdaptToWordStr(TessBaseAPI* handle, TessPageSegMode mode, const char* wordstr);
275 
276 TESS_API void TESS_CALL TessBaseAPIClear(TessBaseAPI* handle);
277 TESS_API void TESS_CALL TessBaseAPIEnd(TessBaseAPI* handle);
278 
279 TESS_API int TESS_CALL TessBaseAPIIsValidWord(TessBaseAPI* handle, const char* word);
280 TESS_API BOOL TESS_CALL TessBaseAPIGetTextDirection(TessBaseAPI* handle, int* out_offset, float* out_slope);
281 
282 #ifdef TESS_CAPI_INCLUDE_BASEAPI
283 TESS_API void TESS_CALL TessBaseAPISetDictFunc(TessBaseAPI* handle, TessDictFunc f);
284 TESS_API void TESS_CALL TessBaseAPIClearPersistentCache(TessBaseAPI* handle);
285 TESS_API void TESS_CALL TessBaseAPISetProbabilityInContextFunc(TessBaseAPI* handle, TessProbabilityInContextFunc f);
286 
287 TESS_API void TESS_CALL TessBaseAPISetFillLatticeFunc(TessBaseAPI* handle, TessFillLatticeFunc f);
288 
289 // Deprecated, no longer working
290 TESS_API BOOL TESS_CALL TessBaseAPIDetectOS(TessBaseAPI* handle, OSResults* results);
291 
292 // Call TessDeleteText(*best_script_name) to free memory allocated by this function
294  int* orient_deg, float* orient_conf, const char **script_name, float* script_conf);
295 
296 TESS_API void TESS_CALL TessBaseAPIGetFeaturesForBlob(TessBaseAPI* handle, TBLOB* blob, INT_FEATURE_STRUCT* int_features,
297  int* num_features, int* FeatureOutlineIndex);
298 
299 TESS_API ROW* TESS_CALL TessFindRowForBox(BLOCK_LIST* blocks, int left, int top, int right, int bottom);
300 TESS_API void TESS_CALL TessBaseAPIRunAdaptiveClassifier(TessBaseAPI* handle, TBLOB* blob, int num_max_matches,
301  int* unichar_ids, float* ratings, int* num_matches_returned);
302 #endif
303 
304 TESS_API const char*
305  TESS_CALL TessBaseAPIGetUnichar(TessBaseAPI* handle, int unichar_id);
306 
307 #ifdef TESS_CAPI_INCLUDE_BASEAPI
308 TESS_API const TessDawg*
309  TESS_CALL TessBaseAPIGetDawg(const TessBaseAPI* handle, int i);
310 TESS_API int TESS_CALL TessBaseAPINumDawgs(const TessBaseAPI* handle);
311 #endif
312 
313 #ifdef TESS_CAPI_INCLUDE_BASEAPI
314 TESS_API ROW* TESS_CALL TessMakeTessOCRRow(float baseline, float xheight, float descender, float ascender);
316  TESS_CALL TessMakeTBLOB(Pix* pix);
317 TESS_API void TESS_CALL TessNormalizeTBLOB(TBLOB* tblob, ROW* row, BOOL numeric_mode);
318 
319 TESS_API TessOcrEngineMode
320  TESS_CALL TessBaseAPIOem(const TessBaseAPI* handle);
321 TESS_API void TESS_CALL TessBaseAPIInitTruthCallback(TessBaseAPI* handle, TessTruthCallback* cb);
322 
323 #ifndef NO_CUBE_BUILD
324 TESS_API TessCubeRecoContext*
325  TESS_CALL TessBaseAPIGetCubeRecoContext(const TessBaseAPI* handle);
326 #endif // NO_CUBE_BUILD
327 #endif
328 
329 TESS_API void TESS_CALL TessBaseAPISetMinOrientationMargin(TessBaseAPI* handle, double margin);
330 #ifdef TESS_CAPI_INCLUDE_BASEAPI
331 TESS_API void TESS_CALL TessBaseGetBlockTextOrientations(TessBaseAPI* handle, int** block_orientation, BOOL** vertical_writing);
332 
333 TESS_API BLOCK_LIST*
334  TESS_CALL TessBaseAPIFindLinesCreateBlockList(TessBaseAPI* handle);
335 #endif
336 
337 /* Page iterator */
338 
339 TESS_API void TESS_CALL TessPageIteratorDelete(TessPageIterator* handle);
340 TESS_API TessPageIterator*
341  TESS_CALL TessPageIteratorCopy(const TessPageIterator* handle);
342 
343 TESS_API void TESS_CALL TessPageIteratorBegin(TessPageIterator* handle);
344 TESS_API BOOL TESS_CALL TessPageIteratorNext(TessPageIterator* handle, TessPageIteratorLevel level);
345 TESS_API BOOL TESS_CALL TessPageIteratorIsAtBeginningOf(const TessPageIterator* handle, TessPageIteratorLevel level);
346 TESS_API BOOL TESS_CALL TessPageIteratorIsAtFinalElement(const TessPageIterator* handle, TessPageIteratorLevel level,
347  TessPageIteratorLevel element);
348 
349 TESS_API BOOL TESS_CALL TessPageIteratorBoundingBox(const TessPageIterator* handle, TessPageIteratorLevel level,
350  int* left, int* top, int* right, int* bottom);
351 TESS_API TessPolyBlockType
352  TESS_CALL TessPageIteratorBlockType(const TessPageIterator* handle);
353 
354 TESS_API struct Pix*
355  TESS_CALL TessPageIteratorGetBinaryImage(const TessPageIterator* handle, TessPageIteratorLevel level);
356 TESS_API struct Pix*
357  TESS_CALL TessPageIteratorGetImage(const TessPageIterator* handle, TessPageIteratorLevel level, int padding,
358  struct Pix* original_image, int* left, int* top);
359 
360 TESS_API BOOL TESS_CALL TessPageIteratorBaseline(const TessPageIterator* handle, TessPageIteratorLevel level,
361  int* x1, int* y1, int* x2, int* y2);
362 
363 TESS_API void TESS_CALL TessPageIteratorOrientation(TessPageIterator* handle, TessOrientation* orientation,
364  TessWritingDirection* writing_direction, TessTextlineOrder* textline_order,
365  float* deskew_angle);
366 
367 TESS_API void TESS_CALL TessPageIteratorParagraphInfo(TessPageIterator* handle, TessParagraphJustification* justification,
368  BOOL *is_list_item, BOOL *is_crown, int *first_line_indent);
369 
370 /* Result iterator */
371 
372 TESS_API void TESS_CALL TessResultIteratorDelete(TessResultIterator* handle);
373 TESS_API TessResultIterator*
374  TESS_CALL TessResultIteratorCopy(const TessResultIterator* handle);
375 TESS_API TessPageIterator*
376  TESS_CALL TessResultIteratorGetPageIterator(TessResultIterator* handle);
377 TESS_API const TessPageIterator*
378  TESS_CALL TessResultIteratorGetPageIteratorConst(const TessResultIterator* handle);
379 TESS_API TessChoiceIterator*
380  TESS_CALL TessResultIteratorGetChoiceIterator(const TessResultIterator* handle);
381 
382 TESS_API BOOL TESS_CALL TessResultIteratorNext(TessResultIterator* handle, TessPageIteratorLevel level);
383 TESS_API char* TESS_CALL TessResultIteratorGetUTF8Text(const TessResultIterator* handle, TessPageIteratorLevel level);
384 TESS_API float TESS_CALL TessResultIteratorConfidence(const TessResultIterator* handle, TessPageIteratorLevel level);
385 TESS_API const char*
386  TESS_CALL TessResultIteratorWordRecognitionLanguage(const TessResultIterator* handle);
387 TESS_API const char*
388  TESS_CALL TessResultIteratorWordFontAttributes(const TessResultIterator* handle, BOOL* is_bold, BOOL* is_italic,
389  BOOL* is_underlined, BOOL* is_monospace, BOOL* is_serif,
390  BOOL* is_smallcaps, int* pointsize, int* font_id);
391 
392 TESS_API BOOL TESS_CALL TessResultIteratorWordIsFromDictionary(const TessResultIterator* handle);
393 TESS_API BOOL TESS_CALL TessResultIteratorWordIsNumeric(const TessResultIterator* handle);
394 TESS_API BOOL TESS_CALL TessResultIteratorSymbolIsSuperscript(const TessResultIterator* handle);
395 TESS_API BOOL TESS_CALL TessResultIteratorSymbolIsSubscript(const TessResultIterator* handle);
396 TESS_API BOOL TESS_CALL TessResultIteratorSymbolIsDropcap(const TessResultIterator* handle);
397 
398 TESS_API void TESS_CALL TessChoiceIteratorDelete(TessChoiceIterator* handle);
399 TESS_API BOOL TESS_CALL TessChoiceIteratorNext(TessChoiceIterator* handle);
400 TESS_API const char* TESS_CALL TessChoiceIteratorGetUTF8Text(const TessChoiceIterator* handle);
401 TESS_API float TESS_CALL TessChoiceIteratorConfidence(const TessChoiceIterator* handle);
402 
403 #ifdef __cplusplus
404 }
405 #endif
406 
407 #endif // API_CAPI_H_
ParagraphJustification
Definition: publictypes.h:239
TESS_API BOOL TESS_CALL TessBaseAPISetDebugVariable(TessBaseAPI *handle, const char *name, const char *value)
Definition: capi.cpp:182
TessParagraphJustification
Definition: capi.h:100
TESS_API ROW *TESS_CALL TessFindRowForBox(BLOCK_LIST *blocks, int left, int top, int right, int bottom)
Definition: capi.cpp:559
TESS_API BOOL TESS_CALL TessBaseAPIProcessPages(TessBaseAPI *handle, const char *filename, const char *retry_config, int timeout_millisec, TessResultRenderer *renderer)
Definition: capi.cpp:441
TESS_API TessResultRenderer *TESS_CALL TessHOcrRendererCreate(const char *outputbase)
Definition: capi.cpp:57
TESS_API BOOL TESS_CALL TessBaseAPIAdaptToWordStr(TessBaseAPI *handle, TessPageSegMode mode, const char *wordstr)
Definition: capi.cpp:499
TESS_API void TESS_CALL TessBaseAPIPrintVariables(const TessBaseAPI *handle, FILE *fp)
Definition: capi.cpp:216
TESS_API int TESS_CALL TessBaseAPIGetThresholdedImageScaleFactor(const TessBaseAPI *handle)
Definition: capi.cpp:416
TESS_API void TESS_CALL TessBaseAPIClear(TessBaseAPI *handle)
Definition: capi.cpp:504
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:329
TESS_API void TESS_CALL TessBaseAPISetRectangle(TessBaseAPI *handle, int left, int top, int width, int height)
Definition: capi.cpp:357
TessPolyBlockType
Definition: capi.h:96
TESS_API const char *TESS_CALL TessBaseAPIGetUnichar(TessBaseAPI *handle, int unichar_id)
Definition: capi.cpp:570
TESS_API TessPolyBlockType TESS_CALL TessPageIteratorBlockType(const TessPageIterator *handle)
Definition: capi.cpp:669
TESS_API BOOL TESS_CALL TessPageIteratorBaseline(const TessPageIterator *handle, TessPageIteratorLevel level, int *x1, int *y1, int *x2, int *y2)
Definition: capi.cpp:685
struct TessBaseAPI TessBaseAPI
Definition: capi.h:86
TESS_API TessPageIterator *TESS_CALL TessResultIteratorGetPageIterator(TessResultIterator *handle)
Definition: capi.cpp:720
TESS_API void TESS_CALL TessBaseAPIClearAdaptiveClassifier(TessBaseAPI *handle)
Definition: capi.cpp:336
TESS_API void TESS_CALL TessBaseAPISetOutputName(TessBaseAPI *handle, const char *name)
Definition: capi.cpp:172
TESS_API void TESS_CALL TessBaseAPISetPageSegMode(TessBaseAPI *handle, TessPageSegMode mode)
Definition: capi.cpp:319
TESS_API struct Boxa *TESS_CALL TessBaseAPIGetConnectedComponents(TessBaseAPI *handle, struct Pixa **cc)
Definition: capi.cpp:398
TESS_API BLOCK_LIST *TESS_CALL TessBaseAPIFindLinesCreateBlockList(TessBaseAPI *handle)
Definition: capi.cpp:627
struct TessPageIterator TessPageIterator
Definition: capi.h:87
TESS_API const char *TESS_CALL TessResultRendererTitle(TessResultRenderer *renderer)
Definition: capi.cpp:117
TESS_API BOOL TESS_CALL TessResultIteratorNext(TessResultIterator *handle, TessPageIteratorLevel level)
Definition: capi.cpp:735
Definition: capi.h:95
TESS_API BOOL TESS_CALL TessResultIteratorSymbolIsSuperscript(const TessResultIterator *handle)
Definition: capi.cpp:787
TESS_API void TESS_CALL TessBaseAPIGetFeaturesForBlob(TessBaseAPI *handle, TBLOB *blob, INT_FEATURE_STRUCT *int_features, int *num_features, int *FeatureOutlineIndex)
Definition: capi.cpp:553
TESS_API const TessPageIterator *TESS_CALL TessResultIteratorGetPageIteratorConst(const TessResultIterator *handle)
Definition: capi.cpp:725
struct TessBoxTextRenderer TessBoxTextRenderer
Definition: capi.h:85
Definition: strngs.h:44
TESS_API int TESS_CALL TessBaseAPIIsValidWord(TessBaseAPI *handle, const char *word)
Definition: capi.cpp:514
TESS_API TessResultIterator *TESS_CALL TessBaseAPIGetIterator(TessBaseAPI *handle)
Definition: capi.cpp:459
TESS_API void TESS_CALL TessBaseAPIReadDebugConfigFile(TessBaseAPI *handle, const char *filename)
Definition: capi.cpp:314
TESS_API BOOL TESS_CALL TessBaseAPISetVariable(TessBaseAPI *handle, const char *name, const char *value)
Definition: capi.cpp:177
TESS_API const char *TESS_CALL TessBaseAPIGetDatapath(TessBaseAPI *handle)
Definition: capi.cpp:167
struct TessHOcrRenderer TessHOcrRenderer
Definition: capi.h:82
TESS_API void TESS_CALL TessBaseAPIDelete(TessBaseAPI *handle)
Definition: capi.cpp:132
TESS_API int TESS_CALL TessBaseAPIMeanTextConf(TessBaseAPI *handle)
Definition: capi.cpp:489
TESS_API BOOL TESS_CALL TessBaseAPIGetDoubleVariable(const TessBaseAPI *handle, const char *name, double *value)
Definition: capi.cpp:206
TessOcrEngineMode
Definition: capi.h:91
TESS_API void TESS_CALL TessBaseAPISetImage2(TessBaseAPI *handle, struct Pix *pix)
Definition: capi.cpp:347
TESS_API int TESS_CALL TessBaseAPIRecognizeForChopTest(TessBaseAPI *handle, ETEXT_DESC *monitor)
Definition: capi.cpp:436
TESS_API TessResultRenderer *TESS_CALL TessBoxTextRendererCreate(const char *outputbase)
Definition: capi.cpp:77
Definition: ocrrow.h:32
TESS_API TessMutableIterator *TESS_CALL TessBaseAPIGetMutableIterator(TessBaseAPI *handle)
Definition: capi.cpp:464
TESS_API int TESS_CALL TessResultRendererImageNum(TessResultRenderer *renderer)
Definition: capi.cpp:122
TESS_API int TESS_CALL TessBaseAPIInit2(TessBaseAPI *handle, const char *datapath, const char *language, TessOcrEngineMode oem)
Definition: capi.cpp:262
TESS_API char *TESS_CALL TessBaseAPIGetHOCRText(TessBaseAPI *handle, int page_number)
Definition: capi.cpp:474
struct TessPDFRenderer TessPDFRenderer
Definition: capi.h:83
TESS_API const char *TESS_CALL TessResultIteratorWordRecognitionLanguage(const TessResultIterator *handle)
Definition: capi.cpp:750
TESS_API char *TESS_CALL TessBaseAPIGetUNLVText(TessBaseAPI *handle)
Definition: capi.cpp:484
TESS_API BOOL TESS_CALL TessResultIteratorSymbolIsDropcap(const TessResultIterator *handle)
Definition: capi.cpp:797
TESS_API BOOL TESS_CALL TessBaseAPIGetVariableAsString(TessBaseAPI *handle, const char *name, STRING *val)
Definition: capi.cpp:233
Definition: capi.h:95
TESS_API BOOL TESS_CALL TessResultRendererBeginDocument(TessResultRenderer *renderer, const char *title)
Definition: capi.cpp:97
TESS_API ROW *TESS_CALL TessMakeTessOCRRow(float baseline, float xheight, float descender, float ascender)
Definition: capi.cpp:585
PolyBlockType
Definition: publictypes.h:41
TESS_API void TESS_CALL TessDeleteText(char *text)
Definition: capi.cpp:30
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:341
TESS_API BOOL TESS_CALL TessBaseAPIGetIntVariable(const TessBaseAPI *handle, const char *name, int *value)
Definition: capi.cpp:187
TESS_API float TESS_CALL TessChoiceIteratorConfidence(const TessChoiceIterator *handle)
Definition: capi.cpp:817
TESS_API BOOL TESS_CALL TessBaseAPIGetBoolVariable(const TessBaseAPI *handle, const char *name, BOOL *value)
Definition: capi.cpp:192
TESS_API void TESS_CALL TessPageIteratorDelete(TessPageIterator *handle)
Definition: capi.cpp:632
TESS_API TessResultRenderer *TESS_CALL TessUnlvRendererCreate(const char *outputbase)
Definition: capi.cpp:72
TESS_API void TESS_CALL TessPageIteratorOrientation(TessPageIterator *handle, TessOrientation *orientation, TessWritingDirection *writing_direction, TessTextlineOrder *textline_order, float *deskew_angle)
Definition: capi.cpp:691
TESS_API void TESS_CALL TessResultIteratorDelete(TessResultIterator *handle)
Definition: capi.cpp:710
TESS_API BOOL TESS_CALL TessPageIteratorBoundingBox(const TessPageIterator *handle, TessPageIteratorLevel level, int *left, int *top, int *right, int *bottom)
Definition: capi.cpp:663
TESS_API void TESS_CALL TessPageIteratorParagraphInfo(TessPageIterator *handle, TessParagraphJustification *justification, BOOL *is_list_item, BOOL *is_crown, int *first_line_indent)
Definition: capi.cpp:698
TESS_API size_t TESS_CALL TessBaseAPIGetOpenCLDevice(TessBaseAPI *handle, void **device)
Definition: capi.cpp:137
TESS_API BOOL TESS_CALL TessPageIteratorNext(TessPageIterator *handle, TessPageIteratorLevel level)
Definition: capi.cpp:647
TESS_API BOOL TESS_CALL TessResultIteratorWordIsFromDictionary(const TessResultIterator *handle)
Definition: capi.cpp:777
Definition: capi.h:98
TESS_API void TESS_CALL TessChoiceIteratorDelete(TessChoiceIterator *handle)
Definition: capi.cpp:802
struct TessUnlvRenderer TessUnlvRenderer
Definition: capi.h:84
Definition: capi.h:92
TESS_API TessChoiceIterator *TESS_CALL TessResultIteratorGetChoiceIterator(const TessResultIterator *handle)
Definition: capi.cpp:730
TESS_API const char *TESS_CALL TessChoiceIteratorGetUTF8Text(const TessChoiceIterator *handle)
Definition: capi.cpp:812
double(Dict::* ProbabilityInContextFunc)(const char *lang, const char *context, int context_bytes, const char *character, int character_bytes)
Definition: baseapi.h:85
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:755
TESS_API struct Pix *TESS_CALL TessBaseAPIGetThresholdedImage(TessBaseAPI *handle)
Definition: capi.cpp:367
TESS_API TessBaseAPI *TESS_CALL TessBaseAPICreate()
Definition: capi.cpp:127
int(Dict::* DictFunc)(void *void_dawg_args, UNICHAR_ID unichar_id, bool word_end) const
Definition: baseapi.h:83
TESS_API BOOL TESS_CALL TessResultIteratorSymbolIsSubscript(const TessResultIterator *handle)
Definition: capi.cpp:792
TESS_API struct Boxa *TESS_CALL TessBaseAPIGetTextlines(TessBaseAPI *handle, struct Pixa **pixa, int **blockids)
Definition: capi.cpp:377
TESS_API struct Boxa *TESS_CALL TessBaseAPIGetTextlines1(TessBaseAPI *handle, const BOOL raw_image, const int raw_padding, struct Pixa **pixa, int **blockids, int **paraids)
Definition: capi.cpp:382
TessTextlineOrder
Definition: capi.h:102
TESS_API int *TESS_CALL TessBaseAPIAllWordConfidences(TessBaseAPI *handle)
Definition: capi.cpp:494
TESS_API void TESS_CALL TessBaseAPISetInputName(TessBaseAPI *handle, const char *name)
Definition: capi.cpp:142
TESS_API int TESS_CALL TessBaseAPIGetSourceYResolution(TessBaseAPI *handle)
Definition: capi.cpp:162
TESS_API TessPageIterator *TESS_CALL TessBaseAPIAnalyseLayout(TessBaseAPI *handle)
Definition: capi.cpp:426
CMD_EVENTS mode
Definition: pgedit.cpp:116
#define TESS_CALL
Definition: capi.h:39
TESS_API void TESS_CALL TessBaseGetBlockTextOrientations(TessBaseAPI *handle, int **block_orientation, bool **vertical_writing)
Definition: capi.cpp:622
TESS_API int TESS_CALL TessBaseAPINumDawgs(const TessBaseAPI *handle)
Definition: capi.cpp:580
TESS_API void TESS_CALL TessDeleteResultRenderer(TessResultRenderer *renderer)
Definition: capi.cpp:82
TESS_API void TESS_CALL TessBaseAPIReadConfigFile(TessBaseAPI *handle, const char *filename)
Definition: capi.cpp:309
TESS_API const char *TESS_CALL TessResultRendererExtention(TessResultRenderer *renderer)
Definition: capi.cpp:112
TESS_API void TESS_CALL TessBaseAPISetMinOrientationMargin(TessBaseAPI *handle, double margin)
Definition: capi.cpp:617
TESS_API int TESS_CALL TessBaseAPIInitLangMod(TessBaseAPI *handle, const char *datapath, const char *language)
Definition: capi.cpp:299
TessPageIteratorLevel
Definition: capi.h:95
Definition: capi.h:97
TESS_API TessCubeRecoContext *TESS_CALL TessBaseAPIGetCubeRecoContext(const TessBaseAPI *handle)
Definition: capi.cpp:611
TESS_API BOOL TESS_CALL TessBaseAPIPrintVariablesToFile(const TessBaseAPI *handle, const char *filename)
Definition: capi.cpp:221
TESS_API const char *TESS_CALL TessBaseAPIGetStringVariable(const TessBaseAPI *handle, const char *name)
Definition: capi.cpp:211
TESS_API BOOL TESS_CALL TessResultRendererAddImage(TessResultRenderer *renderer, TessBaseAPI *api)
Definition: capi.cpp:102
struct TessChoiceIterator TessChoiceIterator
Definition: capi.h:90
TESS_API TessResultIterator *TESS_CALL TessResultIteratorCopy(const TessResultIterator *handle)
Definition: capi.cpp:715
struct TessResultIterator TessResultIterator
Definition: capi.h:88
Definition: capi.h:95
struct TessResultRenderer TessResultRenderer
Definition: capi.h:80
Definition: capi.h:98
Definition: capi.h:94
TESS_API const char *TESS_CALL TessBaseAPIGetInputName(TessBaseAPI *handle)
Definition: capi.cpp:147
TESS_API void TESS_CALL TessDeleteBlockList(BLOCK_LIST *block_list)
Definition: capi.cpp:47
TESS_API void TESS_CALL TessBaseAPIInitForAnalysePage(TessBaseAPI *handle)
Definition: capi.cpp:304
TESS_API char **TESS_CALL TessBaseAPIGetLoadedLanguagesAsVector(const TessBaseAPI *handle)
Definition: capi.cpp:277
TESS_API int TESS_CALL TessBaseAPIInit3(TessBaseAPI *handle, const char *datapath, const char *language)
Definition: capi.cpp:267
TESS_API char *TESS_CALL TessBaseAPIGetBoxText(TessBaseAPI *handle, int page_number)
Definition: capi.cpp:479
TESS_API struct Boxa *TESS_CALL TessBaseAPIGetRegions(TessBaseAPI *handle, struct Pixa **pixa)
Definition: capi.cpp:372
TESS_API TBLOB *TESS_CALL TessMakeTBLOB(struct Pix *pix)
Definition: capi.cpp:590
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:450
TESS_API TessOcrEngineMode TESS_CALL TessBaseAPIOem(const TessBaseAPI *handle)
Definition: capi.cpp:600
TESS_API const char *TESS_CALL TessBaseAPIGetInitLanguagesAsString(const TessBaseAPI *handle)
Definition: capi.cpp:272
TESS_API TessResultRenderer *TESS_CALL TessTextRendererCreate(const char *outputbase)
Definition: capi.cpp:52
struct TessMutableIterator TessMutableIterator
Definition: capi.h:89
TESS_API void TESS_CALL TessDeleteTextArray(char **arr)
Definition: capi.cpp:35
TESS_API struct Boxa *TESS_CALL TessBaseAPIGetComponentImages1(TessBaseAPI *handle, const TessPageIteratorLevel level, const BOOL text_only, const BOOL raw_image, const int raw_padding, struct Pixa **pixa, int **blockids, int **paraids)
Definition: capi.cpp:409
TESS_API char *TESS_CALL TessResultIteratorGetUTF8Text(const TessResultIterator *handle, TessPageIteratorLevel level)
Definition: capi.cpp:740
TESS_API struct Pix *TESS_CALL TessBaseAPIGetInputImage(TessBaseAPI *handle)
Definition: capi.cpp:157
TESS_API void TESS_CALL TessBaseAPISetInputImage(TessBaseAPI *handle, struct Pix *pix)
Definition: capi.cpp:152
TESS_API void TESS_CALL TessNormalizeTBLOB(TBLOB *tblob, ROW *row, BOOL numeric_mode)
Definition: capi.cpp:595
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:564
TESS_API void TESS_CALL TessBaseAPISetThresholder(TessBaseAPI *handle, TessImageThresholder *thresholder)
Definition: capi.cpp:362
TESS_API struct Boxa *TESS_CALL TessBaseAPIGetWords(TessBaseAPI *handle, struct Pixa **pixa)
Definition: capi.cpp:393
TESS_API void TESS_CALL TessBaseAPIClearPersistentCache(TessBaseAPI *handle)
Definition: capi.cpp:529
TESS_API BOOL TESS_CALL TessPageIteratorIsAtFinalElement(const TessPageIterator *handle, TessPageIteratorLevel level, TessPageIteratorLevel element)
Definition: capi.cpp:657
TESS_API void TESS_CALL TessBaseAPIDumpPGM(TessBaseAPI *handle, const char *filename)
Definition: capi.cpp:421
TESS_API void TESS_CALL TessBaseAPISetProbabilityInContextFunc(TessBaseAPI *handle, TessProbabilityInContextFunc f)
Definition: capi.cpp:534
TESS_API TessResultRenderer *TESS_CALL TessHOcrRendererCreate2(const char *outputbase, BOOL font_info)
Definition: capi.cpp:62
TESS_API BOOL TESS_CALL TessResultIteratorWordIsNumeric(const TessResultIterator *handle)
Definition: capi.cpp:782
TESS_API void TESS_CALL TessPageIteratorBegin(TessPageIterator *handle)
Definition: capi.cpp:642
TESS_API TessPageIterator *TESS_CALL TessPageIteratorCopy(const TessPageIterator *handle)
Definition: capi.cpp:637
TESS_API TessResultRenderer *TESS_CALL TessPDFRendererCreate(const char *outputbase, const char *datadir)
Definition: capi.cpp:67
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:238
TESS_API int TESS_CALL TessBaseAPIInit1(TessBaseAPI *handle, const char *datapath, const char *language, TessOcrEngineMode oem, char **configs, int configs_size)
Definition: capi.cpp:256
TESS_API void TESS_CALL TessDeleteIntArray(int *arr)
Definition: capi.cpp:42
TESS_API TessResultRenderer *TESS_CALL TessResultRendererNext(TessResultRenderer *renderer)
Definition: capi.cpp:92
TESS_API struct Boxa *TESS_CALL TessBaseAPIGetComponentImages(TessBaseAPI *handle, const TessPageIteratorLevel level, const BOOL text_only, struct Pixa **pixa, int **blockids)
Definition: capi.cpp:403
TESS_API void TESS_CALL TessBaseAPIInitTruthCallback(TessBaseAPI *handle, TessTruthCallback *cb)
Definition: capi.cpp:605
TESS_API TessPageSegMode TESS_CALL TessBaseAPIGetPageSegMode(const TessBaseAPI *handle)
Definition: capi.cpp:324
TESS_API void TESS_CALL TessBaseAPISetSourceResolution(TessBaseAPI *handle, int ppi)
Definition: capi.cpp:352
TESS_API BOOL TESS_CALL TessBaseAPIDetectOS(TessBaseAPI *handle, OSResults *results)
Definition: capi.cpp:539
#define BOOL
Definition: capi.h:44
TESS_API struct Boxa *TESS_CALL TessBaseAPIGetStrips(TessBaseAPI *handle, struct Pixa **pixa, int **blockids)
Definition: capi.cpp:388
Definition: blobs.h:261
TessWritingDirection
Definition: capi.h:101
TESS_API BOOL TESS_CALL TessChoiceIteratorNext(TessChoiceIterator *handle)
Definition: capi.cpp:807
struct TessTextRenderer TessTextRenderer
Definition: capi.h:81
TESS_API void TESS_CALL TessBaseAPISetDictFunc(TessBaseAPI *handle, TessDictFunc f)
Definition: capi.cpp:524
TESS_API const char *TESS_CALL TessVersion()
Definition: capi.cpp:25
TESS_API BOOL TESS_CALL TessResultRendererEndDocument(TessResultRenderer *renderer)
Definition: capi.cpp:107
TessPageSegMode
Definition: capi.h:92
TESS_API int TESS_CALL TessBaseAPIRecognize(TessBaseAPI *handle, ETEXT_DESC *monitor)
Definition: capi.cpp:431
TESS_API BOOL TESS_CALL TessPageIteratorIsAtBeginningOf(const TessPageIterator *handle, TessPageIteratorLevel level)
Definition: capi.cpp:652
TESS_API void TESS_CALL TessResultRendererInsert(TessResultRenderer *renderer, TessResultRenderer *next)
Definition: capi.cpp:87
TESS_API BOOL TESS_CALL TessBaseAPIDetectOrientationScript(TessBaseAPI *handle, int *orient_deg, float *orient_conf, const char **script_name, float *script_conf)
Definition: capi.cpp:544
TessOrientation
Definition: capi.h:99
TESS_API const TessDawg *TESS_CALL TessBaseAPIGetDawg(const TessBaseAPI *handle, int i)
Definition: capi.cpp:575
TESS_API BOOL TESS_CALL TessBaseAPIGetTextDirection(TessBaseAPI *handle, int *out_offset, float *out_slope)
Definition: capi.cpp:519
TESS_API char *TESS_CALL TessBaseAPIGetUTF8Text(TessBaseAPI *handle)
Definition: capi.cpp:469
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:679
TESS_API struct Pix *TESS_CALL TessPageIteratorGetBinaryImage(const TessPageIterator *handle, TessPageIteratorLevel level)
Definition: capi.cpp:674
TESS_API char **TESS_CALL TessBaseAPIGetAvailableLanguagesAsVector(const TessBaseAPI *handle)
Definition: capi.cpp:288
TESS_API void TESS_CALL TessBaseAPIEnd(TessBaseAPI *handle)
Definition: capi.cpp:509
void(Wordrec::* FillLatticeFunc)(const MATRIX &ratings, const WERD_CHOICE_LIST &best_choices, const UNICHARSET &unicharset, BlamerBundle *blamer_bundle)
Definition: baseapi.h:92
#define TESS_API
Definition: platform.h:79
TESS_API float TESS_CALL TessResultIteratorConfidence(const TessResultIterator *handle, TessPageIteratorLevel level)
Definition: capi.cpp:745