flex4sdk中可以使用flash.filters.ColorMatrixFilter和spark.filters.ColorMatrixFilter,两者实现或许有区别,但基本用法区别不大。
先看一下api中的说明:
引用
使用 ColorMatrixFilter 类可以将 4 x 5 矩阵转换应用于输入图像上的每个像素的 RGBA 颜色和 Alpha 值,以生成具有一组新的 RGBA 颜色和 Alpha 值的结果。该类允许饱和度更改、色相旋转、亮度为 Alpha 以及各种其他效果。您可以将滤镜应用于任何显示对象(即,从 DisplayObject 类继承的对象)
对于颜色矩阵matrix:
引用
滤镜将每个源像素分离成它的红色、绿色、蓝色和 Alpha 成分,分别以 srcR、srcG、srcB 和 srcA 表示。要计算四个通道中每个通道的结果,可将图像中每个像素的值乘以转换矩阵中的值。(可选)可以将偏移量(介于 -255 至 255 之间)添加到每个结果(矩阵的每行中的第五项)中。滤镜将各颜色成分重新组合为单一像素,并写出结果。在下列公式中,a[0] 到 a[19] 对应于由 20 个项目组成的数组中的条目 0 至 19,该数组已传递到 matrix 属性:
redResult = (a[0] * srcR) + (a[1] * srcG) + (a[2] * srcB) + (a[3] * srcA) + a[4]
greenResult = (a[5] * srcR) + (a[6] * srcG) + (a[7] * srcB) + (a[8] * srcA) + a[9]
blueResult = (a[10] * srcR) + (a[11] * srcG) + (a[12] * srcB) + (a[13] * srcA) + a[14]
alphaResult = (a[15] * srcR) + (a[16] * srcG) + (a[17] * srcB) + (a[18] * srcA) + a[19]
需要注意的是:matrix这个属性不能直接修改其数据。
错误的写法:
filter.matrix[0] = 1
正确的写法:
m = filter.matrix;
m[0] = 1;
filter.matrix = m;
附件里是个小例子
分享到:
相关推荐
在ActionScript 3 (AS3)中,ColorMatrixFilter是一个强大的工具,用于对显示对象的颜色进行复杂的调整。这个滤镜允许我们通过一个5x4的矩阵来改变图像的颜色、亮度、对比度、饱和度等属性。本文将深入探讨如何利用...
本教程将深入探讨如何使用`ColorMatrixFilter`类,以及它在实际应用中的作用。 ### 一、颜色矩阵滤镜基础 `ColorMatrixFilter`是AS3中`flash.filters`包的一部分,它接受一个16个元素的数组作为输入,即一个5x4的...
在Pixi-filters中,你可以找到许多预定义的过滤器,如基本的色彩调整滤镜、模糊滤镜、噪点滤镜以及更复杂的效果,如光照滤镜和粒子滤镜。 使用pixi-filters,开发者可以通过简单的API调用来应用这些滤镜。例如,你...
在实际应用中,滤镜可以通过设置滤镜对象的属性并将其添加到DisplayObject的`filters`数组中来应用。滤镜的顺序也会影响最终的视觉效果,因为滤镜是按照添加的顺序依次应用的。需要注意的是,滤镜会增加渲染开销,...
import flash.filters.ColorMatrixFilter; var bitmapData:BitmapData = new Image.jpg(); // 假设Image.jpg是我们的位图资源 var filter:ColorMatrixFilter = new ColorMatrixFilter([ 1, 0, 0, 0, 0, // 红色...
PixiJS过滤器演示版单击以交互方式使用过滤器,以查看其工作原理。筛选器所有过滤器均适用于PixiJS v5。 筛选预习调整滤镜@ pixi / filter-adjustment AdvancedBloomFilter @ pixi / filter-advanced-bloom ...
2. **颜色过滤器(ColorMatrixFilter)**:Flex提供了`flash.filters.ColorMatrixFilter`类,它可以通过调整像素的RGB值来改变图像颜色。例如,我们可以创建一个颜色矩阵来实现饱和度、亮度、对比度的调整,或者直接...
在本主题中,“as3 Image effect源代码”指的是使用AS3实现的各种图像处理效果的源代码。这些效果可能包括滤镜、转换、模糊、色彩调整等,它们可以增强视觉体验并为Flash内容添加动态元素。 图像效果在AS3中通常是...
在AS3中,我们可以使用`ColorMatrixFilter`类来应用这种转换。 以下是使用灰度滤镜的基本步骤: 1. **创建灰度滤镜**: ```actionscript var grayFilter:ColorMatrixFilter = new ColorMatrixFilter(); ``` ...
AS3 显示对象结构图 AS3 显示对象结构图是 ActionScript 3.0 的一个重要组件,它定义了 Flash Player...同时,本文还对 filters 和 Error 类进行了介绍,帮助开发者更好地理解和使用 AS3 中的效果滤镜和错误处理机制。
本文将详细介绍如何在AS3中使用颜色矩阵进行颜色变换。 #### 颜色矩阵的基本概念 颜色矩阵是一个四行五列的二维数组,用于存储变换系数。每个像素的颜色由红(R)、绿(G)、蓝(B)以及透明度(A)四个分量组成。通过颜色...
Flex Easy Filters是一款开源的软件框架,专为在Adobe Flex应用中轻松实现DisplayObject实例的过滤和特效而设计。这个框架的出现,使得开发者能够更加便捷地处理和控制UI元素的视觉效果,提升用户体验,同时也降低了...
在这个开源库中,`filters.as`可能封装了这些滤镜的使用,提供了一些预设的特效或者方便的接口,使得开发者可以更便捷地在项目中应用这些特效,而无需深入理解底层的滤镜实现。 在实际项目中,这些图片特效可以用于...
bitmapEffect.Filters = new BitmapFilter[] { colorMatrixFilter }; myVisual.BitmapEffect = bitmapEffect; ``` 在这个例子中,我们创建了一个新的色彩矩阵,使得红色通道增加了20%(0.2),绿色通道增加了30%...
例如,我们可以使用`BlurFilter`实现模糊效果,`DropShadowFilter`添加阴影,或者`ColorMatrixFilter`进行颜色调整。下面是一个应用模糊滤镜的例子: ```xml <mx:filters> </mx:filters> ``` 这段代码会在...
同时,它也常与其它滤镜结合使用,如颜色矩阵滤镜(ColorMatrixFilter),以实现更复杂的图像处理。 在游戏开发中,模糊滤镜可以用来创建粒子系统中的雾化效果,或者在角色移动时模拟运动模糊,提升游戏的视觉体验...
2. **导入组件**:在需要使用滤镜功能的组件中,导入`ColorMatrixFilter`等组件。 3. **配置滤镜**:根据需求设置滤镜类型,可以使用预设滤镜,也可以自定义颜色矩阵。 4. **应用滤镜**:将滤镜组件与目标图像组件...
3. **flash.filters**和**flash.geom**:前者提供图像滤镜,如BlurFilter、ColorMatrixFilter等;后者包含几何相关的类,如Matrix用于进行图形变换,Point和Rectangle定义了坐标和尺寸。 4. **flash.net**:网络...