0

アイテムのサイズが現在よりも小さく変更されている場合にのみ、ムービークリップを比例的にスケーリングしようとしています。

明らかに、次のように ScaleX/Y 値を使用できます。

if (cont.scaleX < cont.scaleY ) { cont.scaleY = cont.scaleX; } そうでなければ { cont.scaleX = cont.scaleY; }

stageWidth/Height がムービークリップよりも小さいという特別な場合にのみ、スケールの比率を制限/リセットする必要があります。

私の人生のためにそれを行うことはできません。

ありがとう

4

1 に答える 1

3

頭の片隅からですが、可能性のある何かを探る答えが見つかるかもしれません:

編集:最初のコメントに応じて最大スケール1を追加しました。動作するはずです...

var sw:Number = stage.stageWidth,
    sh:Number = stage.stageHeight;    

if( sw/sh < c.width/c.height ) // (or the opposite depending on the way of scaling)
{
   c.width = Math.min(origW,sw);
   c.scaleY = c.scaleX = Math.min(1, c.scaleX);
} 
else
{
   c.height = Math.min(origH,sh);
   c.scaleX = c.scaleY = Math.min(1, c.scaleY);
}
于 2010-02-02T00:59:23.447 に答える