如何将保存的画布图形图像恢复到新的画布实例中
How can I restore a saved image of a canvas drawing into a new canvas instance?
我使用的是sketch.jshttp://intridea.github.io/sketch.js/这样用户就可以在我的应用程序中创建绘图了。一旦他们完成绘图,并点击保存,我使用以下功能将绘图转换为png图像:
convertCanvasToImage = (canvas) ->
image = new Image()
image.src = canvas.toDataURL("image/png")
image
然后我只是将图像附加到DOM中。
但是,如果用户以后想要编辑图形,该怎么办?我如何拍摄该图像并将其添加到sketch.js使用的画布中?
我尝试了以下操作,但没有成功。当你点击png图片时,我运行这段代码试图将图片附加到画布上,但它似乎根本不起作用。画布是模态的,一旦它出现,我运行以下代码将图像附加到画布,但没有图像出现。
template.$('#sketchModal').on 'shown.bs.modal', (e) ->
c = document.getElementById("sketchPad")
ctx = c.getContext("2d")
ctx.drawImage(e.target, 0, 0)
我以前没有使用过sketch js,但看到这段代码,我想到了
<div class="tools">
<a href="#tools_sketch" data-tool="marker">Marker</a>
<a href="#tools_sketch" data-tool="eraser">Eraser</a>
</div>
<canvas id="tools_sketch" width="800" height="300" style="background: url(http://farm1.static.flickr.com/91/239595759_3c3626b24a_b.jpg) no-repeat center center;"></canvas>
<script type="text/javascript">
$(function() {
$('#tools_sketch').sketch({defaultColor: "#ff0"});
});
</script>
您不想将图像附加到画布中,而是将其添加为背景。试试看,如果有效,请通知我。
相关文章:
- ES6构造函数返回基类的实例
- KnockoutJS-组件-多个实例
- 为什么无法在TypeScript中导出类实例
- 如何在GoogleWeb工具包(GWT)中从JSNI调用接口(实例化)
- fluxxor向一个flux实例添加一组以上的操作
- 使用jQuery获取Dropzone实例/对象
- "实例范围”;TypeScript类的getter/setter
- 如何在速度模板中获取LiferayPortlet实例id
- 同一项怎么可能在一个实例中未定义,却在另一个实例上定义
- 实例创建(JS)
- 显示模块模式在Knockout中设置模型的新实例
- 如何获取单选按钮的多个实例的选定单选按钮值
- 当同一浏览器的两个实例浏览时,Javascript页面如何具有唯一的ID
- 在哪里可以找到RXUI Javascript'时间飞逝'实例
- spine.js在启动时填充模型实例
- 不再需要时使用jQuery/kill实例
- 如何在用户输入时实例化数组
- 从Sequelize中的非实例更新
- 如何基于数组值创建新实例
- TinyMCE实例在切换角度路由选项时会消失