原文地址:http://www.bytearray.org/?p=1206
Let me introduce the new version of ScaleBitmap :
ScaleBitmap V2 Illustration
I have totally rewritten ScaleBitmap to suit my needs :
Better usage of memory : no more creation of BitmapData instance (possibility to swap BitmapData)
Outer drawing capability
ScaleBitmapSprite
The outer drawing & ScaleBitmapSprite allows you to :
Easily deal with shadow, glow, overlapping icon effects
Use real size & position to align or place your elements
Usage 1 : ScaleBitmap
1.ScaleBitmap.draw(
2.bitmap : BitmapData,
3.graphic:Graphics,
4.width:Number,
5.height:Number,
6.inner : Rectangle,
7.outer : Rectangle=null
8.):void
If outer is not null, ScaleBitmap use a negative offset for drawing (according to outer properties)
If outer is null, ScaleBitmap works as a classic Scale9 grid drawer
Usage 2 : ScaleBitmapSprite
01.ScaleBitmapSprite(
02.bitmap : BitmapData,
03.inner : Rectangle,
04.outer : Rectangle=null)
05.
06.var s:ScaleBitmapSprite=new ScaleBitmapSprite(mySkin, new Rectangle(20,20,80,20), new Rectangle(15,15,90,30));
07.addChild(s);
08.s.width=80;
09.s.height=40;</a>
ScaleBitmapSprite override public size setter & getter : you can move & resize a ScaleBitmapSprite object without taking care of bitmap outer drawing.
Simple MyButton class using ScaleBitmapSprite (click the button) :
Sources FCS4 [ require Eaze to compile]
Download ScaleBitmap & ScaleBitmapSprite :
Repository : http://gist.github.com/264250
Some of you prefer gist, so as possible, I will share my new projects via gist.
Hope this class help & merry Xmas to bytearray readers.
[EDIT 2010-05-18]
A new version 1.1 is available !
Jerôme Decoster, a talented french developer have made a lot of improvements in this new version :
- smooth support
- invalidation for ScaleBitmapSprite
- code optimization
- inner drawing correction
So many thanks to you Jerôme 
Repository : http://gist.github.com/264250