由于宽度和高度,Fabric.js Path对象无法选择

时间:2015-03-12 03:07:31

标签: svg fabricjs

使用fabric.js我创建一个Path对象,如下所示:

var canvas = window._canvas = new fabric.Canvas('c');
canvas.backgroundColor = '#f5f5f5';
var path = new fabric.Path('M 0 20 Q 50 100 100 20',{
    stroke: 'black',
    fill: ''
});
canvas.add(path);

这可以按预期工作,但是,用户无法在画布上移动路径。当您将鼠标悬停在路径上时,您将看到没有“移动”光标,您无法移动路径。

我认为这是高度为0的路径的结果。尽管存在一个给出路径高度的控制点,为什么这条路径的高度为0?

这是一个表达我的意思的小提琴。正如您在控制台日志中看到的那样,路径的高度为0,边界矩形也是如此。这是一个错误还是预期的行为?

http://jsfiddle.net/flyingL123/0j2q9uf9/5/

1 个答案:

答案 0 :(得分:1)

您需要将fabric.js版本上传到1.4.13。您可以在此处下载:https://rawgit.com/kangax/fabric.js/master/dist/fabric.js

var canvas = window._canvas = new fabric.Canvas('c');
canvas.backgroundColor = '#f5f5f5';
var path = new fabric.Path('M 0 20 Q 50 100 100 20',{
    left: 100,
    top: 100,
    stroke: 'black',
    fill: ''
});

canvas.add(path);
console.log(path);
console.log(path.getBoundingRect());

我上传了你的小提琴:http://jsfiddle.net/0j2q9uf9/7/

它就像一个魅力。