Наложение графических слоёв

Для наложения штампов, графических и текстовых меток на документ необходимо установить модуль расширения PdfGraphicLayers, который можно скачать из центра загрузок Pilot. Там же можно взять готовые примеры графических слоёв для наложения на документы. Модуль позволяет добавлять графические слои при формировании печатного представления PDF-документов.

Печатное представление позволяет не нарушать целостность подписанного документа, накладывая на него визуальные элементы. Документ с наложенными штампами и другими элементами можно просматривать со включенной опцией Отображать штампы, выгружать его печатное представление и выводить на печать.

Для настройки правил наложения графических слоев документа после установки модуля расширения PdfGraphicLayers:

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

Список правил

На панели управления списком правил доступны команды:

  • Создать правило — добавляет новое правило в список правил. Применение нового списка правил осуществляется только после подтверждения редактирования правила по кнопке ОК.
  • Удалить правило — удаляет выбранное плавило из списка правил. Применение нового списка правил будет осуществлено только после подтверждения редактирования правила по кнопке ОК.
  • Экспортировать правило. Экспорт может использоваться для переноса правил из одной базы данных в другую или для клонирования выбранного правила. Экспорт правила осуществляется в файл в формате JSON.
  • Импортировать правило. Для импорта правила необходимо выбрать файл в формате JSON. Импортированное правило будет добавлено в список правил. Применение нового списка правил будет осуществлено только после подтверждения редактирования правила по кнопке ОК.
  • Проверить наложение в стороннем просмотрщике. Под сторонним просмотрщиком подразумевается приложение, по умолчанию ассоциированное для работы с PDF-документами на компьютере пользователя. При выполнении этой команды в необходимо выбрать документ, на который в тестовом режиме будут наложены графические слои согласно выбранному в списке правилу.

Редактирование правила

Правая часть интерфейса описания конфигурации отвечает за редактирование выбранного правила. Она состоит из вкладок:

  • Данные;
  • Позиционирование;
  • Графическое представление.

Вкладка Данные

Вкладка Данные отвечает за управление источником данных для наложения правила.

Флаг Включено отвечает за активность выбранного правила. Для временного отключения правила без необходимость удаления правила из БД можно отключить этот флаг.

Поле Наименование отвечает за имя правила в списке правил.

Поле Источник данных содержит две опции источника данных для правил наложения:

  • Документ. При использовании этой опции в качестве источника данных графический слой добавляется для документа один раз с учётом фильтра.
  • Электронная подпись. При использовании этой опции в качестве источника данных графический слой добавляется по одному для каждой электронной подписи документа с учётом фильтра и указанных ролей согласования. Например, если документ еще не подписан, правило не будет использовано, а если документ содержит 3 электронных подписи,то правило наложения будет использовано 3 раза для каждой подписи PDF-документа.

Поле Фильтр документов позволяет выбрать, для каких типов документов и каких значений их атрибутов будет применимо данное правило. Пустое значение поля отключает фильтрацию.

Поле Роли согласования активно только если в качестве источника данных выбрана Электронная подпись. С его помощью можно ограничить список электронных подписей, для которых будет применимо данное правило, с учётом роли подписанта из запроса на подпись. Пустое значение поля отключает фильтрацию. Можно указывать несколько значений ролей согласования через разделитель ;. Фильтр сработает, если будет найдена хотя бы одна указанная роль.

Поле Владелец сертификата активно только если в качестве источника данных выбрана Электронная подпись. С его помощью можно ограничить наложение правила только для электронных подписей с определенным владельцем сертификата (Субъектом).

Проверка соответствия владельца сертификата осуществляется по частичному совпадению. Например, для того, чтобы правило использовалось для сертификата с владельцем (Субъектом) E = ivanov@mycorp.ru, CN = Иван Иванович Иванов, OU = PEOPLE, OU = mycorp, DC = spb, DC = mycorp, DC = local, в поле Владелец сертификата можно указать только часть строки. Например: "Иван Иванович Иванов".

Пустое значение опции Владелец сертификата отключает фильтрацию. Можно указывать несколько значений через разделитель ;. Фильтр сработает, если будет найден хотя бы один указанный субъект.

Вкладка Позиционирование

Вкладка Позиционирование отвечает за расположение графического слоя на документе.

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

Значение Описание
1 Графический слой накладывается только на первую страницу.
1-3 Графический слой накладывается с первой по третью страницу включительно.
last Графический слой накладывается только на последнюю страницу.
all Графический слой накладывается только на все страницы.
1,last Графический слой накладывается только на первую и последнюю страницу.

Поле Режим поддерживает два режима:

  • В углу страницы. Используя данный режим, с помощью опций определите:
    • угол страницы, куда будет добавлен графический слой;
    • отступы от угла страницы;
    • отступы от предыдущего графического слоя;
    • угол поворота.
  • По текстовой метке. Для использования режима позиционирования По текстовой метке на этапе разработки документа необходимо заранее предусмотреть маркер в виде текста, который будет использован для позиционирования при наложении графического слоя. Этот текст введите в поле Текст для поиска. Он будет найден в PDF- документе с учётом значений полей Вхождения и Номера страниц и заменен на графический слой. Графическому слою можно также задать значения отступа от предыдущего слоя и угол поворота.

Вкладка Графическое представление

Графическое представление может быть разработано с использованием доступных графических примитивов:

  • Текст. Добавляет указанный текст с учётом заданного позиционирования, семейства, размера и цвета шрифта. В тексте могут быть использованы специальные символы для подстановки значений из атрибутов документа или электронной подписи.
  • Прямоугольник;
  • Эллипс;
  • Линия;
  • Полилиния;
  • Изображение. Поддерживаются изображения форматов PNG/JPG/JPEG. Рекомендуется минимизировать размер файлов, используемых в графических слоях изображений для оптимальной производительности. Максимальный размер файла изображения ограничен 500 КБ.
  • Штрихкод/QR-код. Поддерживаются QR-коды с уровнем корректировки ошибок L/M/Q/H и штрихкоды семейства Code128. Значение текста внутри штрихкода/QR-кода может быть сформировано с использованием специальных символов для подстановки значений из атрибутов документа или электронной подписи.

Таблица специальных символов для подстановки значений из атрибутов документа или электронной подписи

Указанные в таблице значения могут быть размещены в поле Текст при добавлении текстовой метки или в поле Значение при добавлении штрихкода или QR-кода.

Спецсимвол Описание
При использовании Документа в качестве источника данных.
{$Id} Идентификатор документа.
{$DisplayName} Отображаемое имя документа.
{$CreatedDate:d} Дата создания документа.
{$VersionDate:d} Дата создания текущей версии документа.
{$Version} Целочисленное значение версии документа (для формирования ссылки на версию).
{$Creator} Автор документа.
{$TypeName} Тип документа.
{$ServerUrl} Адрес подключения к Pilot-Server.
{$PageNumber}

Номер страницы.

{attrname} Значение атрибута attrname документа.
При использовании Электронной подписи в качестве источника данных.
{Signature.Role} Роль из запроса ЭП.
{Signature.Position} Должность из запроса ЭП.
{Signature.Subject}

DN сертификата ЭП.

{Signature.Subject.CN} CN сертификата ЭП. Обращение к другим полям из DN также доступно.
{Signature.Thumbprint} Отпечаток сертификата ЭП.
{Signature.ValidFrom:d}

Дата начала действия сертификата.

{Signature.ValidTo:d} Дата окончания действия сертификата.
{Signature.Timestamp:g}

Метка доверенного времени при ее наличии.

{Signature.SignDate:g}

Время подписания.