Автоматизация30 сентября · MakeBiz · 7 минут

Распознавание документов PDF: два разных файла под одним расширением

PDF бывает двух видов, и от того, какой из них пришёл от поставщика, зависит вся дальнейшая обработка. Как отличить один от другого, почему это заметно на потоке и что можно поправить на входе.

PDF с текстовым слоем и сканированный PDF это два разных файла с одинаковым расширением. В первом текст лежит внутри файла: его можно выделить мышкой и найти поиском. Во втором внутри картинка, то есть страница, снятая сканером или телефоном и упакованная в PDF-обёртку.

Для распознавания разница принципиальная. Из первого данные достаются прямо из файла, ровно такими, какими их напечатал поставщик. Второй сначала надо прочитать как изображение, и тогда на результат влияет качество картинки.

Четыре вида PDF, которые приходят в реальном потоке

Откуда взялся файл, обычно видно по тому, как он устроен внутри.

Вид PDFОткуда берётсяЧто внутри файлаКак обрабатывается
С текстовым слоемВыгрузка из учётной системы, печать в PDF из Word или ExcelСимволы с координатами на страницеДанные читаются из файла напрямую
СканированныйСканер, МФУ или фотография, сохранённая в PDFИзображение страницыСначала читается картинка, потом извлекаются поля
СмешанныйДоговор, где подписанную страницу пересканировали и вложили обратноЧасть страниц текст, часть картинкаПостранично: каждая страница своим способом
Скан с готовым текстовым слоемФайл уже прогоняли через распознавание на чужой сторонеКартинка плюс слой распознанного текстаСлой проверяется, а не принимается на веру: чужие ошибки чтения в нём уже зашиты

Последний вид самый коварный. Файл ведёт себя как текстовый: текст выделяется, поиск работает. Но если распознавание на той стороне ошиблось в артикуле, ошибка поедет дальше уже как достоверное значение.

Как за десять секунд понять, какой PDF у вас на руках

Откройте файл и попробуйте выделить мышкой строку с ценой.

  • Текст выделяется и копируется: внутри текстовый слой.
  • Выделяется прямоугольная рамка поверх картинки: это скан.
  • Поиск по слову, которое видно на экране, ничего не находит: тоже скан.

Есть проверка понадёжнее: скопируйте найденный фрагмент в блокнот. Если вместо цифр и букв вышли кракозябры, текстовый слой в файле есть, но он битый. Такое бывает после плохого распознавания и на нестандартных шрифтах.

Покажем на ваших PDF
Пришлите пачку реальных предложений поставщиков, какая есть: выгрузки, сканы, снимки с телефона. Разберём и покажем сравнение.

Почему разница заметна только на потоке

На одном документе её почти не чувствуешь: и то и другое читается. Разница вылезает на пачке, и вылезает она не в качестве, а в количестве мест, которые приходится перепроверять глазами.

Из выгрузки цифры приходят как есть. Из скана они приходят прочитанными, и спорные места остаются: слипшаяся сумма, ноль вместо буквы О в артикуле, съеденный разделитель разрядов, сноска про спецусловия мелким шрифтом.

Поэтому мы смотрим не на количество документов в потоке, а на его состав: сколько выгрузок и сколько сканов. Что именно портит скан и что из этого чинится, разобрано отдельно: распознавание сканов документов.

Что ещё встречается в потоке PDF

  • Склейка. Счёт, спецификация и сопроводительное письмо одним файлом. Их надо разделить, иначе поля перемешаются между документами и в сравнение уедет сумма из соседнего счёта.
  • Защита. Пароль на открытие или запрет копирования. Снимается только на стороне отправителя, просить надо сразу.
  • PDF из мессенджера. Часто это пересжатая картинка в обёртке: файл подозрительно лёгкий, а буквы поплыли.
  • PDF, собранный из фотографий. Формально PDF, по сути снимок страницы со всеми его особенностями.
  • Повёрнутая страница. Лист лежит боком или вверх ногами. Разворачивается автоматически, но на смешанной пачке лучше проверить.

Простое правило для поставщиков: просите тот же PDF, который выгрузился у них из учётной системы, а не его распечатку и не пересканированную копию. Каждый круг «напечатали и отсканировали» отнимает у документа текстовый слой.

Что сделать с PDF до загрузки

Немного: основная часть работы делается не у вас, а на стороне отправителя. Три вещи всё-таки стоят усилий.

  1. Разделить склейку. Один файл это один документ.
  2. Снять пароль, если он стоит, и запросить файл заново.
  3. Не перегонять PDF в Word руками. Конвертер разваливает таблицы, строки съезжают, и в данных появляются позиции, которых в документе не было.

Если сканы в вашем потоке появляются не снаружи, а внутри компании, поток стоит выстроить целиком, от точки приёма до выгрузки данных: об этом сканирование документов и распознавание текста.

Как PDF попадает в обработку у нас

IntDoc принимает PDF наравне со сканами, фотографиями с телефона, документами Word и Excel, письмами, прайс-листами, счетами и коммерческими предложениями. Разбирать поток по видам файлов заранее не нужно.

Дальше документ читается построчно, и из него вытягиваются цена и валюта, срок поставки, наличие на складе, номенклатура и позиции, условия оплаты, гарантия и сервис, реквизиты поставщика, скидки и спецусловия.

Предложения приводятся к единому виду, сравниваются между собой, результат уходит в Excel, в CRM и в Битрикс24, а история сравнений остаётся внутри. Из чего вообще складывается обработка документа и чем извлечение полей отличается от чтения текста, написано в статье распознавание документов.

Коротко

Вопросы и ответы

Чем PDF с текстовым слоем отличается от сканированного?

В первом внутри файла лежит сам текст: символы с координатами на странице, их можно выделить, скопировать и найти поиском. Во втором внутри изображение страницы, то есть скан или фотография, упакованные в PDF. Расширение у файлов одинаковое, а обрабатываются они по-разному: из первого данные читаются напрямую, второй сначала распознаётся как картинка.

Как проверить, есть ли в PDF текстовый слой?

Откройте файл и попробуйте выделить мышкой строку с ценой. Если выделяется текст, слой есть. Если выделяется прямоугольная рамка поверх картинки или поиск не находит слово, которое видно на экране, перед вами скан. Полезно ещё скопировать фрагмент в блокнот: кракозябры вместо букв означают, что слой есть, но он битый.

Сканированный PDF распознаётся хуже?

Не хуже, а с другими рисками. Из выгрузки цифры приходят ровно такими, какими их напечатали, а из скана они приходят прочитанными, и часть значений остаётся спорной: слипшаяся сумма, ноль вместо буквы, мелкая сноска. На одном документе это незаметно, на пачке превращается в разное количество проверок.

Что делать, если в одном PDF несколько документов?

Разделить на отдельные файлы до загрузки: один файл это один документ. Если счёт, спецификация и письмо лежат одним PDF, поля могут перемешаться между документами, и в таблицу сравнения уедет сумма не из того счёта. Разделение стоит один раз настроить в самом процессе приёма, а не делать вручную каждый раз.

Нужно ли переводить PDF в Word перед обработкой?

Не нужно, и лучше этого не делать. Конвертеры разваливают таблицы: строки съезжают, ячейки склеиваются, появляются позиции, которых в исходном документе не было. Проверить потом, что именно поехало, сложнее, чем обработать исходный PDF. Файл нужно отдавать в том виде, в котором он пришёл.

Какие ещё форматы принимаются, кроме PDF?

IntDoc работает с PDF, сканами, фотографиями с телефона, документами Word и Excel, письмами, прайс-листами, счетами и коммерческими предложениями. Это важно потому, что поставщики присылают что придётся, и делить входящий поток по видам файлов вручную означает сохранить ручную работу там, где её пытались убрать.

← Все статьи