Решение представляет набор функциональности по настройке и установке штампов на версии документов. Настройка позволяет в удобном для пользователя виде настроить расположение штампа на документе: первая страница, последняя, каждая страница, указать позицию расположения на странице, задать размер. Позволяет работать со штампами произвольного формирования, при помощи прикладной логики, штампов в виде BarCode128, QRCode, или загруженных в виде изображений. Присутствует возможность создания множества настроек под разные типы документов, для автоматического определения необходимых настроек штампа.
Использованные в решении подходы применялись на проектах:
- Проект 1 — Бионорика- Внедрение DirectumRX;
- Проект 2 — Рэд Винд - Внедрение DirectumRX;
- Проект 3 — Мерц Фарм - Внедрение DirectumRX;
- И многих других.
- Модуль Штампы (StampModule).
- Справочник Настройки штампов (StampSettings).
- Изолированная область (GenerateStampArea)
- Используемые внешние библиотеки: iTextSharp.dll – версия 5.5, System.Drawing.Common.dll – версия 6.0.
- Расширение возможностей настройки штампов, таких как введение информации для кодирования в BarCode128 и QRCode.
- Включение в решение работы функциональности по установке штампов средствами Aspose, реализованной в модуле «Документооборот». Обработка настроек установки штампа в клиенте системы.
- Обработка установки множественных штампов на документах, с указанием матрицы расположения.
- Создание публичной или новой версии документа по результату формирования штампа.
- Добавление в работу решения новых штампов, например, EAN13, Aztec, DataMatrix.
- В справочнике «Настройки штампов», при загрузке штампа в виде стороннего изображения, введено ограничение на загрузку файлов в формате JPG и PNG. При необходимости можно расширить набор форматов, с учётом поддержи их работы с iTextSharp, использующейся для установки на PDF версию документа. При загрузке стороннего изображения, производиться определение оригинального размера картинки, выводится пользователю и доступно для изменения.
- Вся обработка создания и установки штампов реализована в изолированной области, с передачей настроек штампа в виде структуры.
- Для примера демонстрации возможностей запуска, реализовано действие на обложке модуля «Установка штампа», в группе «Пробный запуск».
- Решение производит изменение последней версии документа, в формате PDF. При отсутствии версии в нужном формате, запускает преобразование существующей версии в PDF, используя методы конвертации модуля «Документооборот». Преобразованное тело документа заносится новой версией, после обрабатывается установка штампа.
- Обработка каждого вида штампа реализована в отдельной изолированной функции, представляя более удобный подход к их использованию и модификации.
- Заданные строки, в вычислении изолированных функций, используются для формирования BarCode128, QRCode, штампа через Drawing, применены в качестве примера, в связи с этим не вынесены в ресурсы или константы.