我想通过单击实际内容来选择对象。所以我设置perPixelTargetFind=true
并按照引言中的段落进行操作:
"默认情况下,画布上的所有
Fabric
对象都可以通过边界框拖动。但是,如果您想要不同的行为 - 仅按实际内容单击/拖动对象,则可以使用"perPixelTargetFind
"对象上的属性。只需将其设置为true即可获得所需的行为。"
通过这样做,我可以按实际内容拖动对象,但仍然可以通过单击边界区域来选择对象。
是否可以仅按实际内容点击对象?
答案 0 :(得分:3)
for (var i = 0, len = 15; i < len; i++) {
fabric.Image.fromURL('../assets/ladybug.png', function(img) {
img.set({
left: fabric.util.getRandomInt(0, 600),
top: fabric.util.getRandomInt(0, 500),
angle: fabric.util.getRandomInt(0, 90)
});
img.perPixelTargetFind = true;
img.targetFindTolerance = 4;
img.hasControls = img.hasBorders = false;
img.scale(fabric.util.getRandomInt(50, 100) / 100);
canvas.add(img);
});
}
基本上,您指定 perPixelTargetFind 为true,而( hasControls &amp; hasBorders )为false。