首页 > 作文

Canvas 像素处理之改变透明度的实现代码

更新时间:2023-04-03 03:45:27 阅读: 评论:0

一 定义和用法

getimagedata()方法返回 imagedata 对象,该对象拷贝了画布指定矩形的像素数据。

注意:imagedata对象不是图像,它规定了画布上一个部分(矩形),并保存了该矩形内每个像素的信息。

对于imagedata对象中的每个像素,都存在着四方面的信息,即rgba值:

r – 红色(0-255)g – 绿色(0-255)b – 蓝色(0-25关于青春的歌曲5)

a – alpha 通道(0-255; 0 是透明的,255 是完全可见的)

color/alpha 信息以数组形式存在,并存储于 imagedata 对象的 data 属性中。

提示:在操作完成数组中的 color/alpha 信息之后,您可以使用 putimagedata() 离骚屈原古诗方法将图像数据拷贝回画布上。

二 代码

<!doctype html><html><head> <meta name="author" content="yeeku.h.lee(crazyit.org)" /> <meta http-equiv="content-type" content="text/html; chart=gbk" /> &什么平板电脑好lt;title> 改变透明度 </title></head><body><h2> 改变透明度 </h2><canvas id="mc" width="600" height="460" style="border:1px solid black"></canvas><script type="text/javascript"> // 获取canvas元素对应的dom对象 var canvas = document.getelementbyid('mc'); // 获取在canvas上绘图的canvasrenderingcontext2d对象 var ctx = canvas.getcontext('2d'); var image = new image(); image.src = "test.png"; image.onload = function() {  // 用带透明度参数的方法绘制图片  drawimage(image , 124  , 20 , 0.4); } var drawimage = function(image , x  , y , alpha) {  // 绘制图片  ctx.drawimage(image , x , y);  // 获取从x、y开始,宽为image.width、高为image.heig赣南医学院怎么样ht的图片数据  // 也就是获取绘制的图片数据  var imgdata = ctx.getimagedata(x , y , image.width , image.height);  for (var i = 0 , len = imgdata.data.length ; i < len ; i += 4 )  {   // 改变每个像素的透明度   imgdata.data[i + 3] = imgdata.data[i + 3] * alpha;  }  // 将获取的图片数据放回去。  c淙怎么读tx.putimagedata(imgdata , x , y); }</script></body></html>

三 运行结果

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持www.887551.com。

本文发布于:2023-04-03 03:45:25,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/zuowen/7a66bbbf72e843179deb8e0bf2337c95.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:Canvas 像素处理之改变透明度的实现代码.doc

本文 PDF 下载地址:Canvas 像素处理之改变透明度的实现代码.pdf

标签:对象   透明度   画布   矩形
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图