¿Cómo lidiar con la máscara de imagen de tela JS?
Estoy tratando de implementar la máscara de imagen como el siguiente ejemplo:
Imagen de ejemplo aquí:https://s3-ap-northeast-1.amazonaws.com/utonly/demo/demo.jpg
Lo intenté de muchas maneras y me tomé mucho tiempo, pero aún no puedo encontrar una buena solución para ello. La imagen debe poder cambiar el tamaño y rotar dentro de la máscara, o editar desde otra vista, y luego aplicar el resultado nuevamente a la imagen.
Encontré un ejemplo similar aquíhttp://jsfiddle.net/tbqrn/68/ , pero no quiero que las imágenes pasen entre sí. ¿Es eso posible? ¿O tengo alguna oportunidad de probar otras formas de hacer esto?
var img01URL = 'http://fabricjs.com/assets/printio.png';
var img02URL = 'http://fabricjs.com/lib/pug.jpg';
var img03URL = 'http://fabricjs.com/assets/ladybug.png';
var img03URL = 'http://fabricjs.com/assets/ladybug.png';
var canvas = new fabric.Canvas('c');
var ctx = canvas.getContext("2d");
ctx.beginPath();
ctx.rect(10,10,150,150);
ctx.rect(170,10,200,200);
ctx.rect(10,170,150,150);
ctx.closePath();
ctx.stroke();
ctx.clip();
fabric.Image.fromURL(img01URL, function(oImg) {
oImg.scale(.25);
oImg.left = 10;
oImg.top = 10;
canvas.add(oImg);
canvas.renderAll();
});
fabric.Image.fromURL(img02URL, function(oImg) {
oImg.scale(.40);
oImg.left = 180;
oImg.top = 0;
canvas.add(oImg);
canvas.renderAll();
});
fabric.Image.fromURL(img03URL, function(oImg) {
oImg.left = 10;
oImg.top = 170;
canvas.add(oImg);
canvas.renderAll();
});
Gracias por la ayuda.