ロードされた SWF をキャンバスに合わせてサイズ変更します
-
05-07-2019 - |
質問
.fla は 500 x 300 です。内部では、コンテンツが 500 x 300 のステージの外に移動し、画面から隠れたり、画面からはみ出したりしているように見えます。
.fla は準拠しました...SWFLoader 経由で Flex にロードされます。
<mx:Conainer width="500" height="300">
<mx:SWFLoader width="100%" height="100%" />
</mx:Conainer>
ロードされた .swf ファイルは、Flex の 500 x 300 コンテナの外側に表示されます。
コンテナの内側にあるものだけが表示されるようにするにはどうすればよいですか?
解決
わかりました、わかりました。
<mx:Canvas id="swfHolder" mask="{maskCanvas}">
<mx:SWFLoader id="swffer" scaleContent="true" />
</mx:Canvas>
<mx:Canvas id="maskCanvas" backgroundColor="#000000"/>
トリックは、「マスク」を使用することです。プロパティ。 「マスキング」を行うオブジェクトに注意してください。 backgroundColorプロパティが設定されている必要があります。この記事は役に立ちました:リンクテキスト
他のヒント
SWFLoader タグで scaleContent =&quot; true&quot;
を使用してください。
<mx:Conainer width="500" height="300" clipContent="true">
<mx:SWFLoader width="100%" height="100%" />
</mx:Conainer>
「clipContent」プロパティを使用する
Canvas の Flex ヘルプ:
ClipContent:Boolean [読み取り/書き込み]
このコンテナの子の位置やサイズがこのコンテナの境界線の外側に広がる場合に、クリップ マスクを適用するかどうか。false の場合、このコンテナの子は、このコンテナの境界線の外側に移動またはサイズ変更されても表示されたままになります。true の場合、このコンテナの子はクリップされます。
ClipContent が false の場合、このコンテナのスクロールは無効になり、スクロールバーは表示されません。ClipContent が true の場合、通常、コンテナーの子がコンテナーの境界線の外側に広がるときにスクロールバーが表示されます。スクロールバーの外観をさらに制御するには、horizontalScrollPolicy とverticalScrollPolicy を参照してください。