Angular.js directive to paint on a canvas on desktop or touch devices