2016-04-09 11 views
0

Yüklenen bir resmi kumaş Grubu nesnesine eklemeye çalışıyorum. Her şey iyi görünüyor, ancak seçim kontrolleri seçilemez ve nesneyi sürükleyemiyorum. Sol üst kontrol çalışıyor olsa bile, her şey iyi.FabricJS, Gruba Görüntü ekleyerek tek kontrol davranışına neden oluyor

İşte bu davranışı gösteren bir jsfiddle.

var canvas = new fabric.Canvas('canvas', { 
    width: 200, 
    height: 200 
}); 
var group = new fabric.Group(); 
canvas.add(group); 
fabric.Image.fromURL('https://placehold.it/100x100', function(img) { 
    group.addWithUpdate(img); 
    canvas.setActiveObject(group); 
    canvas.renderAll(); 
}); 

Bu bir hata mı, yoksa yanlış bir şey mi yapıyorum?

+0

Şu anda, grubu tamamen yeni bir örnek olarak yeniden başlattığım ve görüntüyü yapıcıya geçirdiğim bir geçici çözümüm var. Bu şekilde çalışır gibi görünüyor, ancak mevcut bir gruba eklemek hala çalışmıyor. –

+0

sadece group.setCoords(); addWithUpdate yaptıktan sonra – AndreaBogazzi

cevap

1

Bazı performans nedenleriyle, bir gruba nesne ekledikten sonra, fabricjs otomatik olarak setCoords'ı çağırmaz (birçok nesne eklendiğinde setCoords'ı yalnızca bir kez arayabilirsiniz).

AddWithUpdate'i yaptıktan sonra group.setCoords();

var canvas = new fabric.Canvas('canvas', { 
    width: 200, 
    height: 200 
}); 
var group = new fabric.Group(); 
canvas.add(group); 
fabric.Image.fromURL('https://placehold.it/100x100', function(img) { 
    group.addWithUpdate(img); 
    group.setCoords(); 
    canvas.setActiveObject(group); 
    canvas.renderAll(); 
}); 
+0

Bu işe yarıyor! Bunu asla anlayamazdım. Teşekkürler! –

İlgili konular