码迷,mamicode.com
首页 > Web开发 > 详细

Web从入门到放弃<6>

时间:2018-01-01 23:43:51      阅读:246      评论:0      收藏:0      [点我收藏+]

标签:can   技术分享   utf-8   nbsp   put   blog   char   ima   title   

 <1> Canvas.

1,灰度图:

 js:

技术分享图片
function showAsGray() {
    var imgNode = document.getElementById(‘img‘);
    if(!imgNode)return false;

    var origSource = imgNode.src;

    imgNode.onmouseover = function () {
        imgNode.src = createGray(imgNode);
    };
    imgNode.onmouseout = function () {
        imgNode.src = origSource;
    }
}

function createGray(img) {
    var canvas = document.createElement(‘canvas‘);
    canvas.width = img.width;
    canvas.height = img.height;
    var ctx = canvas.getContext(‘2d‘);
    ctx.drawImage(img,0,0);

    var raw = ctx.getImageData(0,0,img.width,img.height);

    for(var i=0;i<raw.height;i++){
        for(var j=0;j<raw.width;j++){
            var x = i*4 * raw.width + j*4;
            var r = raw.data[x];
            var g = raw.data[x+1];
            var b = raw.data[x+2];
            //var a = raw.data[x+3];
            var a = 1;
            raw.data[x] = raw.data[x+1] = raw.data[x+2] = a* ((r+g+b)/3);
        }
    }
    ctx.putImageData(raw,0,0,0,0,raw.width,raw.height);
    return canvas.toDataURL();

}
window.onload = showAsGray;
View Code

html:

技术分享图片
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>

<img src="images/img.jpg" id="img">

<script src="image_gray.js"></script>
</body>
</html>
View Code

 

 

 

 

 

 

 

 

 

 

 

 

 

.

Web从入门到放弃<6>

标签:can   技术分享   utf-8   nbsp   put   blog   char   ima   title   

原文地址:https://www.cnblogs.com/gearslogy/p/8169055.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!