我正在使用Camanjs进行图像过滤,我有用于增加亮度的滑块。当我将值增加到滑块时,一切正常,这会依次增加亮度,但是现在,如果将值减小到0,尽管它会降低亮度,但不会像增加亮度之前一样返回原始图像。
例如:
亮度-> 40->显示亮度增加的图像
亮度降低到零
Brightness -> 0 -> Should display the image with zero brightness.
类似地->如果我先应用模糊,然后进行对比度,然后去除模糊和对比度,则应该恢复原始图像。
它的工作方式应类似于:http://camanjs.com/examples/
我的代码:
slidderChangeHandler = (event, element) => {
event.persist();
let adjust = [...this.state.adjust];
adjust.map(el => {
if (el.name === element.name) {
el.range = event.target.value;
}
});
this.setState({ adjust: adjust }, () => {
let imgId = null;
if (
$(this.props.selected)
.attr("id")
.indexOf("text") > -1
) {
imgId =
"#" +
$(this.props.selected)
.children()
.attr("id");
} else {
imgId = "#" + $(this.props.selected).attr("id");
}
window.caman(imgId, function() {
this[element.name](parseFloat(event.target.value)).render()
});
});
};
我尝试在应用过滤器之前使用 this.revert(true),但是重置画布和先前的过滤器会丢失。 任何人都可以在这里帮助我!