2008年9月4日星期四

创建BitmapData对象

8.1 创建BitmapData对象
var bitmap:BitmapData=new BitmapData(100,100,true,0x00ffffff)
//添加到显示列表中.addChild( ) 方法添加的对象必须是flash.display.DisplayObject的子类才行,
而BitmapData 类继承自Object,所以不能直接加到列表中。要加到可视化对象列表中,可使用flash.display.Bitmap类,它是DisplayObject.类的子类,实际上是
BitmapData的一个包装类,允许BitmapData可被显示。
var image:Bitmap=new Bitmap(bitmap)addChild(image)
8.4问题我要载入外部图片作为BitmapData处理
解决办法使用flash.display.Loader 类载入图片,当图片载入完成时,通过loader的content 属性property,它就是个Bitmap。访问Bitmap的bitmapData 属性就在访问载入的图片
讨论通过Loader类载入外部位图。通过URLRequest 对象和位图的URL,监听loader的complete事件确定是否载入完成:
package {import flash.display.Sprite;import flash.display.Loader;import flash.events.Event;import flash.net.URLRequest;public class BitmapLoader extends Sprite {private var _loader:Loader = new Loader( );public function BitmapLoader( ) {_loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete);_loader.load(new URLRequest("image.jpg"));}}}public function onComplete(event:Event):void {var image:Bitmap = Bitmap(_loader.content);var bitmap:BitmapData = image.bitmapData;addChild(image);}
Bitmap(bitmapData:BitmapData = null, pixelSnapping:String = "auto", smoothing:Boolean = false)
初始化 Bitmap 对象以引用指定的 BitmapData 对象。

没有评论: