Увеличение и уменьшение значения фильтра не работает должным образом в Camanjs - PullRequest
1 голос
/ 03 апреля 2019

Я использую 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) перед применением фильтра, но при этом сброс холста и предыдущий фильтр теряются. Может ли кто-нибудь помочь мне здесь !!

...