| 包 | flash.display |
| 类 | public class Bitmap |
| 继承 | Bitmap DisplayObject EventDispatcher Object |
| 子类 | FlexBitmap |
| 语言版本: | ActionScript 3.0 |
| 运行时版本: | AIR 1.0 Flash Player 9 |
Bitmap() 构造函数创建的图像。
利用 Bitmap() 构造函数,可以创建包含对 BitmapData 对象的引用的 Bitmap 对象。创建了 Bitmap 对象后,使用父 DisplayObjectContainer 实例的 addChild() 或 addChildAt() 方法将位图放在显示列表中。
一个 Bitmap 对象可在若干 Bitmap 对象之中共享其 BitmapData 引用,与转换属性或旋转属性无关。由于能够创建引用相同 BitmapData 对象的多个 Bitmap 对象,因此,多个显示对象可以使用相同的复杂 BitmapData 对象,而不会因为每个显示对象实例使用一个 BitmapData 对象而产生内存开销。
Bitmap 对象可通过以下两种方式之一将 BitmapData 对象绘制到屏幕上:使用矢量渲染器作为填充位图形状,或使用更快的像素复制例程。像素复制例程的速度比矢量渲染器要快很多,但 Bitmap 对象必须满足某些条件才能使用该例程:
setMask() 方法进行剪裁。
如果从中加载 Bitmap 对象的域不同于用于加载图像的 Loader 对象的域,并且没有用于允许访问 Loader 对象的域的 URL 策略文件,则该域中的脚本无法访问 Bitmap 对象或其属性及方法。有关详细信息,请参阅以下部分:
注意:Bitmap 类不是 InteractiveObject 类的子类,因此它无法调度鼠标事件。 但是,可以使用包含 Bitmap 对象的显示对象容器的 addEventListener() 方法。
另请参见
| 属性 | 定义方 | ||
|---|---|---|---|
![]() | accessibilityProperties : AccessibilityProperties 此显示对象的当前辅助功能选项。 | DisplayObject | |
![]() | alpha : Number 指示指定对象的 Alpha 透明度值。 | DisplayObject | |
| bitmapData : BitmapData 被引用的 BitmapData 对象。 | Bitmap | ||
![]() | blendMode : String BlendMode 类中的一个值,用于指定要使用的混合模式。 | DisplayObject | |
![]() | blendShader : Shader [只写] 设置用于混合前景和背景的着色器。 | DisplayObject | |
![]() | cacheAsBitmap : Boolean 如果设置为 true,则 Flash Player 或 Adobe AIR 将缓存显示对象的内部位图表示形式。 | DisplayObject | |
![]() | constructor : Object
对类对象或给定对象实例的构造函数的引用。 | Object | |
![]() | filters : Array 包含当前与显示对象关联的每个滤镜对象的索引数组。 | DisplayObject | |
![]() | height : Number 指示显示对象的高度,以像素为单位。 | DisplayObject | |
![]() | loaderInfo : LoaderInfo [只读 (read-only)] 返回一个 LoaderInfo 对象,其中包含加载此显示对象所属的文件的相关信息。 | DisplayObject | |
![]() | mask : DisplayObject 调用显示对象被指定的 mask 对象遮罩。 | DisplayObject | |
![]() | mouseX : Number [只读 (read-only)] 指示鼠标位置的 x 坐标,以像素为单位。 | DisplayObject | |
![]() | mouseY : Number [只读 (read-only)] 指示鼠标位置的 y 坐标,以像素为单位。 | DisplayObject | |
![]() | name : String 指示 DisplayObject 的实例名称。 | DisplayObject | |
![]() | opaqueBackground : Object 指定显示对象是否由于具有某种背景颜色而不透明。 | DisplayObject | |
![]() | parent : DisplayObjectContainer [只读 (read-only)] 指示包含此显示对象的 DisplayObjectContainer 对象。 | DisplayObject | |
| pixelSnapping : String 控制 Bitmap 对象是否贴紧至最近的像素。 | Bitmap | ||
![]() | prototype : Object [静态]
对类或函数对象的原型对象的引用。 | Object | |
![]() | root : DisplayObject [只读 (read-only)] 对于加载的 SWF 文件中的显示对象,root 属性是此 SWF 文件所表示的显示列表树结构部分中的顶级显示对象。 | DisplayObject | |
![]() | rotation : Number 指示 DisplayObject 实例距其原始方向的旋转程度,以度为单位。 | DisplayObject | |
![]() | rotationX : Number 指示 DisplayObject 实例相对于 3D 父容器距离其原始方向的 x 轴旋转(以度为单位)。 | DisplayObject | |
![]() | rotationY : Number 指示 DisplayObject 实例相对于 3D 父容器距离其原始方向的 y 轴旋转(以度为单位)。 | DisplayObject | |
![]() | rotationZ : Number 指示 DisplayObject 实例相对于 3D 父容器距离其原始方向的 z 轴旋转(以度为单位)。 | DisplayObject | |
![]() | scale9Grid : Rectangle 当前有效的缩放网格。 | DisplayObject | |
![]() | scaleX : Number 指示从注册点开始应用的对象的水平缩放比例(百分比)。 | DisplayObject | |
![]() | scaleY : Number 指示从对象注册点开始应用的对象的垂直缩放比例(百分比)。 | DisplayObject | |
![]() | scaleZ : Number 指示从对象的注册点开始应用的对象的深度缩放比例(百分比)。 | DisplayObject | |
![]() | scrollRect : Rectangle 显示对象的滚动矩形范围。 | DisplayObject | |
| smoothing : Boolean 控制在缩放时是否对位图进行平滑处理。 | Bitmap | ||
![]() | stage : Stage [只读 (read-only)] 显示对象的舞台。 | DisplayObject | |
![]() | transform : Transform 一个对象,具有与显示对象的矩阵、颜色转换和像素范围有关的属性。 | DisplayObject | |
![]() | visible : Boolean 显示对象是否可见。 | DisplayObject | |
![]() | width : Number 指示显示对象的宽度,以像素为单位。 | DisplayObject | |
![]() | x : Number 指示 DisplayObject 实例相对于父级 DisplayObjectContainer 本地坐标的 x 坐标。 | DisplayObject | |
![]() | y : Number 指示 DisplayObject 实例相对于父级 DisplayObjectContainer 本地坐标的 y 坐标。 | DisplayObject | |
![]() | z : Number 指示 DisplayObject 实例相对于 3D 父容器沿 z 轴的 z 坐标位置。 | DisplayObject | |
| 方法 | 定义方 | ||
|---|---|---|---|
初始化 Bitmap 对象以引用指定的 BitmapData 对象。 | Bitmap | ||
![]() | addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void 使用 EventDispatcher 对象注册事件侦听器对象,以使侦听器能够接收事件通知。 | EventDispatcher | |
![]() | 将事件调度到事件流中。 | EventDispatcher | |
![]() | 返回一个矩形,该矩形定义相对于 targetCoordinateSpace 对象坐标系的显示对象区域。 | DisplayObject | |
![]() | 返回一个矩形,该矩形根据 targetCoordinateSpace 参数定义的坐标系定义显示对象的边界,但不包括形状上的任何笔触。 | DisplayObject | |
![]() | 将 point 对象从舞台(全局)坐标转换为显示对象的(本地)坐标。 | DisplayObject | |
![]() | 将二维点从舞台(全局)坐标转换为三维显示对象的(本地)坐标。 | DisplayObject | |
![]() | 检查 EventDispatcher 对象是否为特定事件类型注册了任何侦听器。 | EventDispatcher | |
![]() |
指示对象是否已经定义了指定的属性。 | Object | |
![]() | 计算显示对象,以确定它是否与 obj 显示对象重叠或相交。 | DisplayObject | |
![]() | 计算显示对象,以确定它是否与 x 和 y 参数指定的点重叠或相交。 | DisplayObject | |
![]() |
指示 Object 类的实例是否在指定为参数的对象的原型链中。 | Object | |
![]() | 将三维显示对象的(本地)坐标的三维点转换为舞台(全局)坐标中的二维点。 | DisplayObject | |
![]() | 将 point 对象从显示对象的(本地)坐标转换为舞台(全局)坐标。 | DisplayObject | |
![]() |
指示指定的属性是否存在、是否可枚举。 | Object | |
![]() | 从 EventDispatcher 对象中删除侦听器。 | EventDispatcher | |
![]() |
设置循环操作动态属性的可用性。 | Object | |
![]() |
返回指定对象的字符串表示形式。 | Object | |
![]() |
返回指定对象的原始值。 | Object | |
![]() | 检查是否用此 EventDispatcher 对象或其任何始祖为指定事件类型注册了事件侦听器。 | EventDispatcher | |
| bitmapData | 属性 |
bitmapData:BitmapData [读写] | 语言版本: | ActionScript 3.0 |
| 运行时版本: | AIR 1.0 Flash Player 9 |
被引用的 BitmapData 对象。
public function get bitmapData():BitmapData public function set bitmapData(value:BitmapData):void| pixelSnapping | 属性 |
pixelSnapping:String [读写] | 语言版本: | ActionScript 3.0 |
| 运行时版本: | AIR 1.0 Flash Player 9 |
控制 Bitmap 对象是否贴紧至最近的像素。PixelSnapping 类包括以下可能值:
PixelSnapping.NEVER -- 不进行像素贴紧。
PixelSnapping.ALWAYS -- 图像始终与最近的像素贴紧,与变形无关。
PixelSnapping.AUTO -- 如果绘制图像时未应用旋转或倾斜效果,并且图像是以 99.9% 到 100.1% 的缩放系数绘制的,则图像将与最近的像素贴紧。如果这些条件得到满足,则以 100% 的缩放比例绘制位图图像,与最近的像素贴紧。在内部,此值允许用矢量渲染器以尽可能快的速度绘制图像。
public function get pixelSnapping():String public function set pixelSnapping(value:String):void| smoothing | 属性 |
smoothing:Boolean [读写] | 语言版本: | ActionScript 3.0 |
| 运行时版本: | AIR 1.0 Flash Player 9 |
控制在缩放时是否对位图进行平滑处理。如果为 true,则会在缩放时对位图进行平滑处理。如果为 false,则不会在缩放时对位图进行平滑处理。
public function get smoothing():Boolean public function set smoothing(value:Boolean):void| Bitmap | () | 构造函数 |
public function Bitmap(bitmapData:BitmapData = null, pixelSnapping:String = "auto", smoothing:Boolean = false)| 语言版本: | ActionScript 3.0 |
| 运行时版本: | AIR 1.0 Flash Player 9 |
初始化 Bitmap 对象以引用指定的 BitmapData 对象。
参数bitmapData:BitmapData (default = null) — 被引用的 BitmapData 对象。 | |||
pixelSnapping:String (default = "auto") — Bitmap 对象是否贴紧至最近的像素。 | |||
smoothing:Boolean (default = false) —
在缩放时是否对位图进行平滑处理。例如,下例显示使用系数 3 缩放的同一位图,smoothing 设置为 false(左侧)和 true(右侧):
|
threshold() 方法。此任务是使用以下步骤完成的:
url 属性,它是图像文件的位置和名称
configureAssets() 方法,而后者又调用 completeHandler() 方法。
configureAssets() 创建 Loader 对象,该对象随后实例化一个事件侦听器,而该事件侦听器在 completeHandler() 完成图像操作时调度。
buildChild() 方法创建一个 URLRequest 对象的新实例 request,该实例带有传递的 url,这样,就可以知道文件的名称和位置。
request 对象被传递给 loader.load() 方法,该方法通过显示对象将图像加载到内存中。
completeHandler() 方法将执行下列任务:
注意:
package {
import flash.display.Bitmap;
import flash.display.BitmapData;
import flash.display.Loader;
import flash.display.Sprite;
import flash.events.*;
import flash.geom.Point;
import flash.geom.Rectangle;
import flash.net.URLRequest;
public class BitmapExample extends Sprite {
private var url:String = "Image.gif";
private var size:uint = 80;
public function BitmapExample() {
configureAssets();
}
private function configureAssets():void {
var loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler);
loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
var request:URLRequest = new URLRequest(url);
loader.x = size * numChildren;
loader.load(request);
addChild(loader);
}
private function duplicateImage(original:Bitmap):Bitmap {
var image:Bitmap = new Bitmap(original.bitmapData.clone());
image.x = size * numChildren;
addChild(image);
return image;
}
private function completeHandler(event:Event):void {
var loader:Loader = Loader(event.target.loader);
var image:Bitmap = Bitmap(loader.content);
var duplicate:Bitmap = duplicateImage(image);
var bitmapData:BitmapData = duplicate.bitmapData;
var sourceRect:Rectangle = new Rectangle(0, 0, bitmapData.width, bitmapData.height);
var destPoint:Point = new Point();
var operation:String = ">=";
var threshold:uint = 0xCCCCCCCC;
var color:uint = 0xFFFFFF00;
var mask:uint = 0x000000FF;
var copySource:Boolean = true;
bitmapData.threshold(bitmapData,
sourceRect,
destPoint,
operation,
threshold,
color,
mask,
copySource);
}
private function ioErrorHandler(event:IOErrorEvent):void {
trace("Unable to load image: " + url);
}
}
}