Js canvas image effect -> php image effect
Есть картинка на канвасе, для которой применяются разные фильтры (черно-белый, сепия и тд), нужно перенести эффекты на пхп.
Функция setFilter переводит картинку(в примере закрашенный красный прямоугольник) в черно-белый цвет(эффектов много). Как можно перенести этот код на пхп, а именно получить картинку, и заменить в ней цвета? <canvas id="canvas" width="200" height="200"></canvas> <script> var canv = document.getElementById('canvas'), ctx = canv.getContext('2d'); var canvFunc = { getData: function () { return ctx.getImageData(0, 0, canvas.width, canvas.height); }, setData: function (data) { ctx.putImageData(data, 0, 0); }, setFilter: function () { var olddata = this.getData(), data = olddata.data; var i = 0, len = data.length, b; for (; i < len; i += 4) { b = parseInt((data[i] + data[i + 1] + data[i + 2]) / 3, 10); b = 255 * ((b / 255 - .5) * 1.3 + .5); b = parseInt(b < 0 ? 0 : b > 255 ? 255 : b); data[i] = b; data[i + 1] = b; data[i + 2] = b; } this.setData(olddata); } }; ctx.fillStyle = "#FF0000"; ctx.fillRect(0, 0, 150, 75); canvFunc.setFilter(); </script> |
Часовой пояс GMT +3, время: 05:12. |