用canvas就可以实现图片的滤镜转化代码实现
来源:才华咖 本文已影响1.4W人
来源:才华咖 本文已影响1.4W人
导语:canvas的getImageData可以获取canvas内图像的没一个像素点的颜色值获取,而且可以改变,下面是小编给大家提供的.用canvas就可以实现图片的滤镜转化代码实现,大家可以参考阅读,更多详情请关注应届毕业生考试网。
使用方法:
1:先将图片导入画布。
2:var canvasData = mageData(0, 0, h, ht); //用这个将图片每个像素点的信息获取出来,得到一个数组。注意得到的信息不是[[r,g,b,a],[r,g,b,a]]这样的二维数组而是[r,g,b,a,r,g,b,a]这样的按rgba顺序排列的单个的数组。
3:这一步就是开始将每个像素的rgba改变。这里简单介绍一下灰度效果的算法及实现步骤。
function gray(canvasData)
{
for ( var x = 0; x < h; x++) {
for ( var y = 0; y < ht; y++) {
// Index of the pixel in the array
var idx = (x + y * h) * 4;
var r = [idx + 0];
var g = [idx + 1];
var b = [idx + 2];
var gray = .299 * r + .587 * g + .114 * b;
// assign gray scale value
[idx + 0] = gray; // Red channel
[idx + 1] = gray; // Green channel
[idx + 2] = gray; // Blue channel
[idx + 3] = 255; // Alpha channel
// add black border
if(x < 8 || y < 8 || x > (h - 8) || y > (ht - 8))
{
[idx + 0] = 0;
[idx + 1] = 0;
[idx + 2] = 0;
}
}
}
return canvasData;
}
4:mageData(canvasData, 0, 0); //处理完像素颜色值之后,记得要这一句将画布重绘
这些个代码就是将图片转化为黑白效果的代码,具体可以实现多少效果就得看你掌握的滤镜算法有多少了。
常用排序算法之JavaScript实现代码段
用javascript实现图片模糊到清晰载效果指南
JavaScript实现的div拖动效果实例代码
java使用ConcurrentHashMap和计数器实现锁的方法
关于HTML5组件Canvas实现图像灰度化教程
用 Javascript 实现锚点(Anchor)间平滑跳转
Javascript简单实现面向对象编程继承实例代码
关于ASP.NET使用JavaScript显示信息提示窗口实现原理及代码
javascript实现小球的自由移动代码
Javascript实现全选并赋值给文本框代码实例
javascript实现贪吃蛇代码
JavaScript实现网页刷新代码段
java利用反射实现动态代理实现代码
冒泡排序的原理以及java代码实现
Java 队列实现原理及简单实现代码
Javascript实现跨域的要点分析
堆的javascript实现方法
java实现gif动画效果代码参考
JavaScript重置表单的实现
个人现实表现通用(现实表现,通用)
JavaScript如何实现JSON.stringify
如何使用Java实现AC自动机全文检索实例
文化站站长现实表现材料
如何使用javascript实现瀑布流及效果加载
如何使用JavaScript实现倒计时
在Java中执行JavaScript代码
现实生日蛋糕图片
JavaScript快速排序实现实例教程
冒泡排序算法原理及JAVA实现代码方法
如何运用Java socket实现多人聊天室功能
Javascript 继承实现例子参考
java使用动态代理来实现AOP
PHP中如何实现crontab代码
HTML5中canvas标签实现刮刮卡效果
将php实现过滤UBB代码
C#实现协同过滤算法的实例代码
Java 中常用缓存Cache机制的实现
如何正确实现Java中的hashCode方法
讲解Java的Spring框架中的AOP实现
网页程序设计之实用JavaScript代码段