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:
99
99
// LDPUMA_Registry(&hDebugLayout,SNAP_ROOT_LAYOUT,NULL);
100
100
LDPUMA_Registry(&hDebugLayout,SNAP_LAYOUT_LAYOUT,NULL);
101
//End of Almi 05.12.00; �� ������ ���������, �� � ��� �����; (�� ���� ��� ˸��)
102
LDPUMA_RegVariable(hDebugLayout,"���������� ������� �������.",&layout,"unsigned char");
103
LDPUMA_RegistryHelp(hDebugLayout,"� ���������� ����� ���������� �������� ������ \
104
������� �� 1 �� 4",TRUE);
101
//End of Almi 05.12.00; не вполне правильно, но и так сойдёт; (не прав был Лёха)
102
LDPUMA_RegVariable(hDebugLayout,"Установить уровень отладки.",&layout,"unsigned char");
103
LDPUMA_RegistryHelp(hDebugLayout,"В переменных можно установить значение уровня \
104
отладки от 1 до 4",TRUE);
106
LDPUMA_RegVariable(hDebugLayout,"����������� ��� ��������� ���������� * 2.",
106
LDPUMA_RegVariable(hDebugLayout,"Коэффициент для выделения заголовков * 2.",
107
107
&ZagolovokBreakingCoeff,"unsigned int");
108
108
//LDPUMA_RegistryHelp(hDebugLayout,"rrrrrrrrrrrrr",TRUE);
111
LDPUMA_Registry(&hDebugCancelGreatComp,"�������� ������� ����������",hDebugLayout);
112
LDPUMA_RegistryHelp(hDebugCancelGreatComp,"������� ���������� �� ����� ������������ \
113
�������������.",FALSE);
115
LDPUMA_Registry(&hDebugCancelPicturesAndTables,"�������� �������� � �������",hDebugLayout);
116
LDPUMA_RegistryHelp(hDebugCancelPicturesAndTables,"���������� ������ � \
117
���������� � ������������",FALSE);
120
LDPUMA_Registry(&hShowAlgoritm,"������ ���������",hDebugLayout);
121
LDPUMA_RegistryHelp(hShowAlgoritm,"�������� �������� ������ �������������. \
122
���� ��� ������ �� ����� ����������",FALSE);
111
LDPUMA_Registry(&hDebugCancelGreatComp,"Отменить большие компоненты",hDebugLayout);
112
LDPUMA_RegistryHelp(hDebugCancelGreatComp,"Большие компоненты не будут передаваться \
113
фрагментатору.",FALSE);
115
LDPUMA_Registry(&hDebugCancelPicturesAndTables,"Отменить картинки и таблицы",hDebugLayout);
116
LDPUMA_RegistryHelp(hDebugCancelPicturesAndTables,"Пропустить работу с \
117
картинками и таблиблицами",FALSE);
120
LDPUMA_Registry(&hShowAlgoritm,"Работа алгоритма",hDebugLayout);
121
LDPUMA_RegistryHelp(hShowAlgoritm,"Показать детально работу фрагментатора. \
122
Сама эта кнопка не несет информации",FALSE);
127
LDPUMA_Registry(&hAlgoritmWork,"������ ���������",hDebugLayout);
128
LDPUMA_RegistryHelp(hAlgoritmWork,"���������� ������� �������������.",FALSE);
132
LDPUMA_Registry(&hNotWholeLine,"�������� ���������� ����� �� �������� ������.",hAlgoritmWork);
133
LDPUMA_RegistryHelp(hNotWholeLine,"�������� ���������� ����� �� �������� ������.",FALSE);
135
LDPUMA_Registry(&hNotUseAntonCross,"�������� �������� ����������� ������������ ���������.",hAlgoritmWork);
136
LDPUMA_RegistryHelp(hNotUseAntonCross,"�������� ������������ ������� �������� ����������� ������������ ���������.",FALSE);
138
LDPUMA_Registry(&hHystogramNull,"�������� ��������� ����. ���������.",hAlgoritmWork);
139
LDPUMA_RegistryHelp(hHystogramNull,"�������� ��������� ��������� � ������������ \
140
������������, (�������� � ������ ������ ��� ��������� ������� ��������������� ���������).",FALSE);
127
LDPUMA_Registry(&hAlgoritmWork,"Работа алгоритма",hDebugLayout);
128
LDPUMA_RegistryHelp(hAlgoritmWork,"Управление работой фрагментатора.",FALSE);
132
LDPUMA_Registry(&hNotWholeLine,"Отменить разрезание блока по неполной линиии.",hAlgoritmWork);
133
LDPUMA_RegistryHelp(hNotWholeLine,"Отменить разрезание блока по неполной линиии.",FALSE);
135
LDPUMA_Registry(&hNotUseAntonCross,"Отменить алгоритм определения вставляемого фрагмента.",hAlgoritmWork);
136
LDPUMA_RegistryHelp(hNotUseAntonCross,"Отменить предложенный Антоном алгоритм определения вставляемого фрагмента.",FALSE);
138
LDPUMA_Registry(&hHystogramNull,"Отменить обнуление верт. гистограм.",hAlgoritmWork);
139
LDPUMA_RegistryHelp(hHystogramNull,"Отменить обнуление минимумов в вертикальных \
140
гистограммах, (например в случае текста под картинкой посреди двухколончатого фрагмента).",FALSE);
142
142
//George, 12.11.01 (dd.mm.yy)
143
LDPUMA_Registry(&hSetTrivAverHeight,"����������� ���������� nAverageHeight",hAlgoritmWork);
144
LDPUMA_RegistryHelp(hSetTrivAverHeight,"�������� ���������� �������� � ���� nAverageHeight " \
145
"�� ����������� (�������) ������� ���������� ��������",FALSE);
148
LDPUMA_Registry(&hPageBeforeEditing,"�������� ����� �������",hDebugLayout);
149
LDPUMA_RegistryHelp(hPageBeforeEditing,"���������� ���������� �� �������� \
150
����� ������� ������",FALSE);
152
LDPUMA_Registry(&hPageMatrix,"���������� PageMatrix",hDebugLayout);
153
LDPUMA_RegistryHelp(hPageMatrix,"���������� ������� ���������� PageMatrix \
154
(������� ��������)",FALSE);
156
LDPUMA_Registry(&hInitialBreaking,"��������� ���������",hDebugLayout);
157
LDPUMA_RegistryHelp(hInitialBreaking,"���������� ��������� ��������� �������� \
158
�� ����� � ���������� ������������� PageMatrix'a",FALSE);
160
LDPUMA_Registry(&hInclineCalculating,"���������� ���� �������",hDebugLayout);
161
LDPUMA_RegistryHelp(hInclineCalculating,"���������� ������� ���������� ���� \
162
������� ��������",FALSE);
143
LDPUMA_Registry(&hSetTrivAverHeight,"Тривиальное вычисление nAverageHeight",hAlgoritmWork);
144
LDPUMA_RegistryHelp(hSetTrivAverHeight,"Заменить вычисление среднего в поле nAverageHeight " \
145
"на тривиальную (обычную) формулу вычисления среднего",FALSE);
148
LDPUMA_Registry(&hPageBeforeEditing,"Страница перед началом",hDebugLayout);
149
LDPUMA_RegistryHelp(hPageBeforeEditing,"Показывает компоненты на странице \
150
перед началом работы",FALSE);
152
LDPUMA_Registry(&hPageMatrix,"Построение PageMatrix",hDebugLayout);
153
LDPUMA_RegistryHelp(hPageMatrix,"Показывает процесс построения PageMatrix \
154
(матрицы страницы)",FALSE);
156
LDPUMA_Registry(&hInitialBreaking,"Начальное разбиение",hDebugLayout);
157
LDPUMA_RegistryHelp(hInitialBreaking,"Показывает начальное разбиение страницы \
158
на блоки в результате использования PageMatrix'a",FALSE);
160
LDPUMA_Registry(&hInclineCalculating,"Вычисление угла наклона",hDebugLayout);
161
LDPUMA_RegistryHelp(hInclineCalculating,"Показывает процесс вычисления угла \
162
наклона страницы",FALSE);
165
LDPUMA_Registry(&hBlocksAfterFirstExtraction,"����� ����� ������� ���������",hShowAlgoritm);
166
LDPUMA_RegistryHelp(hBlocksAfterFirstExtraction,"���������� ������",FALSE);
165
LDPUMA_Registry(&hBlocksAfterFirstExtraction,"Блоки после первого выделения",hShowAlgoritm);
166
LDPUMA_RegistryHelp(hBlocksAfterFirstExtraction,"Пропустить работу",FALSE);
169
LDPUMA_Registry(&hBlocksBreaking,"���������",hDebugLayout);
170
LDPUMA_RegistryHelp(hBlocksBreaking,"���������� ������� ��������� ������",FALSE);
172
LDPUMA_Registry(&hBlocksGlueing,"�������",hDebugLayout);
173
LDPUMA_RegistryHelp(hBlocksGlueing,"���������� ��������� ������� ������",FALSE);
175
LDPUMA_Registry(&hFirstDustAbsorbtion,"������ ���� ���������� ������",hDebugLayout);
176
LDPUMA_RegistryHelp(hFirstDustAbsorbtion,"���������� ����� ����� ������� ����� \
177
���������� ������",FALSE);
179
LDPUMA_Registry(&hRemoveEmptyBlocks,"�������� ������ ������",hDebugLayout);
180
LDPUMA_RegistryHelp(hRemoveEmptyBlocks,"���������� ������� �������� ������ ������",FALSE);
182
LDPUMA_Registry(&hSecondDustAbsorbtion,"������ ���� ���������� ������",hDebugLayout);
183
LDPUMA_RegistryHelp(hSecondDustAbsorbtion,"���������� ����� ����� ������� ����� \
184
�������� ������",FALSE);
169
LDPUMA_Registry(&hBlocksBreaking,"Разбиение",hDebugLayout);
170
LDPUMA_RegistryHelp(hBlocksBreaking,"Показывает процесс разбиения блоков",FALSE);
172
LDPUMA_Registry(&hBlocksGlueing,"Склейка",hDebugLayout);
173
LDPUMA_RegistryHelp(hBlocksGlueing,"Показывает результат склейки блоков",FALSE);
175
LDPUMA_Registry(&hFirstDustAbsorbtion,"Первый этап добавления дустов",hDebugLayout);
176
LDPUMA_RegistryHelp(hFirstDustAbsorbtion,"Показывает блоки после первого этапа \
177
добавления дустов",FALSE);
179
LDPUMA_Registry(&hRemoveEmptyBlocks,"Удаление пустых блоков",hDebugLayout);
180
LDPUMA_RegistryHelp(hRemoveEmptyBlocks,"Показывает процесс удаления пустых блоков",FALSE);
182
LDPUMA_Registry(&hSecondDustAbsorbtion,"Второй этап добавления дустов",hDebugLayout);
183
LDPUMA_RegistryHelp(hSecondDustAbsorbtion,"Показывает блоки после второго этапа \
184
удаления дустов",FALSE);
186
186
LDPUMA_Registry(&hDebugStrings,SNAP_ROOT_STRINGS,NULL);
187
LDPUMA_RegVariable(hDebugStrings,"���������� ������� �������.",&layout,"unsigned char");
188
LDPUMA_RegistryHelp(hDebugStrings,"� ���������� ����� ���������� �������� ������ \
189
������� �� 5 �� 8",TRUE);
191
LDPUMA_Registry(&hShowString,"�������� ���������� ������",hDebugStrings);
192
LDPUMA_RegistryHelp(hShowString,"������ ����� ���������� ����������������.",FALSE);
194
LDPUMA_Registry(&hShowCells,"�������� ���������� ������ � ������������",hDebugStrings);
195
LDPUMA_RegistryHelp(hShowCells,"����� �������������� ������ � �������� \
196
� ��� ����������.",FALSE);
187
LDPUMA_RegVariable(hDebugStrings,"Установить уровень отладки.",&layout,"unsigned char");
188
LDPUMA_RegistryHelp(hDebugStrings,"В переменных можно установить значение уровня \
189
отладки от 5 до 8",TRUE);
191
LDPUMA_Registry(&hShowString,"Показать выделенные строки",hDebugStrings);
192
LDPUMA_RegistryHelp(hShowString,"Строки будут выделяться прямоугольниками.",FALSE);
194
LDPUMA_Registry(&hShowCells,"Показать выделенные ячейки с компонентами",hDebugStrings);
195
LDPUMA_RegistryHelp(hShowCells,"Будут подсвечиваться ячейка и входящие \
196
в нее компоненты.",FALSE);
198
// LDPUMA_Registry(&hUseCLine,"������ � ����������� �����",NULL);
198
// LDPUMA_Registry(&hUseCLine,"Работа с контейнером линий",NULL);
201
201
#define REGVAR(a) LDPUMA_RegVariable(hDebugLayout,#a,&a,"short int")