アイコンファイルのデコーダクラス作った
flash で favicon.ico を直接読み込みたいなと思ったので作りました。
マスクデータとかRLE圧縮とか全部対応してますが、クロスドメイン制約のせいでURLを直接指定して読み込むのはほとんど無理という罠。
実際に読み込むにあたっては面倒ですがサーバ介しましょう。
サーバサイドで画像変換しちゃえばいいじゃないかという本末転倒な解決策はこの際無視です。
以下サンプルコード。
デコード結果が配列なのは、ICOファイルに複数のアイコンデータが格納されているため。
var decoder:ICODecoder = new ICODecoder();
var arr:Array = decoder.decode( bytes );for ( var i:int = 0; i < arr.length; i++ ) {
var data:ICOImageData = arr[i] as ICOImageData;
if ( ( data.info.width == 16 ) && ( data.info.height == 16 ) ) {
// 16x16だったら
addChild( new Bitmap( data.image ) );
}
}


