質問
私は、XMLファイルからイメージを動的にロードするフラッシュムービーを持っています。しかし私は、ページ1の画像は、私は別のページでこれを再利用しようとすると、全て400×200とPAGE2上の画像は、すべての745のx 422、読み込んだ画像が収縮しているされている、別のページでこの.swfファイルを再利用したいです(リサイズ) - 。私は、幅/高さで定義されていただきました!それらが一致したいと思いますが、彼らがステージがスケーリング方法に応じてスケールます。
容器(スプライト)上に配置した画像ローダ(AS3)を使用してIM
slideLoader.load(new URLRequest(xmlSlideshow..image[intCurrentSlide].@src));
私は様々なサイズが起動する段階を作ってみましたが、私はそれが可能ならばirrelavantようになり、本当にのように - すなわち:50×50すると、HTMLの幅/高さは、画像の幅/高さに設定されますロードされます。
イム明確でない場合は、イムないフラッシュウィザードがとても必要であれば、私はより多くの洞察力を与えるようにするよ、私を許してくださいます。
解決
カップル...まず、あなたは、正確な縮尺ではないアプリケーションを指定する必要があります。 (AS3コード)
stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;
あなたのイメージが(slideLoaderオブジェクトにリスナーを追加)ロードされると、次に、フラッシュのExternalInterfaceクラスを使用してJavaScript関数を実行します。
ExternalInterface.call('resizeFlashMovie', slideLoader.width, slideLoader.height);
そして、あなたのjavascript関数は、このようなものになるだろう。
function resizeFlashMovie(width, height) {
var flash = document.getElementById('yourFlashMovieId');
flash.style.width = width+'px';
flash.style.height = height+'px';
}
他のヒント
私は手でコードを持っていない謝罪、私はあなたが起動時にキャンバス上で無サイズを変更しないためのオプションを持って知っています。
理想的には、あなたは、embedタグの属性を経由して高さ/幅を渡すキャンバスには何のリサイズを持っていないし、あなたのイメージdimenionsを設定する次元で渡される使用することができます。
私はこれがそれであると信じています:
fscommand("allowscale","false");