flash.display
public final class GraphicsGradientFill
继承GraphicsGradientFill Inheritance Object
实现 IGraphicsFill, IGraphicsData

语言版本: ActionScript 3.0
运行时版本: Flash Player 10, AIR 1.5

定义渐变填充。

将 GraphicsGradientFill 对象与 Graphics.drawGraphicsData() 方法一起使用。绘制 GraphicsGradientFill 对象与调用 Graphics.beginGradientFill() 方法是等效的。

另请参见

flash.display.Graphics.beginGradientFill()
flash.display.Graphics.drawGraphicsData()


公共属性
 属性定义方
  alphas : Array
colors 数组中的对应颜色的 Alpha 值的数组。
GraphicsGradientFill
  colors : Array
渐变中使用的 RGB 十六进制颜色值数组。
GraphicsGradientFill
 Inheritedconstructor : Object
对类对象或给定对象实例的构造函数的引用。
Object
  focalPointRatio : Number
一个控制渐变的焦点位置的数字。
GraphicsGradientFill
  interpolationMethod : String
InterpolationMethod 类中用于指定要使用的值的值。
GraphicsGradientFill
  matrix : Matrix
一个由 Matrix 类定义的转换矩阵。
GraphicsGradientFill
 Inheritedprototype : Object
[静态] 对类或函数对象的原型对象的引用。
Object
  ratios : Array
颜色分布比率的数组。
GraphicsGradientFill
  spreadMethod : String
SpreadMethod 类用于指定要使用的扩展方法的值。
GraphicsGradientFill
  type : String
GradientType 类中用于指定要使用的渐变类型的值。
GraphicsGradientFill
公共方法
 方法定义方
  
GraphicsGradientFill(type:String = "linear", colors:Array = null, alphas:Array = null, ratios:Array = null, matrix:* = null, spreadMethod:* = pad, interpolationMethod:String = "rgb", focalPointRatio:Number = 0.0)
创建新的 GraphicsGradientFill 对象。
GraphicsGradientFill
 Inherited
指示对象是否已经定义了指定的属性。
Object
 Inherited
指示 Object 类的实例是否在指定为参数的对象的原型链中。
Object
 Inherited
指示指定的属性是否存在、是否可枚举。
Object
 Inherited
设置循环操作动态属性的可用性。
Object
 Inherited
返回指定对象的字符串表示形式。
Object
 Inherited
返回指定对象的原始值。
Object
属性详细信息
alphas属性
public var alphas:Array

语言版本: ActionScript 3.0
运行时版本: Flash Player 10, AIR 1.5

colors 数组中的对应颜色的 Alpha 值的数组。有效值为 0 到 1。如果值小于 0,则使用 0。如果值大于 1,则使用 1。

colors属性 
public var colors:Array

语言版本: ActionScript 3.0
运行时版本: Flash Player 10, AIR 1.5

渐变中使用的 RGB 十六进制颜色值数组。例如,红色为 0xFF0000,蓝色为 0x0000FF 等等。可以至多指定 15 种颜色。对于每种颜色,请在 alphas 和 ratios 属性中指定对应值。

focalPointRatio属性 
public var focalPointRatio:Number

语言版本: ActionScript 3.0
运行时版本: Flash Player 10, AIR 1.5

一个控制渐变的焦点位置的数字。 值 0 将焦点设置在中心。值 1 表示焦点位于渐变圆的一条边界上;值 -1 表示焦点位于渐变圆的另一条边界上。小于 -1 或大于 1 的值将分别舍入为 -1 或 1。例如,下例显示了设置为 0.75 的 focalPointRatio

focalPointRatio 设置为 0.75 时的放射状渐变

interpolationMethod属性 
interpolationMethod:String  [读写]

语言版本: ActionScript 3.0
运行时版本: Flash Player 10, AIR 1.5

InterpolationMethod 类中用于指定要使用的值的值。有效值为:InterpolationMethod.LINEAR_RGBInterpolationMethod.RGB

例如,下例显示了两种颜色之间的简单线性渐变(spreadMethod 参数设置为 SpreadMethod.REFLECT)。不同的插值方法会更改外观,如下所示:

以 InterpolationMethod.LINEAR_RGB 线性渐变 以 InterpolationMethod.RGB 线性渐变
InterpolationMethod.LINEAR_RGB InterpolationMethod.RGB



实现
    public function get interpolationMethod():String
    public function set interpolationMethod(value:String):void

另请参见

matrix属性 
public var matrix:Matrix

语言版本: ActionScript 3.0
运行时版本: Flash Player 10, AIR 1.5

一个由 Matrix 类定义的转换矩阵。flash.geom.Matrix 类包括一个 createGradientBox() 方法,可通过该方法设置与 beginGradientFill() 方法一起使用的矩阵。

另请参见

ratios属性 
public var ratios:Array

语言版本: ActionScript 3.0
运行时版本: Flash Player 10, AIR 1.5

颜色分布比率的数组。有效值为 0 到 255。该值定义 100% 采样的颜色所在位置的宽度百分比。值 0 表示渐变框中的左侧位置,值 255 表示渐变框中的右侧位置。

注意:此值表示渐变框中的位置,而不是最终渐变的坐标空间。最终渐变可能会比渐变框更宽或更窄。为 colors 属性中的每个值指定一个对应值。

例如,对于包括蓝和绿两种颜色的线性渐变,以下示例显示了渐变中的颜色基于不同 ratios 数组值的配比:

ratios 渐变
[0, 127] ratios 为 0 和 127 时蓝色到绿色的线性渐变
[0, 255] ratios 为 0 和 255 时蓝色到绿色的线性渐变
[127, 255] ratios 为 127 和 255 时蓝色到绿色的线性渐变

数组中的值必须持续增加;例如,[0, 63, 127, 190, 255]

spreadMethod属性 
spreadMethod:String  [读写]

语言版本: ActionScript 3.0
运行时版本: Flash Player 10, AIR 1.5

SpreadMethod 类中用于指定要使用的扩展方法的值。有效值为:SpreadMethod.PADSpreadMethod.REFLECTSpreadMethod.REPEAT

例如,下例显示了两种颜色之间的简单线性渐变:

import flash.geom.*
     import flash.display.*
     var fillType:String = GradientType.LINEAR;
     var colors:Array = [0xFF0000, 0x0000FF];
     var alphas:Array = [1, 1];
     var ratios:Array = [0x00, 0xFF];
     var matr:Matrix = new Matrix();
     matr.createGradientBox(20, 20, 0, 0, 0);
     var spreadMethod:String = SpreadMethod.PAD;
     this.graphics.beginGradientFill(fillType, colors, alphas, ratios, matr, spreadMethod);       
     this.graphics.drawRect(0,0,100,100);

此示例将 SpreadMethod.PAD 用于 spread 方法,并且渐变填充看起来将类似于下图:

以 SpreadMethod.PAD 线性渐变

如果将 SpreadMethod.REFLECT 用于 spread 方法,则渐变填充看起来将类似于下图:

以 SpreadMethod.REFLECT 线性渐变

如果将 SpreadMethod.REPEAT 用于 spread 方法,则渐变填充看起来将类似于下图:

以 SpreadMethod.REPEAT 线性渐变



实现
    public function get spreadMethod():String
    public function set spreadMethod(value:String):void

另请参见

type属性 
type:String  [读写]

语言版本: ActionScript 3.0
运行时版本: Flash Player 10, AIR 1.5

GradientType 类中用于指定要使用的渐变类型的值。值为 GradientType.LINEARGradientType.RADIAL



实现
    public function get type():String
    public function set type(value:String):void

另请参见

构造函数详细信息
GraphicsGradientFill()构造函数
public function GraphicsGradientFill(type:String = "linear", colors:Array = null, alphas:Array = null, ratios:Array = null, matrix:* = null, spreadMethod:* = pad, interpolationMethod:String = "rgb", focalPointRatio:Number = 0.0)

语言版本: ActionScript 3.0
运行时版本: Flash Player 10, AIR 1.5

创建新的 GraphicsGradientFill 对象。

参数
type:String (default = "linear") — 用于指定要使用哪种渐变类型的 GradientType 类的值:GradientType.LINEARGradientType.RADIAL
 
colors:Array (default = null) — 渐变中使用的 RGB 十六进制颜色值的数组(例如,红色为 0xFF0000,蓝色为 0x0000FF,等等)。可以至多指定 15 种颜色。对于每种颜色,请在 alphas 和 ratios 参数中指定对应值。
 
alphas:Array (default = null) — colors 数组中对应颜色的 alpha 值数组;有效值为 0 到 1。如果值小于 0,则使用 0。如果值大于 1,则使用 1。
 
ratios:Array (default = null) — 颜色分布比率的数组;有效值为 0 到 255。该值定义 100% 采样的颜色所在位置的宽度百分比。值 0 表示渐变框中的左侧位置,255 表示渐变框中的右侧位置。
 
matrix:* (default = null) — 一个由 flash.geom.Matrix 类定义的转换矩阵。 flash.geom.Matrix 类包括 createGradientBox() 方法,通过该方法可以方便地设置矩阵,以便与 beginGradientFill() 方法一起使用。
 
spreadMethod:* (default = pad) — 用于指定要使用哪种 spread 方法的 SpreadMethod 类的值:SpreadMethod.PADSpreadMethod.REFLECTSpreadMethod.REPEAT
 
interpolationMethod:String (default = "rgb") — 用于指定要使用哪个值的 InterpolationMethod 类的值:InterpolationMethod.LINEAR_RGBInterpolationMethod.RGB
 
focalPointRatio:Number (default = 0.0) — 一个控制渐变的焦点位置的数字。 值 0 将焦点设置在中心。值 1 将焦点设置在渐变圆的一条边界上。值 -1 将焦点设置在渐变圆的另一条边界上。小于 -1 或大于 1 的值将分别舍入为 -1 或 1。

另请参见