hwd tech
блог
Make Sign:
приложение для электронной цифровой подписи
Необычное задание на пост-стажировочный период, которое превратилось в интересный проект.
21-06-2019
IT-стажировка, обучение
Время чтения: 4 минуты
Иногда IT стажировка — это настоящая сказка.

Прошло несколько непростых месяцев, все оказались молодцы, всех трудоустроили, на последней странице всевозможных публикаций и отчетов пишут: «И работали они долго и счастливо, и вышли на пенсию в один день». Конец. Что происходит с бывшими стажерами, а ныне уже младыми разработчиками дальше — никто не знает.

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

Удобных программ/приложений под наши требования (для ведения внутреннего документооборота) не нашлось. К тому же ценник у «того, что есть» оказался ощутимый. И кроме того, если говорить об интеграции в бизнес-процессы, то «чужую» программу внедрить гораздо сложнее, чем свою.
Например, в Adobe Acrobat Reader встроена функция, позволяющая сделать примерно то же самое — подписать PDF-файл с помощью планшета. Но в процессе под автографом появляются автоматически совершенно ненужные надписи — «Name», «Reason», «Date» — засоряющие документ. Для нормальной работы пришлось бы вставлять костыли и как-то решать вопросы с правообладанием. Но это лишние усилия.
Сейчас большой популярностью пользуются сервисы, которые позволяют подписывать документы в браузере. У них есть очевидный минус — приходится загружать туда картинки, затем на тачпаде рисовать подпись и так далее. Но если у вас уже есть планшет для ЭЦП, все становится проще и лучше. У нас такой планшет недавно появился, что также послужило толчком для начала разработки.

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

И еще кое-что: наша тяга к современным технологиям подтолкнула нас к исследованиям. Как мы уже сказали, в офисе завелся планшет для электронной подписи документов — Wacom STU 430, с которым хотелось поэкспериментировать и тщательно изучить его возможности.
Зачем нужна электронная цифровая подпись?
Сейчас использование электронных цифровых подписей — это важное решение для упрощения бизнес-процессов и повышения производительности. С помощью технологии eSignature можно перевести свои архивы в цифровую форму, таким образом, существенно сократив расход бумаги. И, что скрывать, время, которое тратится впустую на печать и сканирование одних и тех же документов.

Важно помнить, что ЭЦП — это не просто физический объект (некий «рисунок» подписи), она имеет логический характер, в ней учитывается не только вид подписи, но и сила нажатия, скорость и вектор движения стилуса, угол, под которым он прикасается к поверхности планшета и много других параметров. Это позволяет гораздо лучше связать автора документа, содержание документа и ЭЦП в единый механизм. В результате подпись превращается в некий 3D объект, который позволяет проводить анализ подлинности на новом уровне.
Знакомьтесь,
Wacom STU 430
Свой выбор мы остановили на планшете Wacom STU 430 (на фото ниже). Это монохромный планшет для подписи, который имеет 1024 уровня чувствительности к нажатию пера и множество других полезных фич.

Но! Как мы уже сказали, удобной программы под наши требования в комплекте с планшетом не было. Да, программное обеспечение Wacom sign pro PDF позволяет сохранять и архивировать подписанные договоры. Но во-первых оно платное, а во-вторых не позволяло успешно интегрировать его в наши процессы.
Наша цель
Наша цель была автоматизировать документооборот в компании. Было решено в компании все подписи на внутренних документах осуществлять в электронном виде с помощью планшета Wacom, чтобы не сканировать ничего лишнего. Таким образом удалось существенно оптимизировать внутренние процессы документооборота и избавиться от лишнего «вороха» бумаг.

И параллельно мы тестировали Wacom, смотрели, как он работает и что дает прилагающийся к нему SDK — software development kit (тоже, кстати, платное удовольствие).

Знакомиться с миром подписания документов и обеспечить офис нужным приложением и поручили в качестве одного из стартовых заданий нашей коллеге, успешно прошедшей стажировку. Она разработала компактное и удобное приложение, названное «Make Sign».
Как работает приложение Make Sign
Подробности о том, как оно работает можно посмотреть на гифке ниже. По сути все просто: загружаем в приложение нужный нам PDF-файл для подписи, устанавливаем курсор туда, где должен появиться ваш автограф, расписываемся с помощью планшета в специальном поле — и все. Подпись автоматически размещается в указанном месте.
Обращаем ваше внимание на некоторые детали.
Как это сделано?
Приложение разработано на C# при помощи Wacom STU SDK (тоже, кстати, платное удовольствие, но все же более выгодное, чем скачанная готовая программа).

Задача была следующая: с помощью Wacom software development kits (Wacom STU SDK) каким-то образом извлекать картинку подписи в формате .PNG (без фона) и затем вставлять в PDF-документ. Также необходимо было, чтобы приложение учитывало указанные координаты и вставляло подпись именно в нужное место.

Сначала была задумка отображать PDF-документ с помощью браузера, но там оказалось сложно получать координаты клика (приходилось в браузер добавлять дополнительную панель — и все равно возникала проблема, что клик нельзя напрямую отследить.

Потом появилась идея не использовать браузер, а в приложении «разбить» PDF-документ на картинки, на них клик легко отслеживается без лишних сложностей.
Резюме
В настоящее время приложение «Make Sign» еще не доступно для широкой аудитории, но мы планируем сделать его таковым, поскольку это действительно удобная фича.

Если вам интересно почитать больше о наших стажерах, нажмите СЮДА.

Больше наших кейсов, исследований и опыта — в блоге.
Раз в месяц мы делаем рассылку с анонсом новых кейсов и статей, опубликованных на сайте.
Подпишитесь на обновления.
Гарантируем - никакого спама. Нажимая на кнопку, вы даете согласие на обработку персональных данных и соглашаетесь c политикой в отношении обработки персональных данных.