В правой панели основного меню Шаблонизатора находятся 5 основных блоков для создания и настройки шаблона:
3.1. Настройки
3.1.1. OCR модуль
OCR модуль — модуль, которым будет производиться распознавание текста.
В платформе Sherpa интегрированы несколько OCR-модулей. Два из них поставляются вместе с роботом – это Tesseract OCR и Microsoft OCR (могут работать офлайн, без подключения к интернету).
Yandex Vision и ABBYY OCR – онлайн-модули, они используют функции соответствующих облачных сервисов.
ABBYY Fine Reader – это коммерческий офлайн-модуль, использование которого требует отдельной лицензии.
Платформа позволяет настроить работу сценария с распознаванием изображений и переключаться между этими OCR-модулями в любой момент времени. Для этого необходимо выбрать желаемый модуль из списка.
После выбора OCR-модуля необходимо проверить корректность распознаваемых данных, нажав кнопку «Проверить».
При обнаружении неточностей рекомендуем выбрать альтернативный OCR-модуль из предложенного списка и провести проверку повторно.
В случае если распознаваемый документ высокого качества, с высоким расширением, то достаточно использовать бесплатные OCR-модули. Например, Tesseract. При обработке документов низкого качества лучше использовать платные решения.
3.1.2. OCR масштаб
OCR масштаб — настройка, позволяющая улучшить качество распознавания, если документы имеют плохое разрешение.
В случае высокого и среднего качества сканированного документа оставляем значение масштаба равное «2».
Перед распознаванием робот увеличит картинку в заданное количество раз. К примеру, при работе со скриншотом экрана разрешения экрана (количества точек на дюйм) может не хватить для корректного распознавание текста. Т.е. сначала изображение нужно масштабировать, а потом распознавать.
Значение OCR-масштаба равное «1» целесообразно устанавливать только в том случае, если разрешение исходного документа 250 dpi (точек на дюйм) или выше.
Увеличивать масштаб можно в случае, если изображение обрабатываемого документа небольшого размера.
При изменении масштаба нужно учитывать, что чем больше масштаб, тем больше времени уйдет на его обработку.
3.1.3. Язык распознавания
Язык распознавания – настройка, которая позволяет увеличить точность распознавания документа.
Возможные значения
|
|
EngRus |
И русский и английский языки |
Rus |
Только русский язык |
Eng |
Только английский язык |
3.1.4. OCR размер ячейки по горизонтали
Делитель по горизонтали, по которому определяются ячейки таблиц на странице. Значение должно быть больше или равно 1.
Размер ячейки определяется как размер изображения, деленное на это значение.
Шаблонизатор использует два параметра (по горизонтали и по вертикали) для более точного определения таблиц.
По умолчанию заданы параметры:
40 – OCR размер ячейки по горизонтали
Это значение является оптимальным при распознавании документов со стандартными (или близкими к стандартным) размерами ячеек таблиц.
Рекомендуем оставлять эти значения без изменений и менять их только в случае некорректного распознавания (после проверки).
Ели при заданных параметрах (значение по горизонтали 40) таблица не будет распознана, то алгоритм Шаблонизатора увеличит это значение на 10 автоматически и осуществит попытку повторно.
3.1.5. OCR размер ячейки по вертикали
Делитель по вертикали, по которому определяются ячейки таблиц на странице. Значение должно быть больше или равно 1.
Размер ячейки определяется как размер изображения, деленное на это значение.
Шаблонизатор использует два параметра (по горизонтали и по вертикали) для более точного определения таблиц.
По умолчанию заданы параметры:
20 — OCR размер ячейки по вертикали.
Это значение является оптимальным при распознавании документов со стандартными (или близкими к стандартным) размерами ячеек таблиц.
Рекомендуем оставлять эти значения без изменений и менять их только в случае некорректного распознавания (после проверки).
Ели при заданных параметрах (значение по вертикали 20) таблица не будет распознана, то алгоритм Шаблонизатора увеличит это значение на 10 автоматически и осуществит попытку повторно.
3.1.6. Фильтр горизонтальных линий
Фильтр горизонтальных линий используется для атрибутов. В этой настройке указывается процент, меньше которого линии будут проигнорированы. Определяется как отношение горизонтальной линии к ширине изображения.
По умолчанию значение данного параметра равно 5.
Зачастую в сканированных документах присутствуют линии, не являющиеся границами таблиц (различные артефакты, которые необходимо отфильтровать). При заданном параметре все лишние артефакты (линии, нарисованные ручкой или линии, появившиеся при некачественном сканировании) будут проигнорированы.
3.1.7. Автоповорот страницы
Автоматический поворот страницы. Параметр автоматически разворачивает страницы на угол, кратный 90 градусам (90̊, 180̊ и 270̽). Автоповорот страницы не разворачивает документ на малые углы.
По умолчанию значение параметра «True», рекомендуем оставлять его без изменения.
3.1.8. Автовыравнивание страницы
Автоматическое выравнивание страницы. Параметр выравнивает содержимое страницы при некорректном сканировании листа. В отличие от Автоповорота страницы, Автовыравнивание разворачивает документ на малые углы.
При автовыравнивании страницы распознается самая длинная OCR линия, имеющаяся на странице (чаще всего это линия из таблицы или атрибута) и определяет угол ее наклона относительно горизонтали. После этого происходит разворот документа, чтобы найденная линия стала параллельна линии горизонта.
По умолчанию значение параметра «True», рекомендуем оставлять его без изменения.
Этот параметр нежелательно использовать в случае, если сканированный документ сильно повернут и угол поворота составляет более 40̊, в этом случае Шаблонизатор не сможет распознать, в какую сторону нужно выровнять документ и выдаст ошибку. В такой ситуации можно использовать параметр Корректировка угла.
3.1.9. Рабочие данные
Данные, вычисляемые в процессе работы робота, используются только для справочной информации.
3.2. Якоря
Якоря — точки на сканированном документе, с помощью которых робот определяет, в какой части документа размещаются определенные данные.
При помощи якорей мы задаем границы определенных атрибутов. Якорей может быть сколь угодно много, в зависимости от типа документа.
3.2.1. Инструменты для работы с якорями
При создании нового якоря на рабочей панели открывается список свойств и инструментов для работы с якорем.
Основные инструменты для работы с якорями:
Новый якорь |
Добавляет новый якорь |
Копировать якорь |
Копирует выделенный якорь и автоматически добавляет новый якорь вместе с заданными настройками |
Удалить якорь |
Удаляет выделенный якорь |
Добавить привязку |
Добавляет новую привязку к выделенному якорю |
Удалить привязку |
Удаляет выделенную привязку |
Переместить привязку вверх |
Перемещает привязку вверх
|
Переместить привязку вниз |
Перемещает привязку вниз |
3.2.2. Настройки
Для работы с якорями предусмотрены следующие параметры:
ID |
Идентификатор якоря. Присваивается автоматически. |
Якорные привязки |
Список якорных привязок. Для добавления новой привязки необходимо кликнуть на значение якорные привязки, затем кликнуть клавишей мыши на ранее созданный якорь на документе. Именно к этому якорю будет осуществляться привязка. |
Тип |
Выбирается из выпадающего списка: 1.Text – текст
2.Table – таблица или ячейка таблицы
3.Packet – пакет взаимозаменяемых якорей (при привязке к этому якорю будут взяты его подчиненные якоря, первый успешно найденный из списка)
|
Значение |
Для якоря типа Text возможно указывать подстановочные знаки (*)(?) Для якоря типа Table значение записывается в формате «Индекс таблицы:Индекс строки:Индекс колонки». Например, для Text «*обл* страх*» (два слова при включении «Раздельные слова»), для Table – «0:1:2» (таблица 0, строка 1, колонка 2), «1:2» (таблица 1, строка 2), «2» (вся таблица 2) |
Режим работы |
Режим работы якоря. Возможные значения: 1.Default – якорь обязателен на первой странице многостраничного документа
2.LastPage – якорь будет обязателен в многостраничном документе и укажет на последнюю страницу
3.Optional – необязательный якорь и если он не будет найден на странице, то ошибка не сгенерируется
|
Раздельные слова |
При включенной настройке значение якоря разбивается на слова и каждое слово ищется отдельно True (правда) – выключено False (ложь) — выключено |
Количество блоков |
Если выбрано свойство «Раздельные слова», то при поиске якоря возможна ситуация, когда в заданной области могут быть найдены несколько значений блоков, соответствующие заданным словам. Данное свойство позволяет ограничить максимальное количество слов между блоками |
Описание |
Пользовательское описание |
Рабочие данные |
Данные, вычисляемы в результате работы, используются только для справочной информации. |
Подчиненные якоря |
Якоря, напрямую зависящие от родительского якоря. Поиск подчиненных якорей будет происходит только после того, как будет найден главный/родительский якорь. В случае, если в настройках родительского якоря указан режим «Optional» (т.е. он не является обязательным), и если родительский якорь не был найден, то и поиск подчиненных якорей не будет осуществлен, они будут пропускаться. Эта опция используется, если атрибут находится в середине многостраничного документа. |
3.2.3. Создание якоря
Для создания якоря переходим во вкладку «Якоря» в правой рабочей области Шаблонизатора и нажимаем кнопкув верхней части панели. В этот момент становятся активны «OCR блоки» и «OCR таблицы» для удобства выбора определенного блока в качестве якоря.
Для того, чтобы Шаблонизатор мог корректно определить местоположение атрибута в документе, необходимо ограничить его границы. Ограничение верхней границы задается по тексту, находящемуся на строку выше самого атрибута.
Для присвоения значения якорю достаточно кликнуть левой клавишей мыши по OCR-блоку (слову), которое мы выбрали в качестве якоря. Также можно указать значение вручную, написав якорное слово в строке Значение.
Когда значение якоря задается нажатием клавишей мыши на OCR-блок, — к значению автоматически добавляется знак «*», если значение указывается вручную, — вы также можете добавить этот знак. В некоторых документах встречаются слова с невидимыми символами (Unicode) или в конце слова может быть добавлен какой-либо другой символ (№, (, / и т.д.), который не позволит распознать заданный якорь. В таких случаях рекомендуем добавлять знак «*» по аналогии с Wildcard.
При использовании якорных привязок знак «*» нужно удалить и после этого добавить привязку.
В случае, если значение содержит два и более слова, — между ними необходимо ставить пробел, т.к. он выступает разделителем слов.
Шаблонизатор позволяет задать для якоря несколько альтернативных вариантов, по которым робот будет распознавать завершающий атрибут.
В строке «Значение» нажать на кнопку выпадающего окна, в котором достаточно прописать альтернативные варианты. Слово подпис*, указано без окончания, т.к. в документе может быть указано как подпись, там и подписи.
Проверяем корректность расположения якорей.
При создании якорей, в значении которых содержится несколько слов, необходимо указывать знак «*» в конце каждого слова, а между словами ставить пробел.
Если сочетание слов встречается в документе единожды, то второе слово можно написать сокращенно. Например, в качестве якоря по номеру документа можем указать «номер* докум*»
Если в начале значения якоря присутствует лишний символ (чаще всего это скобка), мы можем удалить этот символ и вместо него поставить знак «*». Тогда получим значение *организация* вместо (организация*.
При создании шаблона необходимо указать якорь, который будет завершать документ. Т.е. по этому якорю мы можем определить, что в документе таблиц больше нет и работу с таблицами можно завершать.
При создании шаблона необходимо указать якорь, который будет завершать документ. Т.е. по этому якорю мы можем определить, что в документе таблиц больше нет и работу с таблицами можно завершать.
Для завершающего якоря указываем Режим работы – LastPage
Например, завершающим якорем может быть слово расшифровка*, т.к. чаще всего это слово указывается на последней странице документа.
Шаблонизатор позволяет задать для якоря несколько альтернативных вариантов, по которым робот будет распознавать завершающий атрибут.
Добавим слово подпис*, укажем намеренно без окончания, т.к. в документе может быть указано как подпись, там и подписи.
Если в документе отсутствует слово расшифровка*, то робот будет искать слово подпис*
3.2.5 Якорные привязки
Основные инструменты для работы с якорными привязками:
ID якоря |
ID якоря, к которому происходит привязка |
Параметр |
Параметр привязки. Возможные значения: 1.TopLeft – привязка левого верхнего угла якоря к выбранному объекту привязки
2.TopRight – привязка правого верхнего угла якоря к выбранному объекту привязки
3.BottomLeft – привязка левого нижнего угла якоря к выбранному объекту привязки
4.BottomRight – привязка правого нижнего угла якоря к выбранному объекту привязки
5.Left – привязка левой грани якоря (посередине) к выбранному объекту привязки
6.Top – привязка верхней грани якоря (посередине) к выбранному объекту привязки
7.Right – привязка правой грани якоря (посередине) к выбранному объекту привязки
8.Bottom – привязка верхней грани якоря (посередине) к выбранному объекту привязки
9.LeftArea – привязка всей левой области якоря к выбранному объекту привязки
10.RightArea – привязка всей правой области якоря к выбранному объекту привязки
11.BottomArea – привязка всей нижней области якоря к выбранному объекту привязки
12.TopArea — привязка всей верхней области якоря к выбранному объекту привязки
13.FullArea – привязка якоря со всех сторон к выбранному объекту привязки
|
Объект привязки |
Указывается точка или грань области атрибута для привязки выбранного параметра |
Принудительно |
При включении указанный параметр якоря будет задан к выбранному объекту привязки принудительно и без проверок |
Смещение Х |
Смещение по оси Х. Значение указывается в пикселах в формате +- для точного смещения. Например, +10-20 |
Смещение У |
Смещение по оси Y. Укажите значение +- для точного смещения. Например, +10-20 |
Для создания привязок в созданном атрибуте нажимаем «Якорные привязки», далее «Добавить привязку», затем левой клавишей мыши кликаем на якорное слово (OCR-блок).
Для корректного распознавания области документа, данные из которой будут импортироваться в результаты, для атрибутов необходимо осуществить привязку к ранее созданным якорям.
Привязка может осуществляться не только к атрибутам, находящимся справа и слева, но и к атрибутам сверху или снизу. Для определения нахождения нужной нам области данных необходимо воспользоваться Параметрами якорной привязки и выбрать из выпадающего списка подходящий параметр.
Например, чтобы ограничить область данных атрибута сверху, создаем якорную привязку к OCR-блоку. Нажимаем Добавить привязку, кликаем левой клавишей мыши на созданный ранее якорь. В параметрах привязки выбираем значение Bottom, т.к. в качестве ориентира мы будем использовать нижнюю границу данного якоря.
Помимо параметра в привязке для данного атрибута необходимо указать Объект привязки. Т.к. данные атрибута могут располагаться выше строки, которую мы выделили при помощи первых двух якорей слева и справа.
В строке Объект привязки указываем TopEdge — верхняя грань.
После проверки в шаблоне каждый атрибут будет отображаться в виде синей рамки. В случае, если границы рамки не захватывают всю область данных атрибута, необходимо внести изменения в настройки.
Рамка атрибута не всегда имеет ровную форму, правый верхний угол может быть выше левого верхнего угла, — это некритично. Главное, чтобы данные атрибута полностью помещались в созданную рамку.
Атрибуты — позволяют определить и обозначить области документа, данные из которых будут распознаваться роботом и импортироваться в таблицу «Результаты».
При создании нового атрибута на рабочей панели открывается список свойств и инструментов для работы с атрибутом.
Существует несколько способов добавления Атрибута:
Этот наиболее простой способ добавления Атрибутов используется только для простых типовых форм документов, когда предполагается, что все обрабатываемые документы будут загружаться в одинаковом формате. Например, стандартные формы документов, сформированные в 1С.
Такой вариант не подойдет, если необходимо создать шаблон для документов, которые могут отличаться между собой размером изображения или расположением данных в самом документе. Т.е. Шаблонизатор будет распознавать атрибуты лишь в заданной области, без привязки к каким-либо якорям.
Прежде чем добавить Атрибут, необходимо нажать на кнопку «Обработать документ» на верхней панели Основного меню. Если этого не сделать, то функция выделения области атрибута будет неактивна и Шаблонизатор выдаст уведомление на нижней панели.
При нажатии кнопки «Добавить атрибут» появляется возможность определить область атрибута при помощи курсора, сделав выделение той области, которая должна содержать в себе Атрибут.
Для этого необходимо навести курсор на область, содержащую необходимый атрибут, нажать на левую кнопку мыши и, удерживая ее, растянуть область до нужных границ. Область атрибута будет отображаться синим прямоугольником, как на скриншоте ниже.
При этом на нижней панели Шаблонизатора будут отображаться координаты заданного Атрибута.
Эти координаты также будут указаны в свойствах Атрибута на панели настроек справа.
Нажать кнопку на правой рабочей панели меню во вкладке Атрибуты и задать основные настройки.
Для корректного распознавания области документа, данные из которой будут импортироваться в результаты, для атрибутов необходимо осуществлять привязку к ранее созданным якорям.
В некоторых документах названия полей, которые мы используем в качестве якорей, могут располагаться не на нижней линии с описанием поля, а сверху или посередине, как на рисунке ниже.
В таких случаях для корректной привязки рекомендуем воспользоваться дополнительным параметром Ограничение линиям. Предварительно нужно проверить присутствуют ли в шаблоне OCR-линии, ограничивающие созданные нами атрибуты.
Нажимаем кнопку OCR-линии на верхней рабочей панели и проверяем наличие линий.
Линии подсвечены зеленым цветом и мы можем использовать их в качестве дополнительного ориентира в работе с атрибутами.
На верхней рабочей панели выбираем Атрибуты, кликаем левой клавишей мыши на один из атрибутов, после чего он становится активным и в правой рабочей панели открываются инструменты для работы с выбранным атрибутом.
Выбираем «Ограничение линиями», из выпадающего списка выбираем значение «Down». Таким образом мы ограничиваем нижнюю границу атрибута, которая теперь будет ориентироваться на OCR-линии.
Обязательно проверяем корректность отображения границ атрибута. При необходимости меняем значения данного параметра.
После проверки в шаблоне должен появиться синий прямоугольник, внутри которого отображены данные нашего атрибута.
На рабочей панели справа отображаются все таблицы шаблона, которые были распознаны ранее. Их может быть одна-две и более.
Каждой таблице автоматически присваивается номер, нумерация начинается с 0. Также отображается количество колонок каждой распознанной таблицы. Именно по этому значению мы можем определить с какой (или с какими) таблицами мы продолжим работать.
Удалить таблицу можно нажав на значок на верхней панели окна, предварительно выделив таблицу, которую нужно удалить.
Для импорта таблиц из документа для дальнейшей обработки Шаблонизатором необходимо нажать на кнопку , после чего появится окно с запросом «Вы хотите импортировать все таблицы из документа в шаблон?». После нажатия кнопки «Да» таблицы будут импортированы.
3.4.1. Свойства таблиц
На рабочей панели открывается список свойств и инструментов для работы с Таблицей.
Индекс |
Индекс OCR-таблицы. Для улучшения привязки рекомендуется указывать минимальное количество колонок. В случае, если Шаблонизатор извлекает данные лишь из одной таблицы сканированного документа, необходимо указывать индекс, равный 0. |
Пропустить строки |
При выборе первые строки будут пропущены. Наименования колонок будут соответствовать значениям первой строки. Если задавать названия колонок в шаблоне, то эти значения не будут изменены. |
Строк в заголовке |
При построении таблицы заданное количество строк будет использовано для создания заголовков колонок. При указании значения 0 названия будут взяты из шаблона колонок, иначе названия будут суммироваться из ячеек колонки по заданному количеств строк |
Связующий якорь |
Если указан якорь, то таблица будет определяться ниже этого якоря |
Минимальное количество |
Указывается минимальное количество колонок в OCR-таблице. Все таблицы с количеством меньше указанного пропускаются. Можно указывать и максимальное и минимальное количество колонок, тем самым задавая интервал, в который будут попадать таблицы с интересующими нас данными |
Максимальное количество |
Указывается максимальное количество колонок в OCR-таблице. Все таблицы с количеством больше указанного пропускаются. можно указывать и максимальное и минимальное количество колонок, тем самым задавая интервал, в который будут попадать таблицы с интересующими нас данными |
Колонки |
Колонки таблицы |
Рабочие данные |
Данные, вычисляемы в результате работы |
При необходимости возможно указать количество строк, которые нужно пропустить для того, чтобы данные этих строк не попали в результаты работы робота.
При выборе значения, равного 1, — первые строки будут пропущены. Наименования колонок будут соответствовать значениям первой строки.
Если задать названия колонок в шаблоне, то эти значения не будут изменены.
Например, если значения интересующих нас данных указаны в таблице документа начиная с 6 строки, то необходимо пропустить 5 верхних строк таблицы.
Для этого в строке «Пропустить строки» указываем число 5.
3.4.3. Строк в заголовке
При построении таблицы, заданное количество строк будет использовано для создания заголовков колонок. При указании значения 0 заголовки будут взяты из шаблона колонок, в противном случае название будет суммироваться из ячеек колонки по заданному количеству строк.
Например, если в заголовок должна попасть информация, размещенная в двух верхних строках таблицы, — необходимо указать количество строк в заголовке, равное 2.
При работе с документом, в котором есть несколько таблиц, в настройках мы можем указать, из какой именно таблицы нам необходимо получить данные. Для этого мы задаём якорь, указывающий на начало нужной нам таблицы (подробнее в разделе 3.2.1).
В случае, когда мы имеем дело с многостраничным документом, нужная нам таблица может располагаться на любой странице документа (2,3 и т.д.). Например, нам нужно извлечь данные из таблицы «Сведения о поступившем оборудовании», находящейся на второй странице документа. Для этого мы указываем якорь «Сведения о поступившем оборудовании» и Режим работы – Optional (опциональный).
Затем в настройках Таблицы добавляем связующий якорь. Нажимаем на кнопку «Указать связующий якорь».
Указываем ID якоря и его параметр. После проверки мы видим, что распозналась нужная нам таблица.
Алгоритм устроен таким образом, что при распознавании робот будет поочередно обрабатывать страницы до того момента, пока не найдет заданный нами якорь. После этого он распознает таблицу по указанным настройкам (Параметр Bottom, Минимальное количество колонок и пр.).
Если таблица продолжается на нескольких страницах документа, то повторно указывать якорь для каждой последующей страницы не нужно.
По каждой таблице отображается соответствующее ей количество колонок.
Индекс |
задается автоматически |
Имя |
задается пользователем |
Тип данных |
Тип данных для колонок: 1.Text – текст
2.Int – число
3.Float – вещественное число
4.Date Time – дата и время
5.Chars – только буквы (исключаются цифры и другие символы)
|
В случае, если в результатах полного сканирования отсутствует несколько колонок, то мы можем их добавить.
Добавление недостающих колонок производится на правой рабочей панели Шаблонизатора во вкладке «Таблицы». Нажимаем на кнопку , добавляем колонку, присваиваем колонке имя нужное имя.
При повторной проверке в результатах полного сканирования Шаблонизатора появится новая колонка.
В случае, если название колонки не соответствует названию переменной в сценарии проекта «Определить колонки .process», но содержание колонки соответствует значению переменной, то создавать дополнительную колонку не нужно, достаточно изменить название колонки в Шаблонизаторе.
Например, в таблице с результатами Шаблонизатора название колонки «Стоимость начала проведения работ», а название переменной «Цена», тогда мы вносим изменения в название колонки, предварительно убедившись в том, что именно в этой колонке отображается цена.
Нумерация колонок таблицы в шаблонизаторе начинается с 0.
В случае если название колонки сохранено по умолчанию и содержит в себе числовое значение (например, «Без имени1»), то в таблице результатов Шаблонизатора название указанной колонки определится автоматически и будет содержать в себе текст из соответствующей колонки сканированного документа.
Если название колонки мы изменили вручную, то в таблице результатов Шаблонизатора будет отображаться именно заданное нами название колонки.
Поэтому, рекомендуем обратить особое внимание на часть табличного документа, в котором название колонки указано в объединенных ячейках. Даже если при создании шаблона документа название колонки из объединенных ячеек было распознано корректно, в других документах название может быть указано со смещением.
При вероятности того, что в некоторых документах нужный нам атрибут может сместиться в соседнюю ячейку, рекомендуем переименовать все ячейки, названия которых могут быть смещены.
Чертежи таблиц применяются для документов, в которых по каким-либо причинам отсутствуют границы таблиц. Это могут быть иностранные документы (например, Invoice), в которых линии таблиц не предусмотрены. Также это могут быть российские документы, в которых частично не прорисованы линии таблицы, как на скриншоте ниже (отсутствуют межстрочные линии).
3.5.1. Создание чертежа таблицы
Алгоритм обработки таблицы запускается после того, как на странице документа будет прорисован чертеж таблицы с недостающими линиями. Каждая линия отрисовывается вручную, например, при помощи языка программирования С# (си шарп).
После этого при нажатии кнопки OCR-таблицы или Чертежи таблицы таблица будет распознаваться с учетом прорисованных линий.
Цвет линий значения не имеет, т.к. алгоритм определения линий преобразует все цвета в градиент серого цвета.
Для корректного распознавания табличной части необходимо произвести привязку к якорям.
На рабочей панели справа отображаются все параметры, которые позволяют произвести настройку чертежа таблицы.
Описание |
Можно указать описание чертежа таблицы |
Левый верхний угол |
Якорная привязка левого верхнего угла |
Правый верхний угол |
Якорная привязка правого верхнего угла |
Правый нижний угол |
Якорная привязка правого нижнего угла |
Левый нижний угол |
Якорная привязка левого нижнего угла |
Колонки |
Якорные привязки для колонок |
Отображение рамок |
Управление отображением рамок чертежа таблицы |
Толщина рамки |
Толщина рамки в пикселях |
Цвет рамки |
Цвет рамки в формате RGB. Например, «#000000» — черный цвет, «#FF0000» — красный цвет |
Обрамление колонок |
Отражает линии колонок на чертеже таблицы |
Обрамление строк |
Отражает линии строк на чертеже таблицы |
Обрамление заголовка |
Отображает первую строку на чертеже страницы |
Рабочие данные |
Данные, вычисляемые в результате работы |
Для осуществления привязки границ таблицы для каждого угла чертежа необходимо указать якорь и задать параметры расположения линий относительно выбранного якоря.
3.5.2. Свойства чертежей таблицы
Для каждого угла чертежа таблицы применяются следующие свойства:
ID якоря |
ID якоря, к которому происходит привязка |
Параметр |
Параметр привязки. Возможные значения: 1.TopLeft – привязка левого верхнего угла якоря к выбранному объекту привязки
2.TopRight – привязка правого верхнего угла якоря к выбранному объекту привязки
3.BottomLeft – привязка левого нижнего угла якоря к выбранному объекту привязки
4.BottomRight – привязка правого нижнего угла якоря к выбранному объекту привязки
5.Left – привязка левой грани якоря (посередине) к выбранному объекту привязки
6.Top – привязка верхней грани якоря (посередине) к выбранному объекту привязки
7.Right – привязка правой грани якоря (посередине) к выбранному объекту привязки
8.Bottom – привязка верхней грани якоря (посередине) к выбранному объекту привязки
9.LeftArea – привязка всей левой области якоря к выбранному объекту привязки
10.RightArea – привязка всей правой области якоря к выбранному объекту привязки
11.BottomArea – привязка всей нижней области якоря к выбранному объекту привязки
12.TopArea — привязка всей верхней области якоря к выбранному объекту привязки
13.FullArea – привязка якоря со всех сторон к выбранному объекту привязки
|
Объект привязки |
Указывается точка или грань области атрибута для привязки выбранного параметра |
Принудительно |
При включении указанный параметр якоря будет задан к выбранному объекту привязки принудительно и без проверок |
Смещение Х |
Смещает область атрибута по оси Х. Значение указывается в пикселах в формате +- для точного смещения. Например, +10-20. Используется в случае, когда после якоря указывается какой-либо символ (скобка или двоеточие), который не должен попасть в область атрибута. |
Смещение Y |
Смещение по оси Y. Укажите значение +- для точного смещения. Например, +10-20 |
Для привязки можно использовать как ранее созданные якоря, так и создавать новые. В момент создания якоря автоматически формируется ID якоря, который нужно указать в свойствах ID якоря.
Параметр привязки выбирается из выпадающего списка в зависимости от того, в каком направлении от якоря находится угол чертежа таблицы.
Например, нам нужно привязать Левый верхний угол чертежа таблицы к якорю «Сведения о поступившем оборудовании» (ID 1), указываем Параметр BottomLeft, также указываем Объект привязки BottomLeft, т.к. интересующий нас угол чертежа находится ниже якоря.
В большинстве случаев для корректной прорисовки угла потребуется указать Смещение по оси Х и по оси У. Это связано с тем, что границы якоря не совпадают с началом границы чертежа. Если не указать смещение, то часть текста табличной части будет обрезана.
Степень смещения определяется методом подбора оптимального значения (вручную), чтобы граница чертежа максимально охватывала область непрорисованной на документе таблицы.
Рекомендуем задавать такую степень смещения по оси Х, чтобы линии немного выходили за границы и образовывали угол (пересечение) с имеющимися вертикальными линиями. Точка пересечения позволит корректно распознать таблицу.
Для отображения рабочих данных применяются следующие свойства:
Область |
Текущая вычисленная область |
Колонки |
Вычисленные линии колонок |
Строки |
Вычисленные линии строк |
3.5.5. Колонки
В случае, если на документе с таблицей отсутствуют также вертикальные линии, то необходимо осуществить настройку Колонок по аналогии с созданием горизонтальных линий.
Указывает ID якоря, к которому осуществляем привязку вертикальной линии, а также параметр (в зависимости от того, с какой стороны якоря необходимо разместить линию). При необходимости можно отрегулировать смещение. Высота вертикальных линий будет ограничена границами ранее заданного нами чертежа таблицы.
Для отображения рамок применяются следующие свойства:
Левая рамка |
Отображение левой рамки чертежа таблицы |
Верхняя рамка |
Отображение верхней рамки чертежа таблицы |
Правая рака |
Отображение правой рамки чертежа таблицы |
Нижняя рамка |
Отображение нижней рамки чертежа таблицы |
3.5.6. Толщина рамок
Указана в пикселах и задается пользователем вручную. При настройке этого параметра рекомендуем ориентироваться на толщину линий, имеющихся в таблице.
Если имеющиеся линии тонкие (например, в стандартных документах из 1С), — то и толщину рамок можем указать равную 1 (единице).
В случае, если имеющиеся линии таблицы толстые, то рекомендуем указывать 3 и более пикселей. Иначе робот может не распознать пересечения толстой и тонкой линий, и таблица распознается некорректно.
3.5.7. Обрамление заголовка
Используется в основном при обработке иностранных документов- Invoice, в которых нет четкого разграничения Заголовка документа. Заголовок отрисовывается по первой строке – линия, по которой будет определяться обрамлением заголовка.
Для отображения рабочих данных применяются следующие свойства:
Область |
Текущая вычисленная область |
Колонки |
Вычисленные линии колонок |
Строки |
Вычисленные линии строк |