首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将canvas fabric更改为静态canvas

如何将canvas fabric更改为静态canvas
EN

Stack Overflow用户
提问于 2015-02-24 17:32:07
回答 2查看 2.4K关注 0票数 2

我正在使用Fabric.js在html5中构建一个应用程序。我想移除fabric canvas的鼠标事件监听器,让它像静态画布一样,但我不知道怎么做。请帮帮忙。

EN

回答 2

Stack Overflow用户

发布于 2015-02-24 19:36:29

试试这个:

代码语言:javascript
复制
(function() {
  var canvas = this.__canvas = new fabric.StaticCanvas('c');

  canvas.add(
    new fabric.Rect({ top: 100, left: 100, width: 50, height: 50, fill: '#f55' }),
    new fabric.Circle({ top: 140, left: 230, radius: 75, fill: 'green' }),
    new fabric.Triangle({ top: 300, left: 210, width: 100, height: 100, fill: 'blue' })
  );

  fabric.Image.fromURL('../lib/pug.jpg', function(img) {
    canvas.add(img.set({ left: 400, top: 350, angle: 30 }).scale(0.25));
  });

  function animate() {
    canvas.item(0).animate('top', canvas.item(0).getTop() === 500 ? '100' : '500', { 
      duration: 1000,
      onChange: canvas.renderAll.bind(canvas),
      onComplete: animate
    });
  }
  animate();
})();

来源:http://fabricjs.com/static_canvas/

希望这能有所帮助。

票数 3
EN

Stack Overflow用户

发布于 2015-02-26 04:22:11

我遇到了同样的问题。我解决这个问题的方法是将"selectable: false“选项传递给新的fabric对象。

代码语言:javascript
复制
    this.backgroundFabric = new fabric.Rect({ fill: "black",
            width: dimX,
            height: dimY ,
            top: 0,
            left: 0,
            selectable: false });
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28692180

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档