2
2
Copyright (c) 1993-2008, Cognitive Technologies
5
����������� ��������� ��������������� � ������������� ��� � ���� ��������� ����,
6
��� � � �������� �����, � ����������� ��� ���, ��� ���������� ��������� �������:
8
* ��� ��������� ��������������� ��������� ���� ������ ���������� ���������
9
���� ����������� �� ��������� �����, ���� ������ ������� � �����������
11
* ��� ��������� ��������������� ��������� ���� � ������������ �/��� �
12
������ ����������, ������������ ��� ���������������, ������ �����������
13
��������� ���� ���������� �� ��������� �����, ���� ������ ������� �
14
����������� ����� �� ��������.
15
* �� �������� Cognitive Technologies, �� ����� �� ����������� �� �����
16
���� ������������ � �������� �������� ��������� �/��� �����������
17
���������, ���������� �� ���� ��, ��� ���������������� �����������
20
��� ��������� ������������� ����������� ��������� ���� �/��� ������� ������ "���
21
��� ����" ��� ������-���� ���� ��������, ���������� ���� ��� ���������������,
22
������� �������� ������������ �������� � ����������� ��� ���������� ����, �� ��
23
������������� ���. �� �������� ��������� ���� � �� ���� ������ ����, �������
24
����� �������� �/��� �������� �������������� ���������, �� � ���� ������ ��
25
��Ѩ� ���������������, ������� ����� �����, ���������, ����������� ���
26
������������� ������, ��������� � �������������� ��� ���������� ����������
27
������������� ������������� ��������� (������� ������ ������, ��� ������,
28
������� ���������, ��� ������ �/��� ������ �������, ���������� ��-�� ��������
29
������� ��� �/��� ������ ��������� �������� ��������� � ������� �����������,
30
�� �� ������������� ����� ��������), �� �� ������������� ���, ���� ���� �����
31
�������� ��� ������ ���� ���� �������� � ����������� ����� ������� � ������.
5
Разрешается повторное распространение и использование как в виде исходного кода,
6
так и в двоичной форме, с изменениями или без, при соблюдении следующих условий:
8
* При повторном распространении исходного кода должны оставаться указанное
9
выше уведомление об авторском праве, этот список условий и последующий
11
* При повторном распространении двоичного кода в документации и/или в
12
других материалах, поставляемых при распространении, должны сохраняться
13
указанная выше информация об авторском праве, этот список условий и
14
последующий отказ от гарантий.
15
* Ни название Cognitive Technologies, ни имена ее сотрудников не могут
16
быть использованы в качестве средства поддержки и/или продвижения
17
продуктов, основанных на этом ПО, без предварительного письменного
20
ЭТА ПРОГРАММА ПРЕДОСТАВЛЕНА ВЛАДЕЛЬЦАМИ АВТОРСКИХ ПРАВ И/ИЛИ ДРУГИМИ ЛИЦАМИ "КАК
21
ОНА ЕСТЬ" БЕЗ КАКОГО-ЛИБО ВИДА ГАРАНТИЙ, ВЫРАЖЕННЫХ ЯВНО ИЛИ ПОДРАЗУМЕВАЕМЫХ,
22
ВКЛЮЧАЯ ГАРАНТИИ КОММЕРЧЕСКОЙ ЦЕННОСТИ И ПРИГОДНОСТИ ДЛЯ КОНКРЕТНОЙ ЦЕЛИ, НО НЕ
23
ОГРАНИЧИВАЯСЬ ИМИ. НИ ВЛАДЕЛЕЦ АВТОРСКИХ ПРАВ И НИ ОДНО ДРУГОЕ ЛИЦО, КОТОРОЕ
24
МОЖЕТ ИЗМЕНЯТЬ И/ИЛИ ПОВТОРНО РАСПРОСТРАНЯТЬ ПРОГРАММУ, НИ В КОЕМ СЛУЧАЕ НЕ
25
НЕСЁТ ОТВЕТСТВЕННОСТИ, ВКЛЮЧАЯ ЛЮБЫЕ ОБЩИЕ, СЛУЧАЙНЫЕ, СПЕЦИАЛЬНЫЕ ИЛИ
26
ПОСЛЕДОВАВШИЕ УБЫТКИ, СВЯЗАННЫЕ С ИСПОЛЬЗОВАНИЕМ ИЛИ ПОНЕСЕННЫЕ ВСЛЕДСТВИЕ
27
НЕВОЗМОЖНОСТИ ИСПОЛЬЗОВАНИЯ ПРОГРАММЫ (ВКЛЮЧАЯ ПОТЕРИ ДАННЫХ, ИЛИ ДАННЫЕ,
28
СТАВШИЕ НЕГОДНЫМИ, ИЛИ УБЫТКИ И/ИЛИ ПОТЕРИ ДОХОДОВ, ПОНЕСЕННЫЕ ИЗ-ЗА ДЕЙСТВИЙ
29
ТРЕТЬИХ ЛИЦ И/ИЛИ ОТКАЗА ПРОГРАММЫ РАБОТАТЬ СОВМЕСТНО С ДРУГИМИ ПРОГРАММАМИ,
30
НО НЕ ОГРАНИЧИВАЯСЬ ЭТИМИ СЛУЧАЯМИ), НО НЕ ОГРАНИЧИВАЯСЬ ИМИ, ДАЖЕ ЕСЛИ ТАКОЙ
31
ВЛАДЕЛЕЦ ИЛИ ДРУГОЕ ЛИЦО БЫЛИ ИЗВЕЩЕНЫ О ВОЗМОЖНОСТИ ТАКИХ УБЫТКОВ И ПОТЕРЬ.
33
33
Redistribution and use in source and binary forms, with or without modification,
34
34
are permitted provided that the following conditions are met:
57
57
#include <stdlib.h>
61
59
#include <string.h>
66
// ���������� � �����������/�������� ����� - �� first �� last,
67
// ��������� ��������� � lineFon
68
Int32 my_p2_RecogCutGlu( CSTR_rast first,CSTR_rast last, CSTR_line lineFon,
64
// распознать с разрезанием/склейкой кусок - от first до last,
65
// результат поместить в lineFon
66
int32_t my_p2_RecogCutGlu( CSTR_rast first,CSTR_rast last, CSTR_line lineFon,
72
70
//////////////////////
73
// ���������� �������, �������������
71
// допустимые символы, перекодировка
74
72
void my_p2_SetP2Alphabet(int lang,char *alf)
79
BYTE my_p2_GetCodePage(int lang){return 0;};
77
uchar my_p2_GetCodePage(int lang){return 0;};
80
78
void my_p2_DecodeCode(char *pCode,int let){return;};
83
BOOL my_NoStopSnapLEO(void){return FALSE;};
84
Bool16 my_snap_monitor_ori(CSTR_line *snap_line, Int32 num_lines){return FALSE;};
85
Bool16 my_snap_activity(Word8 a){return FALSE;};
86
Bool16 my_snap_show_text(Word8 *txt){return FALSE;};
81
Bool my_NoStopSnapLEO(void){return FALSE;};
82
Bool16 my_snap_monitor_ori(CSTR_line *snap_line, int32_t num_lines){return FALSE;};
83
Bool16 my_snap_activity(uchar a){return FALSE;};
84
Bool16 my_snap_show_text(uchar *txt){return FALSE;};
88
Bool32 mySetupField(void *letInfo,Int32 nFont,void *info) {return FALSE;};
86
Bool32 mySetupField(void *letInfo,int32_t nFont,void *info) {return FALSE;};
89
87
Bool32 mySetupPage(void *info) {return FALSE;};
90
88
Bool32 mySpecRecog(RecObject *ro) {return FALSE;};
92
// �������� �� �������
93
BOOL my_p2_spell(PCHAR s,BYTE lang) {return FALSE;};
90
// проверка по словарю
91
Bool my_p2_spell(pchar s,uchar lang) {return FALSE;};
95
93
///////////////////////////////
96
// ���������� � �����������/�������� ����� - �� first �� last,
97
// ��������� ��������� � lineFon
98
Int32 (*RSTR_p2_RecogCutGlu)( CSTR_rast first,CSTR_rast last, CSTR_line lineFon,
94
// распознать с разрезанием/склейкой кусок - от first до last,
95
// результат поместить в lineFon
96
int32_t (*RSTR_p2_RecogCutGlu)( CSTR_rast first,CSTR_rast last, CSTR_line lineFon,
100
98
my_p2_RecogCutGlu;
102
100
//////////////////////
103
// ���������� �������, �������������
101
// допустимые символы, перекодировка
104
102
void (*RSTR_p2_SetP2Alphabet)(int lang,char *alf)=my_p2_SetP2Alphabet;
105
BYTE (*RSTR_p2_GetCodePage)(int lang)=my_p2_GetCodePage;
103
uchar (*RSTR_p2_GetCodePage)(int lang)=my_p2_GetCodePage;
106
104
void (*RSTR_p2_DecodeCode)(char *pCode,int let)=my_p2_DecodeCode;
107
105
//////////////////
109
BOOL (*RSTR_p2_NoStopSnapLEO)(void)=my_NoStopSnapLEO;
110
Bool16 (*RSTR_p2_snap_monitor_ori)(CSTR_line *snap_line, Int32 num_lines)=my_snap_monitor_ori;
111
Bool16 (*RSTR_p2_snap_activity)(Word8 a)=my_snap_activity;
112
Bool16 (*RSTR_p2_snap_show_text)(Word8 *txt)=my_snap_show_text;
107
Bool (*RSTR_p2_NoStopSnapLEO)(void)=my_NoStopSnapLEO;
108
Bool16 (*RSTR_p2_snap_monitor_ori)(CSTR_line *snap_line, int32_t num_lines)=my_snap_monitor_ori;
109
Bool16 (*RSTR_p2_snap_activity)(uchar a)=my_snap_activity;
110
Bool16 (*RSTR_p2_snap_show_text)(uchar *txt)=my_snap_show_text;
114
// �������� �� �������
115
BOOL (*RSTR_p2_spell)(PCHAR s,BYTE lang)=my_p2_spell;
112
// проверка по словарю
113
Bool (*RSTR_p2_spell)(pchar s,uchar lang)=my_p2_spell;
117
// �������������� ������������� (LEO)
118
Bool32 (*ADDREC_SetupField)(void *letInfo,Int32 nFont,void* fontInfo)=mySetupField;
115
// дополнительное распознавание (LEO)
116
Bool32 (*ADDREC_SetupField)(void *letInfo,int32_t nFont,void* fontInfo)=mySetupField;
119
117
Bool32 (*ADDREC_SetupPage)(void *info)=mySetupPage;
120
118
Bool32 (*ADDREC_Recog)(RecObject* obj)=mySpecRecog;
123
//Word8 spec_camera=0;
121
//uchar spec_camera=0;
125
123
P2_FUNC(void) P2_SetRSTR( Handle RecogCutGlu,
126
124
Handle setAlpha,Handle GetPage,Handle Decode,