Bitmap#scale9Grid をパターン画像で
Bitmap で Scale9Grid を可能にした ScaleBitmap というクラスがあるのですが
これだとドットパターンなどの柄モノが使えないんですよね。
そもそも使い方が違うので、そうならなくて当然なのですが
やっぱりパターン画像を使いたいなあと思ったので、作ってみました。
FillBitmap
FillBitmap - wonderfl build flash online
サイズ可変のボタンや、枠的な装飾に使えるんじゃないでしょうか。使い方
初期化時に 元画像となるビットマップデータと、9スライスする矩形を指定します。
Rectangle に指定するパラメータの要領は DisplayObject#scale9Grid と同じです。
var fill:FillBitmap = new FillBitmap(bitmap.bitmapData, new Rectangle(6, 6, 12, 12)); fill.setSize(90, 90);
元画像の四隅を固定配置して、可変領域を bitmapFillRect のようにリピートで埋めています。
サイズ変更時は幅や高さの指定を、元画像の倍率とあわせる必要があります。
矩形領域の指定はインスタンスの scale9Grid パラメータで指定することもできます。
サイズ変更は、setSize メソッドまたは width/height から。
FillBitmap は Bitmap の拡張クラスなので、同じような感覚で使えると思います。