在fabric js中添加id和custom属性

时间:2015-12-20 03:02:05

标签: fabricjs

我是fabtric js的新手。如何将自动生成ID和自定义属性添加到fabric js对象。 例如,我想添加一个自动生成的id,其中包含对象和类别的增量整数:' new'何时添加对象

就我而言,fabric js默认不支持此功能。

var text = new fabric.IText('Enter text here', {
        id: 'text-i' -> where i increment according to number of IText in the canvas
        left: 150,
        top: 50,
        type: 'new'
    });

1 个答案:

答案 0 :(得分:0)

您可以通过一种方式在画布中设置一些额外的对象:

canvas.ObjectCounter = {};

然后将所有条纹添加到其中:

canvas.ObjectCounter.['text'] = 0;
canvas.ObjectCounter.['rect'] = 0;
canvas.ObjectCounter.['i-text'] = 0;

依旧......

创建对象时:

var text = new fabric.IText('Enter text here', {
        id: 'text-' + canvas.objectCounter['i-text']++,
        left: 150,
        top: 50
});

请注意'type'是一个需要保持原样的属性,不要更改它。

如果您这样处理,这将只是创建的对象数量。 如果你想知道它们中有多少是在画布上你必须在事件中使用不同的东西

canvas.on('object:added', function(e){});
canvas.on('object:removed', function(e){});