Захватить подпись с помощью HTML5 и iPad - PullRequest
148 голосов
/ 22 июня 2010

Кто-нибудь знает, как это можно сделать? Вы бы использовали объект canvas, svg, jQuery и т. Д.?

Ответы [ 6 ]

290 голосов
/ 20 июня 2013

Вот еще одна версия на основе холста с кривыми переменной ширины (на основе скорости рисования): демонстрация в http://szimek.github.io/signature_pad и код в https://github.com/szimek/signature_pad.

signature sample

58 голосов
/ 22 июня 2010

Отлично подойдет элемент canvas с некоторым JavaScript.

Фактически, Signature Pad (плагин jQuery) уже реализовал это.

15 голосов
/ 23 июня 2010

Вот быстро взломанная версия этого с использованием SVG Я только что сделал.Хорошо работает на моем iPhone.Также работает в настольном браузере с использованием обычных событий мыши.

12 голосов
/ 01 июня 2012

Возможно, двумя лучшими браузерными технологиями для этого являются Canvas с резервной копией Flash.

Мы использовали VML для IE в качестве резервного копирования для Canvas, но он был намного медленнее, чем Flash.SVG работал медленнее, чем все остальные.

В jSignature (http://willowsystems.github.com/jSignature/) мы использовали Canvas в качестве основного, с откатом на эмулятор Canvas на основе Flash (FlashCanvas) для IE8 и менее.Я бы сказал, очень хорошо сработало для нас.

1 голос
/ 14 июня 2017

Варианты, перечисленные выше, очень хороши, однако, здесь есть еще несколько по этой теме, которые я исследовал и натолкнулся.
1) http://perfectionkills.com/exploring-canvas-drawing-techniques/
2) http://mcc.id.au/2010/signature.html
3) https://zipso.net/a-simple-touchscreen-sketchpad-using-javascript-and-html5/

И, как всегда, вы можете сохранить холст в изображение:
http://www.html5canvastutorials.com/advanced/html5-canvas-save-drawing-as-an-image/

удачи и счастливого подписания

0 голосов
/ 04 августа 2014

Другое поле подписи OpenSource - https://github.com/applicius/jquery.signfield/, зарегистрированный плагин jQuery с использованием Sketch.js.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...