У меня есть холст, который обрабатывает образы, нарисованные на нем с помощью плагина CamanJS, и он отлично работает. Но если я манипулирую холст вручную (без помощи плагина), изображение теряет эффект. Например, если я добавлю фильтр (например, Vintage) к изображению, он отлично работает, но если я поверну холст, используя translate
и scale
, холст будет отменен, но изображение теряет эффект. Кажется, что при каждом изменении изображения через плагин он сохраняет свое текущее состояние, и поэтому эффект теряется после изменения без его использования. Как это сделать при сохранении эффектов изображения?Изображение теряет эффект CamanJS на манипулировании холстом
Чтобы добавить к эффекту, используют одни и те же примеры сайта плагин, так как код для обратного холста (scripts.js):
$(document).ready(function() {
$("html, body").on("click", "#vintage", function() {
Caman("#filtrar", function() {
this.vintage().render();
});
});
$("html, body").on("click", "#inverter_foto", function() {
var c = $("#filtrar")[0];
var ctx = c.getContext("2d");
ctx.translate(filtro_width, 0);
ctx.scale(-1, 1);
ctx.drawImage(filtro, 0, 0);
});
});
The filtro_width
переменных и filtro
соответствует к изображение, нарисованное на холсте.
на HTML:
<canvas id="filtrar" width="640" height="255"></canvas>
<button id="vintage">Vintage Effect</button>
<button id="inverter_foto">Reverse</button>
<script type="text/javascript" src="/js/jquery-2.1.3.min.js"></script>
</script>
<script type="text/javascript" src="/js/caman.full.min.js"></script>
<script type="text/javascript" src="/js/scripts.js"></script>
@Kaiido Я Editted вопрос с примером. – Igor
Но код для добавления эффекта такой же из http://camanjs.com/examples/ (кнопки ниже) и для изменения холста - это код на вопрос. Это все и только код, который является частью вопроса – Igor
, как насчет того, чтобы применить эффект камелангов после реверсирования холста? – jack3694078