javascript - 如何获取 HTML Canvas 中旧生成元素的引用?

标签 javascript html html5-canvas

看看这个例子:

  var c=document.getElementById("myCanvas");
   var ctx=c.getContext("2d");

    // First rectangle created    
    ctx.fillRect(20,20,150,100);

    // Second rectangle created    
    ctx.fillRect(20,150,150,100);

    // Third rectangle created    
    ctx.fillRect(20,300,150,100);

我在这里创建了三个矩形。创建第三个矩形后,我想旋转第一个矩形。我现在如何获取第一个矩形的引用?

最佳答案

Canvas 只是一个愚蠢的像素网格。它不明白上面画了什么形状。您的代码(或您的代码使用的库)必须跟踪您绘制的形状。

相反,听起来您想要一个库来创建一个 scene graph , 比如 EaselJS , Paper.js , 或 KineticJS .这些库将维护一个数据结构来跟踪在 Canvas 上绘制了哪些形状,然后当您想要操作这些形状时它们将重新绘制它们。

关于javascript - 如何获取 HTML Canvas 中旧生成元素的引用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13973747/

相关文章:

javascript - 正则表达式包含某些字符和两个单词(true 和 false)

javascript - 我需要一种方法来执行包装在函数中的 ajax 调用数组

html5-canvas - 开放层 3 : Scaling canvas with text with 125% DPI since v4. x

javascript - 如何打开带有数据url图像的新页面?

javascript - 冒号运算符在这种情况下做什么?

javascript - 如何在 JavaScript 中使用字段名称作为初始化时的哈希表键?

javascript - 如何使 HTML 文件自动保存?

html - DIV 内垂直对齐,div 内有 block 元素

html - 为什么 bootstrap 中的 media-body 类宽度为 10,000px 而 media 类 overflow hidden 和缩放 1?

HTML 5 和 GPGPU