javascript - Fabric.js 中图像对象的问题

标签 javascript jquery canvas html5-canvas fabricjs

我是 fabric.js 的新手。我需要从 Canvas 中的 URL 加载多个图像并将它们添加为图像对象,以便我可以设置它们的 z 索引。

我尝试使用Image.fromURL但它没有返回对象,所以我无法设置它们的 z 索引。新fabric.Image从页面中获取图像,这样我就不会从中得到结果。

这就是我到目前为止所做的

var canvas = new fabric.Canvas('myCanvas');
var front_wall = fabric.Image.fromURL('img/bedroom1-front/front_wall.png', 
    function(img) {
        img.scale(0.65);
        canvas.add(img);
    }
);

我以同样的方式添加了另外五个图像。

可以fabric.Image.fromURL返回图像对象(通过使用任何属性)?

所以我可以在加载后更改它们的 z-index。

抱歉,我没有 jsfiddle 可以展示。

最佳答案

欢迎来到 Stack Overflow,

请检查此fiddle

我在那个 fiddle 中添加了一些评论。代码如下:

var srcImg = "http://fabricjs.com/lib/pug.jpg";
var canvas = new fabric.Canvas('c');
var icon = null;
var image = fabric.Image.fromURL(srcImg, function(oImg) {
                    oImg.set({width: oImg.width / 3,
                              height: oImg.height / 3,
                              left: 100,
                              top: 100,
                              originX: 'center',
                              originY: 'center',
                              selectable: false,
                              transparentCorners: false});

          //magic strats here to make active Image and you can control image object here
                    canvas.setActiveObject(oImg);
                    icon = canvas.getActiveObject();
                    icon.hasBorders = false;
                    icon.hasControls = false;                   
                    canvas.add(oImg);
                });

//if you want to control outside somewhere you can do this:
setTimeout(function(){
    icon.set({'top': 200, 'left': 200});
  canvas.renderAll();
}, 1500);

关于javascript - Fabric.js 中图像对象的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41871411/

相关文章:

javascript - 录制录制/背景录制时, Canvas 不会重新粉刷(webGl)

javascript - 计算二次贝塞尔曲线的交点

javascript - 使用 css 自定义链接

jQuery 放入数组

javascript - 带有容器高度和宽度边框的响应式三 Angular 形

javascript - 有没有办法修改 Canvas 中的像素而不必复制整个缓冲区?

javascript - useState 不更新我的变量的值

javascript - 打印 map 中最高值的键

javascript - 从服务传递值

javascript - jQuery - 如何知道选择器是否应该有 # 或 .或者类似的东西?