Хотя я видел несколько методов применения фильтров к изображениям, мне еще нужно увидеть все, что применило бы фильтр ткани к всему холсту.Fabric.js: Как применить фильтр для всего холста?
Пример функции изображения фильтра из http://fabricjs.com/fabric-intro-part-2/
fabric.Image.fromURL('pug.jpg', function(img) {
// add filter
img.filters.push(new fabric.Image.filters.Grayscale());
// apply filters and re-render canvas when done
img.applyFilters(canvas.renderAll.bind(canvas));
// add image onto canvas
canvas.add(img);
});
Я хочу передать весь холст элемент и все фигуры внутри и применить фильтр ко всем.
Нужно ли выравнивать холст, преобразовывать его в изображение, а затем применять фильтр? Пользователь может вносить изменения после того, как после сглаживания и применения, холст нужно будет отделить до «слоев», чтобы пользователь мог продолжить редактирование.
Документы для фильтра GreyScale. http://fabricjs.com/docs/symbols/fabric.Image.filters.Grayscale.html
Я использовал эту функцию, но холст пуст. Я проверен в DevTool, Fabric добавляет новый холст с верхним холстом класса и он тоже пуст! Я не знаю почему? Я изменяю правую верхнюю функцию, вместо этого использую 'canvas' как глобальную переменную, я использую как новую -' var canvas = new fabric.Canvas ('canvas_DOM_id') ' – Davuz