0

因此,对于 konva.js,我有一个包含两个 Text 项的组。我做了组draggable。拖动它后,虽然我打印了文本xy但它从未改变:

group.on('dragend', function() {
    var group = this;
    var t = group.findOne('Text');
    console.log(t.x(), t.y());
});

其余代码与Konva Text Demo

4

2 回答 2

3

从评论中提升:

从未使用过 konva - 但也许文本位置是相对于它的组?...

konva.js中,组内子元素的xy属性是相对于它的父元素的。

于 2016-03-24T16:33:03.277 回答
1

代码应如下所示:

if(imageObj.src.indexOf("icon_clock.png") > -1)
{
    clockX = (group.get('.topLeft')[0].getAbsoluteTransform().m[4]+group.get('.topRight')[0].getAbsoluteTransform().m[4])/2;
    clockY = (group.get('.topLeft')[0].getAbsoluteTransform().m[5]+group.get('.bottomLeft')[0].getAbsoluteTransform().m[5])/2; 
}

layerName.draw();
stageName.draw();
于 2016-04-05T11:40:07.487 回答