Posts Tagged ‘画像’

AS3:Twitterの画像を読み込むときの注意点

土曜日, 9月 11th, 2010

 
# 外部ドメインからロードした画像に対しては、
# ピクセルデータにアクセスできない
 
 
これはトリッキーだ!と思った。
 
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);
}

 
ご参考までに。