fabricjs clipto bug
by SooChangLee
HTML
<canvas id="c" width="400" height="400"></canvas>
JavaScript
(function() {
var canvas = this.__canvas = new fabric.Canvas('c');
fabric.Object.prototype.transparentCorners = false;
/*
var rect = new fabric.Rect({
left: 0,
top: 0,
width: 250,
height: 250,
fill: 'gray',
});
canvas.add(rect);
*/
var rect = new fabric.Path("M,0,238.50000304601065,H,283.5,V,477.9000061035157,H,0,V,238.50000304601065,Z");
rect.set({
left: 0,
top: 0,
width: 250,
height: 250,
fill: 'gray',
strokeWidth: 2,
stroke: '#DBDBDB',
selectable: true
});
canvas.add(rect);
fabric.Image.fromURL('https://www.google.com/images/srpr/logo4w.png', function(img) {
img.set({
left: 0,
top: 0,
width: img.width,
height: img.height,
originX: 'left',
originY: 'top',
// fill: "transparent",
// opacity: 1.0,
// strokeWidth: 0,
// stroke: '#DBDBDB',
selectable: true,
clipTo: function(ctx){
rect._render(ctx);
}
});
canvas.add(img).setActiveObject(img);
canvas.renderAll();
});
})();