UNPKG

@wise-community/drawing-tool

Version:
109 lines (108 loc) 4.17 kB
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <title>HTML5 Drawing Tool Demo</title> <style type="text/css"> body { font-family: Arial; } </style> </head> <body> <div class="container"> <h1>HTML5 Drawing Tool</h1> <div id="drawing-tool"></div> <h2>API examples:</h2> <div> <button id="set-background">Set background</button> <input type="text" id="background-src" value="https://ccshutterbugtest.s3.amazonaws.com/7a72684bb7e.png" size="70"></input> <button id="set-background-top-left">Set background top left</button> <button id="resize-background">Resize background to canvas</button> <button id="resize-canvas">Resize cavas to background</button> <button id="shrink-background">Shrink background to cavas</button> </div> <div> <button id="clear">Clear</button> <button id="save">Save</button> <button id="load" disabled>Load</button> </div> <div> <button id="pause-history">Pause history</button> <button id="restart-history">Restart history</button> <button id="reset-history">Reset history</button> </div> </div> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/fabric.js/1.5.0/fabric.js"></script> <link type="text/css" rel="stylesheet" href="../drawing-tool.css" /> <script src="../drawing-tool.js"></script> <script> var drawingTool = new DrawingTool("#drawing-tool", { stamps: { 'Molecules': [ 'https://interactions-resources.concord.org/stamps/simple-atom.svg', 'https://interactions-resources.concord.org/stamps/diatomic.svg', 'https://interactions-resources.concord.org/stamps/diatomic-red.svg', 'https://interactions-resources.concord.org/stamps/triatomic.svg', 'https://interactions-resources.concord.org/stamps/positive-charge-symbol.svg', 'https://interactions-resources.concord.org/stamps/negative-charge-symbol.svg', 'https://interactions-resources.concord.org/stamps/positive-atom.svg', 'https://interactions-resources.concord.org/stamps/negative-atom.svg', 'https://interactions-resources.concord.org/stamps/slow-particle.svg', 'https://interactions-resources.concord.org/stamps/medium-particle.svg', 'https://interactions-resources.concord.org/stamps/fast-particle.svg', 'https://interactions-resources.concord.org/stamps/low-density-particles.svg' ] }, parseSVG: true }); var state = null; $("#pause-history").on("click", function () { drawingTool.pauseHistory(); }); $("#unpause-history").on("click", function () { drawingTool.unpauseHistory(); }); $("#set-background").on("click", function () { drawingTool.setBackgroundImage($("#background-src").val()); }); $("#set-background-top-left").on("click", function () { const opts = { src: $("#background-src").val(), position: "top-left" }; drawingTool.setBackgroundImage(opts); }); $("#resize-background").on("click", function () { drawingTool.resizeBackgroundToCanvas(); }); $("#resize-canvas").on("click", function () { drawingTool.resizeCanvasToBackground(); }); $("#shrink-background").on("click", function () { drawingTool.shrinkBackgroundToCanvas(); }); $("#clear").on("click", function () { drawingTool.clear(true); }); $("#save").on("click", function () { state = drawingTool.save(); $("#load").removeAttr("disabled"); }); $("#load").on("click", function () { if (state === null) return; drawingTool.load(state); }); $("#pause-history").on("click", function () { drawingTool.pauseHistory(); }); $("#restart-history").on("click", function () { drawingTool.unpauseHistory(); }); $("#reset-history").on("click", function () { drawingTool.resetHistory(); }); </script> </body> </html>