html2canvas处理像素单位转换,html5的canvas的图片处理之像素转换

这篇博客介绍了如何使用html2canvas处理像素单位转换,重点讨论了HTML5 Canvas的getImageData方法将图像转换为数据数组,并展示了如何遍历数组获取像素点内容,实现颜色反转和去色等图像处理效果。
摘要由CSDN通过智能技术生成

html5 canvas图像转换成数组

html5的canvas可以进行图片处理,图片是由像素组成的。我们知道canvas有方法getImageData,返回的对象中可以取出,image的data 数组(类似数组的Type Array类型数组,Uint8ClampedArray)。

假设canvas宽高是500*400,那么应该有200000个像素点,而通过getImageData().data获取的data数组的length是800000。我们还知道rgba表示颜色的方法,r=red,g=green,b=blue,a=alpha;即红绿蓝三原色和透明值。

所以这个data数组是每四个数组值代表一个像素点。这样一来,一个图像就转化成了数据表示的数组。如下面的代码:

var canvas = document.getElementById('canvas');

var ctxt = canvas.getContext('2d');

var img = new Image;

img.onload = function(){

ctxt.drawImage(img, 0, 0);

var data = ctxt.getImageData(0, 0, 480, 480).data;

console.log(data, data.toString());

}

img.src = 'img/pic.jpg';

图像数组的遍历

如上面的代码,我们可以看到数组data就是图片转换成的数组,那么遍历这个数组就可以取得图片的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值