Проверка шла на работающем сервисе, в браузере, мышью — так же, как это делает человек. Взят «Пример 2», страница 1, вкладка «После выравнивания». Пройден весь путь: нарисовать свои линии, удалить лишнюю, передвинуть одну, сохранить, обновить страницу и посмотреть, совпала ли автоматическая сетка с этой ручной разметкой. Отдельно проверено, что четыре остальных примера не сломались.
| Шаг пути | Результат |
|---|---|
| Выбрать «Пример 2», открыть вкладку «После выравнивания» | Да. На экране один вид, картинка не показывается «рядом» сама по себе. |
| Распознать страницу и увидеть сетку | Да. 44 линии (24 вертикальных, 20 горизонтальных), 131 размеченная ячейка, 102 строки в таблице справа. |
| Клик по ячейке подсвечивает поле справа | Да. Клик по ячейке на скане подсветил ровно одно поле справа (в проверке это был адрес покупателя). |
| Нарисовать линии мышью | Да. Было 24 линии (сохранённая ранее разметка подтянулась сама), нарисовал ещё три — стало 27. |
| Удалить лишнюю линию | Да. Клик по линии — она выделяется, «Удалить линию» убирает её: 27 → 26, появляется подпись «Линия удалена». |
| Передвинуть линию мышью | Да. Линия взята мышью и перетащена с 30% высоты листа на 42%, кнопка «Отменить» стала доступной. |
| Сохранить | Да. Подпись «Эталон сохранён: линий — 26». |
| Обновить страницу — правки на месте | Да. После перезагрузки и повторного открытия примера вернулись те же 26 линий на тех же местах (расхождение меньше половины процента ширины листа — это округление при подгонке картинки под размер окна). |
| Сверка автоматической сетки с ручной разметкой | Да, экран сравнения открывается и считает: 16 линий из 24 совпали, 8 алгоритм не нашёл, 2 линии лишние. |
| Шапка товарной таблицы размечена ячейками | Нет. В полосе с названиями столбцов («Код товара/работ, услуг», «Наименование товара», «Цена (тариф) за единицу измерения» и т. д.) нет ни одной ячейки: сетка находит только верхнюю и нижнюю границу этой полосы, а внутри она пустая. |
| Крайний правый столбец попал в сетку | Нет. Сетка обрывается сразу после столбца «9» («Стоимость товаров … с налогом — всего»). Столбцы «10», «10а» (страна происхождения) и «11» (регистрационный номер декларации) в сетку не попали. |
| Ошибки на странице | Нет ни одной — ни на экране распознавания, ни на экране сравнения, ни на четырёх остальных примерах. |
| Пример | Линий сетки | Ячеек на скане | Строк в таблице справа | Ошибки |
|---|---|---|---|---|
| Пример 1 | 62 | 366 | 163 | нет |
| Пример 3 | 27 | 59 | 31 | нет |
| Пример 4 | 53 | 135 | 46 | нет |
| Пример 5 | 51 | 345 | 93 | нет |
Каждый пример открыт заново, распознан целиком, сетка нарисовалась, на экране всё время виден один вид — переключение вкладками работает.
Ручная разметка линий готова и работает целиком. Линии ставятся мышью, берутся и двигаются, удаляются, последнее действие отменяется, сохранение переживает перезагрузку страницы, авторазметку можно спрятать и вернуть. Клик по ячейке с подсветкой поля справа и распознавание текста не задеты, ошибок на страницах нет, остальные четыре примера работают как раньше.
Главное требование пока не выполнено. На «Примере 2», странице 1 шапка товарной таблицы по-прежнему не разбита на ячейки, а правые столбцы «10», «10а» и «11» не попали в сетку. По замерам предыдущего шага причина не в настройках длины линии: на этом скане линейки правых столбцов слишком бледные — после выравнивания фона от них остаются обрывки. Лечится это порогом, по которому светлые линии вообще считаются линиями, — это отдельная правка распознавания, в объём выполненных шагов она не входила.
Мелочь на будущее: если включить «+ гориз. линия» и щёлкнуть точно по уже стоящей линии, новая не поставится — щелчок засчитывается самой линии. Достаточно кликнуть на свободном месте.
Экран сверки автоматической сетки с ручной разметкой — «Сетка алгоритма против эталона». Его счётчик «пропущено в шапке — 0» считает только те линии, что есть в ручной разметке: шапка обозначена в ней верхней и нижней границей, поэтому пустоту внутри полосы счётчик не видит, а глазами она видна (снимок 3).