我正在使用CamanJS创建带过滤器的照片编辑应用程序。我有完美的工作,但在用户上传图像后,一旦他们应用任何过滤器,它就会经历上传另一个过程的过程,它将画布恢复到之前上传的图像。我正在使用revert()函数,但我也将画布重新分配给新上传的图像,但它仍然恢复为第一个图像。所以我的问题是,有没有办法完全清除canvas / camanJS恢复内存到camanJS revert()不会恢复到上一个图像的程度?
我的一个过滤器:
function vintage(){
Caman("#myFilterCanvas", function () {
this.revert();
this.greyscale();
this.contrast(5);
this.noise(3);
this.sepia(100);
this.channels({
red: 8,
blue: 2,
green: 4
});
this.gamma(0.87);
this.vignette("40%", 30);
this.render();
});
}
答案 0 :(得分:2)
试用此代码
this.reloadCanvasData();
this.revert(false);
答案 1 :(得分:1)
尝试以下,
this.revert(false);
this[effect]();
this.render();
或
请你在JSfiddle中分享一些代码。