javascript - 合并两个 Canvas

标签 javascript html canvas

如果我有 2 个 Canvas :

第一个 Canvas (canvas1) 是包含文本的基本 Canvas ,将保存为图像 (canvas1 + canvas2)。

第二个 (canvas2) 包含可以通过 keydown 在 canvas2 中移动的图像。该代码适用于 canvas2,因为我首先清除了 canvas2,然后清除了 context2.drawImage(img,x,y)

但是如果我写( canvas1.drawImage(canvas2, 0, 0) 然后图像的运动显示在 Canvas 1 中。如果我说清除 Canvas 1 然后 canvas1。 drawImage(canvas2, 0, 0) 文本将消失。

所以我的问题是:当用户完成移动图像而不是在图像移动过程中时,如何在 Canvas 1 上绘制 Canvas 2?

最佳答案

我不是很清楚你为什么要这样做,但如果你希望 Canvas 1 始终显示 Canvas 1+2,那么你可以随时保存 Canvas 1 的内容:

  1. 将 Canvas 1 绘制到内存中的 Canvas (称为 canvas3)
  2. 将 Canvas 2 绘制到 Canvas 1
  3. 将 Canvas 3(保存在 Canvas 1 中)绘制回 Canvas 1

http://jsfiddle.net/Jvgxb/14/

关于javascript - 合并两个 Canvas ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6685403/

相关文章:

javascript - 如何在没有正则表达式的情况下检查数组中的单词是否包含在字符串中?

javascript - 如何使用javascript隐藏一个div

javascript - 如何增加 Canvas 长度?

javascript - html5 canvas - 保存路径或剪辑区域以重复使用

javascript - jQuery .getJSON() 不解析所有对象

java - 从 jscript 获取字符串值到 servlet

javascript - 在输入类型复选框上使用 JQuery ReplaceWith

html - Bootstrap : Maintain table size fixed horizontally during collapse/expand

javascript - 单击文本以选中复选框

android - 不规则形状怎么画?