Почему регистрационный номер или штамп не отображается в PDF-файле в 1С:Документооборот и как это исправить?

Программист 1С v8.3 (Управляемые формы) 1С:Документооборот
← К списку

Мы часто сталкиваемся с ситуацией, когда после регистрации документа в системе "1С:Документооборот" (1С:ДО) ожидаемый регистрационный номер или штамп не появляется на PDF-файле. Эта проблема может быть вызвана различными причинами, от некорректных настроек до специфики работы с файлами, подписанными электронной подписью. Давайте вместе разберем эту ситуацию и выясним, как эффективно решить эту задачу.

Использование стандартного функционала 1С:Документооборот (Актуальные версии)

В современных версиях "1С:Документооборот", начиная, например, с версии 3.0.20, функционал по вставке регистрационного штампа и штрихкода в PDF-файлы был значительно улучшен и упрощен. Теперь для выполнения этой операции нам не требуется устанавливать сторонние программы, такие как ImageMagick, на сервере. Это значительно упрощает администрирование и повышает надежность системы.

Рассмотрим по шагам, как воспользоваться этим функционалом:

  1. Вызов команды: После регистрации документа перейдите в карточку зарегистрированного документа. В контекстном меню списка файлов вы обнаружите специальную команду "Вставить регистрационный штамп и штрихкод". Воспользуйтесь этой командой, чтобы инициировать процесс.

  2. Настройка внешнего вида: Мы можем задать все необходимые параметры оформления регистрационного штампа. Перейдите в раздел "Настройка программы – Документы – Настроить оформление регистрационного штампа". Здесь нам доступны следующие опции:

    • Выбор цвета штампа.
    • Настройка рамки и ее толщины.
    • Выбор шрифта для текста штампа.
    • Отображение или скрытие информации об организации.

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

  3. Расположение штампа: Обратите внимание, что выбранные нами параметры расположения штампа (например, левый нижний угол на первой странице) автоматически запоминаются для каждого сотрудника. Это очень удобно, так как каждый пользователь может настроить отображение штампа под свои предпочтения, и эти настройки будут сохраняться при последующих операциях.

Дополнительно хотим отметить, что существует также сервис "1С:Штамп". Этот сервис предоставляет расширенные возможности для вставки штампов в различные форматы документов, включая PDF, и может быть полезен для решения более сложных задач по автоматизации штампования документов.

Программная реализация и старые версии (Использование внешних утилит)

Если вы используете более старые версии "1С:Документооборот", в которых отсутствует встроенный функционал по работе с PDF, или если вам требуется специфическая логика нанесения штампов, вы можете рассмотреть программную реализацию с использованием внешних утилит. Это более сложный подход, но он предоставляет большую гибкость.

Разберем основные шаги такого подхода:

  1. Необходимые утилиты: Для реализации такого решения нам потребуется установить на сервере две внешние утилиты: ImageMagick и Ghostscript. Ghostscript используется для преобразования PDF в изображения, а ImageMagick — для нанесения штампа на эти изображения и последующего сбора их обратно в PDF.

    Важный момент: При установке ImageMagick рекомендуется выбирать пакет Q8 (8-bit per pixel) для лучшей производительности, если только вам не требуется обработка изображений с очень высокой цветовой глубиной.

  2. Процесс преобразования: Логика работы будет следующей:

    • Сначала PDF-файл поэтапно преобразуется в набор отдельных изображений (например, в формат JPEG или PNG), по одному изображению на каждую страницу.
    • Затем на каждое из этих изображений с помощью ImageMagick наносится желаемый регистрационный штамп. Мы можем программно указать координаты, текст, шрифт и другие параметры штампа.
    • После этого все обработанные изображения собираются обратно в новый PDF-файл.

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

Важный нюанс при работе с электронной подписью

При работе с документами, уже подписанными электронной подписью (ЭП), нам необходимо быть крайне внимательными. Проанализируем ситуацию:

Общие рекомендации и выводы

Подводя итог, хотим подчеркнуть ключевые моменты, которые помогут нам решить проблему с невставкой регистрационного номера в PDF:

  1. Проверьте версию 1С:Документооборот: В первую очередь, выясним, какая версия конфигурации у нас используется. Если это актуальная версия (например, 3.0.20 и выше), то, скорее всего, проблема решается стандартными средствами.

  2. Проверьте настройки штампа: Убедитесь, что все параметры оформления и расположения регистрационного штампа заданы корректно в разделе "Настройка программы – Документы – Настроить оформление регистрационного штампа".

  3. Используйте команду в карточке документа: Не забывайте про команду "Вставить регистрационный штамп и штрихкод" в контекстном меню файла.

  4. Учитывайте электронную подпись: Всегда помните о влиянии изменений на файлы с электронной подписью и используйте версионирование.

  5. Для старых версий: Если стандартный функционал не подходит или версия устаревшая, рассмотрите программную реализацию с использованием ImageMagick и Ghostscript, но будьте готовы к увеличению размера файла и сложности настройки.

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

← К списку