Не позволяйте процессу допечатной подготовки снова замедлиться! Наши собственные-инструменты повысили эффективность почти в 10 раз.
Предыстория разработки: исходя из реальных производственных потребностей.
Допечатная обработка документов в цифровой печати занимает слишком много времени. После общения с операторами на переднем крае были выявлены и уточнены три основные потребности.
(1) Пакетная проверка количества страниц документа: во время печати и верстки часто необходимо убедиться, что в документе имеется четное количество страниц; в противном случае это может легко привести к перерасходу печатных материалов или ошибкам переплета.
(2) Автоматическая обработка документов с нечетными-страницами. Для документов с нечетными страницами в конце необходимо добавлять пустые страницы, а четные страницы остаются без изменений.
(3) Пакетная проверка изогнутости текста. Чтобы избежать ошибок печати, вызванных отсутствием шрифтов, убедитесь, что текст в документе преобразован в кривые (т. е. «изогнут»).
В результате исследования Adobe Acrobat и различных представленных на рынке плагинов для обработки PDF было установлено, что существующие инструменты либо функционально избыточны и сложны, либо не соответствуют реальным производственным процессам компании, особенно со скрытыми рисками в безопасности обработки инверсии. Что еще более важно, аналогичные отечественные инструменты часто требуют оплаты, что приводит к более высоким-затратам на долгосрочное использование. Основываясь на этих практических вопросах, компания решила разработать легкий, точный и специализированный инструмент, адаптированный под нужды компании.
Инструмент проверки и обработки количества страниц PDF
01
Основные функции и логика суждения
Основная цель этого инструмента — обеспечить, чтобы все документы, которые будут распечатаны, имели четное количество страниц. Суждение и подход к исполнению заключаются в следующем.
(1) Механизм обнаружения страниц: считывает метаданные PDF-документов через библиотеку PyMuPDF для непосредственного получения общей информации о странице.
(2) Логическое определение четности: используйте операцию модуля (номер страницы %2) для определения четности. Если результат равен 1, это означает, что это нечетные страницы; если он равен 0, он считается четным.
(3) Стратегия дифференцированной обработки: для страниц с нечетными-нумерациями автоматически добавляется одна пустая страница в конце документа, соответствующая размеру исходного документа; Для четных-документов содержимое оставляйте без изменений и копируйте непосредственно в выходной каталог.
(4) Принцип обеспечения безопасности: все обработанные документы сохраняются в назначенном каталоге «Обработанные файлы», при этом исходные файлы сохраняются во избежание повреждения файлов из-за неправильной эксплуатации, как показано на рисунке 1.
Рис. 1. Интерфейс инструмента проверки и обработки количества страниц PDF-файла
02
Точки технической реализации
Инструмент использует Tkinter для создания графического интерфейса и в основном включает в себя три функциональных модуля.
(1) Модуль выбора каталога: поддерживает визуальный выбор каталога исходного файла и выходного каталога, при этом выходной каталог по умолчанию является подпапкой в исходном каталоге.
(2) Модуль пакетной обработки: использует технологию многопоточности для выполнения фоновой обработки, избегая зависаний интерфейса, и одновременно отображает ход обработки в реальном времени через индикатор выполнения.
(3) Модуль отображения результатов: представляет результаты обработки каждого файла в табличном формате, включая исходное количество страниц, действие обработки и информацию о состоянии, различая успешные и неудачные состояния по цвету.
Инструмент проверки преобразования кривых PDF
01
Основные функции и логика суждений
Инструмент проверки преобразования кривых направлен на определение того, был ли текст в документе преобразован в кривые. Его основная логика принятия решений основана на анализе информации о шрифтах в PDF-документе.
(1) Обнаружение существования текста: определяет, содержит ли документ редактируемый текст, путем извлечения текста со страниц.
(2) Анализ информации о шрифтах: анализирует список встроенных в документ шрифтов. Если информация о шрифте существует, это означает, что текст не был преобразован в кривые.
(3) Комплексные правила оценки: если есть текстовое содержимое и нет информации о шрифте, это означает, что текст был преобразован в кривые (зеленая отметка); если текстового контента нет, конвертация не требуется (зеленая отметка); если есть текстовое содержимое и информация о шрифте, текст не был преобразован в кривые (красная отметка), как показано на рисунке 2.
Этот инструмент специально разработан для режима «только проверка, не конвертирование». Основная причина заключается в том, что, по отзывам операторов, выполнение преобразования кривых файлов, содержащих официальные печати, может легко привести к потере печатей или другой графики, поэтому инструмент сохраняет только функцию проверки.

Рис. 2. Инструмент проверки кривых PDF
02
Ключевые моменты технической реализации
Этот инструмент также использует Tkiner для создания интерфейса с тремя ключевыми техническими моментами.
(1) Извлечение информации о шрифтах: используя функцию анализа текстовых блоков PyMuPDF, получите все имена шрифтов и количество их вхождений в документ.
(2) Визуализация результатов: используйте древовидное представление результатов проверки, интуитивно различая различные состояния с помощью цветов и значков.
(3) Функция статистики статуса: автоматически подсчитывает количество документов, соответствующих требованиям, помогая операторам быстро оценить общий статус проверки.
Проблемы и решения в процессе разработки
Будучи не-профессиональным разработчиком, я столкнулся со многими техническими проблемами во время разработки инструмента. Конкретные проблемы и решения заключаются в следующем.
(1) Проблема с глубиной анализа PDF: первоначальная библиотека PDF не могла точно извлечь информацию о шрифте, но после предложения ИИ переключение на библиотеку PDF PyMu решило проблему.
(2) Проблема с задержкой интерфейса. При пакетной обработке большого количества файлов интерфейс часто перестает отвечать на запросы. Под руководством ИИ было реализовано решение многопоточной обработки, эффективно решившее эту проблему.
(3) Искаженный текст на китайском языке. Путем настройки параметров шрифта и настроек кодировки устраняется проблема искажения китайских символов, отображаемых в интерфейсах и экспортируемых файлах.
(4) Механизм обработки исключений. Для решения проблемы сбоев программы, вызванных поврежденными PDF-файлами, механизм захвата исключений был улучшен, чтобы гарантировать, что сбой отдельного файла не повлияет на весь процесс.
На протяжении всего процесса разработки инструменты искусственного интеллекта играли важную роль технических консультантов, не только предоставляя ключевые примеры кода, но и объясняя принципы анализа формата PDF-файлов, помогая разработчикам быстро освоить специализированные знания.
Ценность и перспективы применения инструментов
Применение этих двух инструментов привело к значительному повышению эффективности производственной работы, что особенно отражено в следующих двух аспектах.
(1) Экономия времени: ручные проверки, которые раньше занимали 1 час, теперь можно выполнить за 5 минут, что повышает эффективность почти в 10 раз.
(2) Повышенная стабильность качества: эффективно предотвращается оплошность при ручной проверке, обеспечивая стабильное качество печати.
Документирование процесса разработки этих двух гаджетов направлено на то, чтобы передать философию работы «исследований и инноваций», сосредоточенную на решении конкретных проблем в реальном производстве, оптимизации традиционных рабочих процессов с помощью технических средств и, в конечном итоге, на достижении снижения затрат и повышения эффективности.

