import flash.filters.ColorMatrixFilter;//如果 filters 数组未定义,则无需使用临时数组。 相反,您可以直接赋值包含一个或多个已创建的滤镜对象的一个数组文本值
mc.filters = [new ColorMatrixFilter([0.3, 0.59, 0.11, 0, 0, 0.3, 0.59, 0.11, 0, 0, 0.3, 0.59, 0.11, 0, 0, 0, 0, 0, 1, 0])];
/*使用所选滤镜类的构造函数方法创建一个新的滤镜对象。
将 myDisplayObject.filters 数组的值分配给临时数组,例如一个名为 myFilters 的数组。
将新的滤镜对象添加到临时数组 myFilters。
将临时数组的值分配给 myDisplayObject.filters 数组。
var matrix:Array = [0.3, 0.59, 0.11, 0, 0, 0.3, 0.59, 0.11, 0, 0, 0.3, 0.59, 0.11, 0, 0, 0, 0, 0, 1, 0]
var filter:ColorMatrixFilter=new ColorMatrixFilter(matrix);
var myFilters:Array = new Array();
myFilters.push(filter);
mc.filters=myFilters;//要修改现有的滤镜对象,必须使用修改 filters 数组的副本的技术, 无法直接将新滤镜对象添加到 filters 数组
mc.filters = [new ColorMatrixFilter([0.3, 0.59, 0.11, 0, 0, 0.3, 0.59, 0.11, 0, 0, 0.3, 0.59, 0.11, 0, 0, 0, 0, 0, 1, 0])];
/*使用所选滤镜类的构造函数方法创建一个新的滤镜对象。
将 myDisplayObject.filters 数组的值分配给临时数组,例如一个名为 myFilters 的数组。
将新的滤镜对象添加到临时数组 myFilters。
将临时数组的值分配给 myDisplayObject.filters 数组。
var matrix:Array = [0.3, 0.59, 0.11, 0, 0, 0.3, 0.59, 0.11, 0, 0, 0.3, 0.59, 0.11, 0, 0, 0, 0, 0, 1, 0]
var filter:ColorMatrixFilter=new ColorMatrixFilter(matrix);
var myFilters:Array = new Array();
myFilters.push(filter);
mc.filters=myFilters;//要修改现有的滤镜对象,必须使用修改 filters 数组的副本的技术, 无法直接将新滤镜对象添加到 filters 数组
本文介绍了如何在ActionScript 3中使用ColorMatrixFilter为显示对象应用颜色矩阵滤镜。通过创建滤镜对象并将其添加到显示对象的filters数组中,可以实现对图像的颜色调整效果。此外,还详细说明了如何修改现有滤镜。
1574

被折叠的 条评论
为什么被折叠?



