Назначение
Наносит на PDF-документ штамп, собранный по профилю штампа: текстовые строки, изображения (подписи, логотипы), QR-код, фрагмент отчёта Telerik. Примеры: штамп «В производство работ», QR-код проверки актуальности документа, штамп согласования. Настройка профилей описана в статье Настройки проставления штампов .
Сведения о типе действия
| Параметр | Значение |
|---|---|
| Название в портале | Добавить штамп |
| Activity в Elsa (обработчик) | Добавить штамп (AddStampActivity) |
| ID типа элемента действия | 7430e850-7da0-43a3-9392-d43ed781bf74 |
| Проверка условий правила | Да |
| Поддержка «Исходный элемент(ы) (формула)» | Да |
Атрибуты действия
| Атрибут | Обязательный | Описание | Пример |
|---|---|---|---|
| Название | Да | Текст. Название действия. | Штамп «В производство работ» |
| Профиль штампа | Да* | Выбор из списка «Профили штампов». Определяет содержимое штампа. | В производство работ |
| Размер штампа | Да | Ширина и высота штампа в пунктах (pt) через «;» или «,». Высота пересчитывается по фактическому содержимому. | 150;120 |
| Расположение от | Нет | Точка привязки — угол листа, от которого отсчитываются координаты. По умолчанию — правый нижний угол. | Правый нижний угол |
| Расположение штампа | Да | Смещение X;Y в пунктах от точки привязки (см. таблицу ниже). | 190;245 |
| Номер страницы | Нет | Страница, на которую наносится штамп. Если не заполнено — штамп наносится на все страницы. Правила нумерации — ниже. | 1 |
* Если профиль не указан, элементы профиля ищутся по самому действию (действие выступает профилем).
Координаты
1 pt = 1/72 дюйма ≈ 0,353 мм; лист A4 — 595 × 842 pt. Координаты рассчитываются по видимой области страницы (CropBox) с учётом поворота страницы.
| Точка привязки | X — расстояние | Y — расстояние |
|---|---|---|
| Левый нижний угол | от левого края листа до левого края штампа | от нижнего края листа до нижнего края штампа |
| Левый верхний угол | от левого края листа до левого края штампа | от верхнего края листа до верхнего края штампа |
| Правый верхний угол | от правого края листа до левого края штампа | от верхнего края листа до верхнего края штампа |
| Правый нижний угол (по умолчанию) | от правого края листа до левого края штампа | от нижнего края листа до нижнего края штампа |
Правые углы
Для правых углов X отсчитывается до левого края штампа, поэтому X должен быть не меньше ширины штампа. Пример: размер 150;120, привязка «Правый нижний угол», расположение 190;245 — штамп займёт полосу от 190 до 40 pt от правого края и от 245 pt от нижнего края вверх.
Номер страницы
| Значение | Страница |
|---|---|
| не заполнено | все страницы документа |
| N ≥ 1 | страница N |
| 0 | первая страница |
| −N | страница «всего страниц − N» (−1 — предпоследняя) |
Как работает
- Проверяются условия правила; определяются целевые элементы.
- Если расширение файла целевого элемента не PDF — элемент пропускается без ошибки.
- Движок вызывает API модуля Stamp портала (
POST stamp/api/stamp/add/{itemId}/{actionId}). - Модуль Stamp строит таблицу штампа по элементам профиля (формулы вычисляются в контексте документа), наносит её на страницы и сохраняет изменённый файл в элемент (атрибут «Файл»).
Вариант: штамп с профилем из этапа процесса УТОЧНИТЬ
Тип действия с ID d1b55110-1258-4e05-8321-cbdd8acca085 обрабатывается тем же обработчиком, но профиль штампа берётся из атрибута «Профиль штампа» текущего этапа процесса (см. шаблоны этапов), на котором сработало правило. В этом режиме:
- правило настраивается на процессе, а документы для штампа задаются полем «Исходный элемент(ы) (формула)» (например, вложения процесса);
- размер, расположение и номер страницы берутся из самого профиля штампа этапа;
- если у этапа профиль не задан, используются параметры действия.
Каскад по атрибуту «Файл»
Штамп изменяет атрибут «Файл». Если для типа файла настроено правило на изменение «Файла» (например, сброс статуса при новой версии), оно тоже сработает. Исключайте такие срабатывания условием на системного пользователя: Str(Id(This("editor"))) != "00000000-0000-0000-0000-000000000001".
Особенности
- Повторное срабатывание правила наносит штамп повторно — ограничивайте правило условиями.
- Штамп наносится поверх содержимого страницы.
- Шрифт штампа задаётся в профиле (файл шрифта с поддержкой кириллицы).