[AS3]as3设置“调整颜色”滤镜(亮度/对比度/饱和度/色相的调整)
相信大家对滤镜这东西,在flash IDE内应用很熟吧?但是在as内怎么用代码实现呢?这个问题还别说,起初真有点犯难,后经高手指点,逐一化解。经验不敢独享,故与大家分享(高手可掠过)。如有疑问,请多多提出咯……
- import fl.motion.ColorMatrix;
- import flash.filters.ColorMatrixFilter;
- //**调整亮度**//
- var ld_Matrix:ColorMatrix=new ColorMatrix();
- var ld_Filter:ColorMatrixFilter=new ColorMatrixFilter();
- ld_Matrix.SetBrightnessMatrix(100);
- //设置亮度值,值的大小是 -255--255 0为中间值,向右为亮向左为暗。
- ld_Filter.matrix = ld_Matrix.GetFlatArray();
- ld_MC.filters = [ld_Filter];
- //ld_MC.filters = [];//去除滤镜
- //**调整对比度**//
- var db_Matrix:ColorMatrix=new ColorMatrix();
- var db_Filter:ColorMatrixFilter=new ColorMatrixFilter();
- db_Matrix.SetContrastMatrix(255);
- //设置对比度值,值的大小是 -255--255 127.5为中间值,
- //向右对比鲜明向左对比偏暗。
- db_Filter.matrix = db_Matrix.GetFlatArray();
- db_MC.filters = [db_Filter];
- //db_MC.filters = [];//去除滤镜
- //**调整饱和度**//
- var bh_Matrix:ColorMatrix=new ColorMatrix();
- var bh_Filter:ColorMatrixFilter=new ColorMatrixFilter();
- bh_Matrix.SetSaturationMatrix(0);
- //设置饱和度值,值的大小是 -255--255
- //1为中间值,0为灰度值(即黑白相片)。
- bh_Filter.matrix = bh_Matrix.GetFlatArray();
- bh_MC.filters = [bh_Filter];
- //bh_MC.filters = [];//去除滤镜
- //**调整色相**//
- var sx_Matrix:ColorMatrix=new ColorMatrix();
- var sx_Filter:ColorMatrixFilter=new ColorMatrixFilter();
- sx_Matrix.SetHueMatrix(1);
- //设置色相值,值的大小是 -255--255
- //0为中间值,向右向左一试便知。
- sx_Filter.matrix = sx_Matrix.GetFlatArray();
- sx_MC.filters = [sx_Filter];
- //sx_MC.filters = [];//去除滤镜
好了,应用就是这么个方法。大胆去尝试,大胆测试。希望看后有所收获。
另附官方帮助文档地址:http://help.adobe.com/zh_CN/FlashPlatform/reference/actionscript/3/fl/motion/ColorMatrix.html?filter_flash=cs5&filter_flashplayer=10.1&filter_air=2#SetBrightnessMatrix()http://help.adobe.com/zh_CN/FlashPlatform/reference/actionscript/3/flash/filters/ColorMatrixFilter.html
注:转载请注明出处!http://hi.baidu.com/hihuanshi
热门文章推荐
- [HLS]做自己的m3u8点播系统使用HTTP Live Streaming(HLS技术)
- [FMS]FMS流媒体服务器配置与使用相关的介绍
- [AS3]什么是M3U8,与HTML5的区别是什么
- AS2.0 让flash自适应全屏,并且不自动缩放
- [AS3]as3.0的sound类常用技巧整理
- [AS3]as3与ByteArray详解、ByteArray介绍、ByteArray用法
- 关于RTMP,RTMPT,RTMPS,RTMPE,RTMPTE协议的介绍
- [JS]分享浏览器弹出窗口不被拦截JS示例