为了账号安全,请及时绑定邮箱和手机立即绑定

有什么办法克隆HTML5 canvas元素及其内容?

有什么办法克隆HTML5 canvas元素及其内容?

慕侠2389804 2019-11-30 14:35:51
有什么方法可以创建包含所有绘制内容的canvas元素的深层副本?
查看完整描述

3 回答

?
拉风的咖菲猫

TA贡献1995条经验 获得超2个赞

实际上,复制画布数据的正确方法是将旧画布传递到新的空白画布。试试这个功能。


function cloneCanvas(oldCanvas) {


    //create a new canvas

    var newCanvas = document.createElement('canvas');

    var context = newCanvas.getContext('2d');


    //set dimensions

    newCanvas.width = oldCanvas.width;

    newCanvas.height = oldCanvas.height;


    //apply the old canvas to the new one

    context.drawImage(oldCanvas, 0, 0);


    //return the new canvas

    return newCanvas;

}

使用getImageData用于像素数据访问,而不用于复制画布。使用它进行复制非常缓慢,并且很难在浏览器上进行。应该避免。


查看完整回答
反对 回复 2019-11-30
  • 3 回答
  • 0 关注
  • 2186 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信