2017-05-02 4 views
1

ich den folgenden Code haben, die eine Leinwand in fabricjs klont:Fabricjs Klonen Leinwand entfernt Dezimalzahlen aus Rechteck

var canvas = new fabric.Canvas('c');  
canvas.width = 644.51234567; 
canvas.height = 644.51234567; 
var rect = new fabric.Rect({ 
     left: 0, 
     top: 0, 
     width: canvas.width, 
     height: canvas.height, 
     fill: 'rgba(255,127,39,1)', 
     strokeWidth: 0 
    }); 
canvas.add(rect);   
canvas.renderAll(); 

canvas.clone(function(cloneCanvas) {  
    canvas.forEachObject(function(obj) { 
    alert("Width of original rect: "+obj.width); 
    }); 
    cloneCanvas.forEachObject(function(obj) { 
    alert("Width of cloned rect: "+obj.width); 
    }); 
}); 

https://jsfiddle.net/s35fxaby/8/

Wie Sie den Code, indem Sie sehen können, das Klonen der Leinwand das ändert Anzahl der Dezimalstellen auf dem Rechteck. Dies ist ein Problem für mich, da der Rest meines Codes davon abhängig ist, dass die Dezimalstellen für das Original und das Duplikat gleich sind.

Kann ich irgendetwas dagegen tun - wie zum Beispiel die Rundung der Klonfunktion zu verhindern?

Antwort

1

versuchen, diese

fabric.Object.NUM_FRACTION_DIGITS = 10;

Wert = Anzahl der Ziffern wollen Sie nach dezimal.

Verwandte Themen