Javascript fabricjs在剪裁画布后获取图像,并将其设置为新的背景图像
我制作了一张画布,并在上面添加了一个图像。它就像画布上的背景图像一样工作。然后我剪切画布以获得画布的特定部分,就像裁剪一样。裁剪后,我想要裁剪的部分,并将其设置为新的背景图像 这是我尝试过的,但我无法将裁剪部分设置为画布上的新背景图像。我得到的是同样的旧画布,裁剪部分是透明的Javascript fabricjs在剪裁画布后获取图像,并将其设置为新的背景图像,javascript,canvas,fabricjs,Javascript,Canvas,Fabricjs,我制作了一张画布,并在上面添加了一个图像。它就像画布上的背景图像一样工作。然后我剪切画布以获得画布的特定部分,就像裁剪一样。裁剪后,我想要裁剪的部分,并将其设置为新的背景图像 这是我尝试过的,但我无法将裁剪部分设置为画布上的新背景图像。我得到的是同样的旧画布,裁剪部分是透明的 function crop(url, name, left, top, width, height, callback) { var c = document.createElement('canvas')
function crop(url, name, left, top, width, height, callback) {
var c = document.createElement('canvas')
var id = "canvas_" + name
c.id = id
var canvas = new fabric.Canvas(id)
fabric.Image.fromURL(url, function(oImg) {
oImg.set({
selectable:false,
})
canvas.setDimensions({width:oImg.width, height:oImg.height})
canvas.add(oImg)
canvas.clipTo = function (ctx) {
ctx.rect(left, top, width, height)
console.log(ctx)
};
canvas.centerObject(oImg)
canvas.renderAll()
var img = canvas.toDataURL('image/png')
console.log(img)
callback(img)
}, {crossOrigin: "Anonymous"})
}
在这里,我希望我的画布返回与裁剪区域作为背景图像
需要帮助这是一种重复吗?你有一个JSFIDLE吗?另外,假设画布的大小保持不变,看起来您正在尝试使用裁剪来缩放背景图像。你试过缩放而不是裁剪吗?