# 外部ドメインからロードした画像に対しては、
# ピクセルデータにアクセスできない
これはトリッキーだ!と思った。
FlashPlayerでのプレビュー時にはこの問題は起きない、
ブラウザで見たときに初めて発動する。
発動条件:
# 読み込んだ画像をBitmapDataとして使いたい
今回は、Loaderで読み込んだ画像を使いまわしたい、という
ミッションのためにその読み込んだ画像をBitmapDataで
保持する必要があった。
# そもそもLoaderやMovieClipはコピー出来ないからこんなことに…
loaderをそのままMovieClip等にaddChildすれば問題ない。
問題は、loader.content を読み出す時だ。
今回の参考サイト:テック煮ブログ
AS で別ドメインの画像を読み込むときの注意点CommentsAdd Star
# こちらのサイトの “セキュリティサンドボックス侵害への対応”
詳しくは上記サイトを参考にしてもらうとして、
とりあえずTwitterのプロフィール画像を読み込むのであれば、
LoaderContext の checkPolicyFile を true にすることで解決。
function loadStart():void { // LoaderContextを準備 var context:LoaderContext = new LoaderContext(true); var loader:Loader = new Loader(); var req:URLRequest = new URLRequest("http://www.example.com/sample.png"); loader.load(req, context); // 第2引数に context を渡す loader.contentLoaderInfo .addEventListener(Event.COMPLETE,onLoaded); } function onLoaded(e:Event):void { var bmp:Bitmap = Bitmap(e.target.content); }
ご参考までに。