mx.core
public class BitmapAsset
继承BitmapAsset Inheritance FlexBitmap Inheritance Bitmap Inheritance DisplayObject Inheritance EventDispatcher Inheritance Object
实现 IFlexAsset, IFlexDisplayObject

BitmapAsset 是 flash.display.Bitmap 类的子类,表示您在 Flex 应用程序中嵌入的位图图像。它用于实现 IFlexDisplayObject 接口,此接口允许在 Image 控件中显示嵌入的位图图像,或将位图图像用作容器背景或组件外观。

嵌入的位图图像可以是 JPEG、GIF 或 PNG 文件。您还可以嵌入由 Flash 生成的 SWF 文件中的位图符号。在上述每种情况下,MXML 编译器都会自动生成一个类,用于扩展 BitmapAsset 以显示嵌入的位图图像。

在写入 Flex 应用程序时,通常不必直接使用 BitmapAsset 类。例如,您可以通过编写如下内容来嵌入 GIF 文件并在 Image 控件中显示该图像:

<mx:Image id="logo" source="@Embed(source='Logo.gif')"/>

也可以使用 CSS 语法编写如下内容来将该图像用作应用程序的背景图像

<mx:Style>
      Application
      {
          backgroundImage: Embed(source="Logo.gif")
      }
  <mx:Style/>

而不必了解 MXML 编译器已为您创建了 BitmapAsset 的一个子类。

不过,了解在 ActionScript 级别发生的操作可能会有用。要在 ActionScript 中嵌入位图图像,需要声明一个 Class 类型的变量,然后在其上放置 [Embed] 元数据。例如,您可以按如下所示嵌入 GIF 文件:

[Bindable]
  [Embed(source="Logo.gif")]
  private var logoClass:Class;

MXML 编译器可识别 .gif 扩展名,将 GIF 数据的代码转换为播放器使用的位图格式,然后自动生成 BitmapAsset 类的子类,并将变量设置为引用此自动生成的类。接着,您可以借助 new 运算符来使用此类引用创建 BitmapAsset 实例,还可以对其应用 BitmapAsset 类的 API:

var logo:BitmapAsset = BitmapAsset(new logoClass());
  logo.bitmapData.noise(4);

但是,您极少需要自己创建 BitmapAsset 实例,因为只需将 image-related 属性和样式设置为一个 image-producing 类,而组件会根据需要创建图像实例。例如,要在 Image 控件中显示此图像,您可以将 Image 的 source 属性设置为 logoClass。在 MXML 中,您可以按照以下方法执行此操作:

<mx:Image id="logo" source="{logoClass}"/>



公共属性
 属性定义方
 InheritedaccessibilityProperties : AccessibilityProperties
此显示对象的当前辅助功能选项。
DisplayObject
 Inheritedalpha : Number
指示指定对象的 Alpha 透明度值。
DisplayObject
 InheritedbitmapData : BitmapData
被引用的 BitmapData 对象。
Bitmap
 InheritedblendMode : String
BlendMode 类中的一个值,用于指定要使用的混合模式。
DisplayObject
 InheritedblendShader : Shader
[只写] 设置用于混合前景和背景的着色器。
DisplayObject
 InheritedcacheAsBitmap : Boolean
如果设置为 true,则 Flash Player 或 Adobe AIR 将缓存显示对象的内部位图表示形式。
DisplayObject
 Inheritedconstructor : Object
对类对象或给定对象实例的构造函数的引用。
Object
 Inheritedfilters : Array
包含当前与显示对象关联的每个滤镜对象的索引数组。
DisplayObject
 Inheritedheight : Number
指示显示对象的高度,以像素为单位。
DisplayObject
 InheritedloaderInfo : LoaderInfo
[只读 (read-only)] 返回一个 LoaderInfo 对象,其中包含加载此显示对象所属的文件的相关信息。
DisplayObject
 Inheritedmask : DisplayObject
调用显示对象被指定的 mask 对象遮罩。
DisplayObject
  measuredHeight : Number
[只读 (read-only)] 此对象的测量高度。
BitmapAsset
  measuredWidth : Number
[只读 (read-only)] 此对象的测量宽度。
BitmapAsset
 InheritedmouseX : Number
[只读 (read-only)] 指示鼠标位置的 x 坐标,以像素为单位。
DisplayObject
 InheritedmouseY : Number
[只读 (read-only)] 指示鼠标位置的 y 坐标,以像素为单位。
DisplayObject
 Inheritedname : String
指示 DisplayObject 的实例名称。
DisplayObject
 InheritedopaqueBackground : Object
指定显示对象是否由于具有某种背景颜色而不透明。
DisplayObject
 Inheritedparent : DisplayObjectContainer
[只读 (read-only)] 指示包含此显示对象的 DisplayObjectContainer 对象。
DisplayObject
 InheritedpixelSnapping : String
控制 Bitmap 对象是否贴紧至最近的像素。
Bitmap
 Inheritedprototype : Object
[静态] 对类或函数对象的原型对象的引用。
Object
 Inheritedroot : DisplayObject
[只读 (read-only)] 对于加载的 SWF 文件中的显示对象,root 属性是此 SWF 文件所表示的显示列表树结构部分中的顶级显示对象。
DisplayObject
 Inheritedrotation : Number
指示 DisplayObject 实例距其原始方向的旋转程度,以度为单位。
DisplayObject
 InheritedrotationX : Number
指示 DisplayObject 实例相对于 3D 父容器距离其原始方向的 x 轴旋转(以度为单位)。
DisplayObject
 InheritedrotationY : Number
指示 DisplayObject 实例相对于 3D 父容器距离其原始方向的 y 轴旋转(以度为单位)。
DisplayObject
 InheritedrotationZ : Number
指示 DisplayObject 实例相对于 3D 父容器距离其原始方向的 z 轴旋转(以度为单位)。
DisplayObject
 Inheritedscale9Grid : Rectangle
当前有效的缩放网格。
DisplayObject
 InheritedscaleX : Number
指示从注册点开始应用的对象的水平缩放比例(百分比)。
DisplayObject
 InheritedscaleY : Number
指示从对象注册点开始应用的对象的垂直缩放比例(百分比)。
DisplayObject
 InheritedscaleZ : Number
指示从对象的注册点开始应用的对象的深度缩放比例(百分比)。
DisplayObject
 InheritedscrollRect : Rectangle
显示对象的滚动矩形范围。
DisplayObject
 Inheritedsmoothing : Boolean
控制在缩放时是否对位图进行平滑处理。
Bitmap
 Inheritedstage : Stage
[只读 (read-only)] 显示对象的舞台。
DisplayObject
 Inheritedtransform : Transform
一个对象,具有与显示对象的矩阵、颜色转换和像素范围有关的属性。
DisplayObject
 Inheritedvisible : Boolean
显示对象是否可见。
DisplayObject
 Inheritedwidth : Number
指示显示对象的宽度,以像素为单位。
DisplayObject
 Inheritedx : Number
指示 DisplayObject 实例相对于父级 DisplayObjectContainer 本地坐标的 x 坐标。
DisplayObject
 Inheritedy : Number
指示 DisplayObject 实例相对于父级 DisplayObjectContainer 本地坐标的 y 坐标。
DisplayObject
 Inheritedz : Number
指示 DisplayObject 实例相对于 3D 父容器沿 z 轴的 z 坐标位置。
DisplayObject
公共方法
 方法定义方
  
BitmapAsset(bitmapData:BitmapData = null, pixelSnapping:String = "auto", smoothing:Boolean = false)
构造函数。
BitmapAsset
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
使用 EventDispatcher 对象注册事件侦听器对象,以使侦听器能够接收事件通知。
EventDispatcher
 Inherited
将事件调度到事件流中。
EventDispatcher
 Inherited
getBounds(targetCoordinateSpace:DisplayObject):Rectangle
返回一个矩形,该矩形定义相对于 targetCoordinateSpace 对象坐标系的显示对象区域。
DisplayObject
 Inherited
getRect(targetCoordinateSpace:DisplayObject):Rectangle
返回一个矩形,该矩形根据 targetCoordinateSpace 参数定义的坐标系定义显示对象的边界,但不包括形状上的任何笔触。
DisplayObject
 Inherited
将 point 对象从舞台(全局)坐标转换为显示对象的(本地)坐标。
DisplayObject
 Inherited
将二维点从舞台(全局)坐标转换为三维显示对象的(本地)坐标。
DisplayObject
 Inherited
检查 EventDispatcher 对象是否为特定事件类型注册了任何侦听器。
EventDispatcher
 Inherited
指示对象是否已经定义了指定的属性。
Object
 Inherited
计算显示对象,以确定它是否与 obj 显示对象重叠或相交。
DisplayObject
 Inherited
hitTestPoint(x:Number, y:Number, shapeFlag:Boolean = false):Boolean
计算显示对象,以确定它是否与 x 和 y 参数指定的点重叠或相交。
DisplayObject
 Inherited
指示 Object 类的实例是否在指定为参数的对象的原型链中。
Object
 Inherited
将三维显示对象的(本地)坐标的三维点转换为舞台(全局)坐标中的二维点。
DisplayObject
 Inherited
将 point 对象从显示对象的(本地)坐标转换为舞台(全局)坐标。
DisplayObject
  
将此对象移动到指定的 x 和 y 坐标。
BitmapAsset
 Inherited
指示指定的属性是否存在、是否可枚举。
Object
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
从 EventDispatcher 对象中删除侦听器。
EventDispatcher
  
setActualSize(newWidth:Number, newHeight:Number):void
设置此对象的实际大小。
BitmapAsset
 Inherited
设置循环操作动态属性的可用性。
Object
 Inherited
返回一个字符串,用于指示此对象在应用程序的 DisplayObject 层次结构中所处的位置。
FlexBitmap
 Inherited
返回指定对象的原始值。
Object
 Inherited
检查是否用此 EventDispatcher 对象或其任何始祖为指定事件类型注册了事件侦听器。
EventDispatcher
事件
 事件 摘要 定义方
 Inherited[广播事件] Flash Player 或 AIR 应用程序获得操作系统焦点并变为活动状态时将调度此事件。EventDispatcher
 Inherited将显示对象添加到显示列表中时调度。DisplayObject
 Inherited在将显示对象直接添加到舞台显示列表或将包含显示对象的子树添加至舞台显示列表中时调度。DisplayObject
 Inherited[广播事件] Flash Player 或 AIR 应用程序失去操作系统焦点并变为非活动状态时将调度此事件。EventDispatcher
 Inherited[播放事件] 播放头进入新帧时调度。DisplayObject
 Inherited[广播事件] 播放头退出当前帧时调度。DisplayObject
 Inherited[广播事件] 在帧显示对象的构造函数运行之后但在帧脚本运行之前调度。DisplayObject
 Inherited将要从显示列表中删除显示对象时调度。DisplayObject
 Inherited在从显示列表中直接删除显示对象或删除包含显示对象的子树时调度。DisplayObject
 Inherited[广播事件] 将要更新和呈现显示列表时调度。DisplayObject
属性详细信息
measuredHeight属性
measuredHeight:Number  [只读 (read-only)]

此对象的测量高度。

通常为图形外观硬编码此属性,因为此数字只是图形中的像素数目。对于代码外观来说,如果希望以特定大小进行绘制,也可以对其进行硬编码。如果此大小可以随属性更改,您可能还希望是 ILayoutManagerClient,以便在适当时调用 measure() 方法,从而能够计算 measuredHeight



实现
    public function get measuredHeight():Number
measuredWidth属性 
measuredWidth:Number  [只读 (read-only)]

此对象的测量宽度。

通常为图形外观硬编码此属性,因为此数字只是图形中的像素数目。对于代码外观来说,如果希望以特定大小进行绘制,也可以对其进行硬编码。如果此大小可以随属性更改,您可能还希望是 ILayoutManagerClient,以便在适当时调用 measure() 方法,从而能够计算 measuredHeight



实现
    public function get measuredWidth():Number
构造函数详细信息
BitmapAsset()构造函数
public function BitmapAsset(bitmapData:BitmapData = null, pixelSnapping:String = "auto", smoothing:Boolean = false)

构造函数。

参数
bitmapData:BitmapData (default = null) — 位图图像的数据。
 
pixelSnapping:String (default = "auto") — 位图是否与最近的像素对齐。
 
smoothing:Boolean (default = false) — 在缩放时是否对位图进行平滑处理。
方法详细信息
move()方法
public function move(x:Number, y:Number):void

将此对象移动到指定的 x 和 y 坐标。

参数

x:Number — 此对象的新 x 位置。
 
y:Number — 此对象的新 y 位置。

setActualSize()方法 
public function setActualSize(newWidth:Number, newHeight:Number):void

设置此对象的实际大小。

此方法主要用于实现 updateDisplayList() 方法。在此期间,您可以根据其显式大小、相对于父项的(百分比)大小以及度量大小计算此对象的实际大小。然后,通过调用 setActualSize() 将此实际大小应用于对象。

在其它情况下,您应该设置 widthheightpercentWidthpercentHeight 属性,而非调用此方法。

参数

newWidth:Number — 此对象的新宽度。
 
newHeight:Number — 此对象的新高度。