Чёрно-белая картинка
Код ниже выбирает картинку по атрибуту id
, и заменяет её на чёрно-белую в теге <canvas>
.
function grayscale(img) { // выборка картинки по ИД var img = document.getElementById(img); // создание canvas var canvas = document.createElement('canvas'); canvas.width = img.clientWidth; canvas.height = img.clientHeight; var ctx = canvas.getContext('2d'); ctx.drawImage(img, 0, 0, img.clientWidth, img.clientHeight); // добавление canvas напротив картинки img.parentNode.appendChild(canvas); // трансформация в чёрно-белую картинку var pixels = ctx.getImageData(0,0,canvas.width,canvas.height); var d = pixels.data; for (var i=0, dLength = d.length; i<dLength; i+=4) { var r = d[i]; var g = d[i+1]; var b = d[i+2]; var v = 0.2126*r + 0.7152*g + 0.0722*b; d[i] = d[i+1] = d[i+2] = v } ctx.putImageData(pixels, 0, 0); } grayscale('imageID');
Поддержать автора