Кто-нибудь знает, как это можно сделать? Вы бы использовали объект canvas, svg, jQuery и т. Д.?
Кто-нибудь знает, как это можно сделать? Вы бы использовали объект canvas, svg, jQuery и т. Д.?
Ответы:
Вот еще одна версия на основе холста с кривыми переменной ширины (в зависимости от скорости рисования): демонстрация на http://szimek.github.io/signature_pad и код на https://github.com/szimek/signature_pad .
Элемент canvas с некоторым JavaScript отлично подойдет.
На самом деле, Signature Pad (плагин jQuery) уже реализовал это.
Вот быстро взломанная версия этого с использованием SVG, который я только что сделал. Хорошо работает для меня на моем iPhone. Также работает в настольном браузере, используя обычные события мыши.
Возможно, лучшими двумя браузерными технологиями для этого являются Canvas с Flash в качестве резервной копии.
Мы пробовали VML на IE в качестве резервной копии для Canvas, но это было намного медленнее, чем Flash. SVG был медленнее всех остальных.
В jSignature ( http://willowsystems.github.com/jSignature/ ) мы использовали Canvas в качестве основного, с откатом к Flash-эмулятору Canvas (FlashCanvas) для IE8 и менее. Я бы сказал, очень хорошо сработало для нас.
Уже перечисленные варианты очень хороши, однако вот еще несколько по этой теме, которую я исследовал и натолкнулся.
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/
удачи и счастливого подписания
Другое поле подписи OpenSource - https://github.com/applicius/jquery.signfield/ , зарегистрированный плагин jQuery, использующий Sketch.js.