Серый PDF с текстом, чёткими линиями и живой формой
После перекраски нужно найти артикул, скопировать строку и изменить поле формы. Разбираем векторный режим DOKIVO: что делает Ghostscript, как сохраняется структура PDF и какие результаты можно перепроверить на открытых документах.
Серый документ должен оставаться документом
Цветной PDF нужно отправить на чёрно-белую печать, но после преобразования в нём всё ещё требуется найти артикул, скопировать строку или заполнить форму. Если каждую страницу сначала превратить в картинку, документ может выглядеть серым и при этом потерять важные свойства. Для такой задачи в DOKIVO появился отдельный режим «Оттенки серого · сохранить вектор и текст».
Разница заметна на небольшом тексте, тонких линиях и интерактивных полях. Векторный текст описан шрифтом и геометрией, а не только готовыми пикселями. Его можно рисовать заново при увеличении. Растровая страница имеет фиксированное разрешение: повышение масштаба просмотра не возвращает утраченные детали. Поэтому выбор режима должен зависеть от задачи, а не только от желаемого цвета страницы.
Откройте PDF в оттенки серого или инструкцию по режимам обработки. Для нового векторного варианта мы опубликовали исходные контрольные PDF, настоящие результаты и методику. Их можно скачать и проверить в своей программе; это полезнее общей фразы о сохранении качества.
Как перекрашивается содержимое без замены всего PDF картинкой
Внутри PDF есть потоки содержимого страниц, шрифты, изображения, формы, ссылки и каталог документа. Если пересобрать документ только из готовых изображений страниц, часть этой структуры больше не нужна и теряется. Наш векторный режим решает более узкую задачу: перекрасить содержимое страницы и сохранить исходную структуру там, где она поддерживается.
Для преобразования цвета используется Ghostscript. Затем DOKIVO переносит преобразованные потоки содержимого и их ресурсы в исходный граф PDF. Каталог, поля и пометки остаются исходными. Перед выдачей результата дополнительно проверяются текст и геометрия; неподдерживаемая структура вызывает понятный отказ, а не молчаливую замену документа картинкой.
Нового OCR этот путь не выполняет. Если в исходном скане уже есть невидимый текстовый слой, проверяется его сохранность. Если текстового слоя нет, сделать страницу серой недостаточно для поиска слов. Тогда требуется отдельное распознавание PDF, а результат OCR нужно сверять по изображению.
| Задача | С чего начать | Что проверить после |
|---|---|---|
| Серый PDF с поиском и формой | Сохранить вектор и текст | Копирование, поля, вид в программе получателя |
| Подготовка изображения скана | Растровый режим с нужными настройками | Разрешение, мелкий текст и контраст |
| Поиск по скану без текста | Отдельное OCR | Числа, строки и соответствие исходнику |
Что было в открытом контрольном наборе
25 октября проверили два синтетических четырёхстраничных документа. Это восемь сценарных страниц, а не восемь независимых PDF. Первый документ проверял кириллицу, латиницу, карты шрифтов, составные буквы и похожие символы. Второй — векторную страницу, скан с существующим OCR-слоем, цветную форму и серую страницу с навигацией.
Для каждого исходника получили три результата: DOKIVO с сохранением вектора, собственный растровый режим 144 DPI и отдельную открытую команду Ghostscript 10.05.1. Всего шесть обработок. Этот опыт не является тестом текущих продуктов сторонних сервисов: запуск открытой команды Ghostscript не воспроизводит их настройки и внутреннюю логику.
Результаты повторно читали PDFium через pypdfium2 и PDF.js. Текст сравнивали полностью после явно описанной нормализации NFC и пробелов, а поисковые строки проверяли отдельно. Это разные критерии: успешный поиск нескольких фраз не доказывает буквальное совпадение всего текста страницы. Методику, файлы и данные оставили рядом, чтобы этот переход можно было проверить.
Поиск, мелкий текст и поля: отдельные результаты
В векторном результате DOKIVO точный текст совпал на всех восьми страницах в обоих читателях, а шестнадцать контрольных поисков прошли полностью. На семи исходно векторных страницах не появился новый растр поверх текста и линии. Для чёрного текста 6 pt контрольные изображения при 576 DPI совпали с исходными на восьми страницах.
Проверка тонкой линии дала точное совпадение на семи страницах из восьми. На исходном скане линия немного отличалась и у нашего векторного результата, и у открытой команды Ghostscript. Это ограничение не спрятано в общем среднем: скан остаётся изображением, а сохранение структуры не означает побайтное равенство каждого его пикселя.
Текстовое поле и флажок сохранились редактируемыми: два поля из двух. В отдельной копии изменили текст на «ПРОВЕРКА_028», сняли флажок, сохранили PDF снова и независимо прочитали новые значения PDFMiner. Проверяли также три цели ссылок и две закладки. Работа во всех существующих настольных редакторах из этого небольшого набора не следует.

Для сравнения: собственный растровый режим потерял интерактивные поля и на одной странице изменил составные символы. У открытой команды Ghostscript поля тоже не сохранились, но все шестнадцать поисковых запросов прошли; строгая проверка текста дала семь из восьми из-за добавленного расплющенного значения формы. Важно описывать этот результат точно, без неверного вывода «у другого варианта весь текст повреждён».
Как проверяли механизм сохранения формы
Одного удачного PDF мало для объяснения технической причины. В отдельном контроле взяли один и тот же преобразованный файл до и после переноса содержимого в исходную структуру. В восстановленном результате вернулись форма, ссылки и закладки. Его SHA-256 полностью совпал с настоящим векторным результатом второго документа; содержимое контролируемых страниц до и после переноса совпало.
При первом чтении обнаружили ошибку измерителя: PDFium продолжал рисовать формы даже с выключенными аннотациями. Наблюдение исправили явным отключением отрисовки форм для анализа содержимого страницы. Повторно читались прежние PDF с неизменными SHA, новых преобразований не было. Четыре затронутых показателя поправили открыто, остальные метрики оставили прежними.
Это разделяет изменение продукта и исправление проверки. Нельзя объявить улучшение качества только потому, что измеритель стал считать иначе. Публикация содержит точные версии, параметры и границы, а не только итоговую диаграмму. Для читателя это означает возможность сравнить тот же исходник с тем же готовым файлом.
Как выбрать режим и оценить свой результат
- Откройте инструмент перевода PDF в серый и выберите исходный файл.
- Для поиска, копирования и поддерживаемой формы выберите сохранение вектора и текста. Для работы с изображением скана изучите параметры растрового режима.
- После скачивания найдите характерную строку и скопируйте её. Увеличьте мелкий текст и тонкие линии.
- Если есть поля, измените учебное значение в копии и сохраните её в программе получателя. Не проверяйте важный документ только по миниатюре.
- При необходимости скачайте наш открытый набор и сопоставьте поведение своего редактора с приведённой методикой.
Слои, теги доступности, цифровые подписи и сложные печатные профили не входят в заявленный охват этого режима. Цвета полей и пометок сохраняются. Универсального выигрыша размера тоже нет: в одном контрольном документе наш файл меньше результата открытой команды, в другом — больше. Здесь главный результат — сохранённые свойства документа, а не обещание минимального числа байтов.
Частые вопросы
Весь видимый PDF станет серым?
Серым становится содержимое страниц. Цвета полей и пометок сохраняются; именно поэтому результат с формой нельзя оценивать только по общему впечатлению от цвета.
Поиск появится в скане автоматически?
Нет, новое OCR не выполняется. Сохраняется поддерживаемый существующий текстовый слой. Для скана без него требуется отдельное распознавание.
Можно проверить утверждения на тех же файлах?
Да. В открытом исследовании доступны два исходника, шесть результатов, методика и измерения. Это синтетические контрольные документы без клиентских данных.
Векторный режим всегда лучше сжимает?
Нет. Размер зависит от структуры исходника и сохранённых объектов. Проверка подтверждает отдельные свойства текста, формы и изображения на описанном наборе, а не универсальное преимущество размера.