2

有没有办法以改变对象的宽度和高度的方式屏蔽影片剪辑?我有一个宽度较大的子影片剪辑,因此在按比例操纵父影片剪辑的宽度、高度和坐标时遇到问题。

我很感激帮助。谢谢你。

4

4 回答 4

4

Colin Moock 在这里对这个主题有一篇很好的文章,包括一种通过位图获取可见宽度和高度而不是内容的宽度和高度的繁琐方法:

http://www.moock.org/blog/archives/000292.html

于 2010-03-13T14:13:18.463 回答
1

我在 actionscript 中找到了一种简单的方法。

首先为将包含遮罩和“要遮罩的项目”的影片剪辑创建一个类。

此影片剪辑必须具有相同的宽度和掩码的高度,以便在不改变影片尺寸的情况下操作内部数据。

为了做到这一点,我只需覆盖它的宽度和高度。像这样的东西:

public class MyMaskedItem extends MovieClip
{
   public var mvMask:MovieClip;
   public var mvContent:MovieClip;

   public function MyMaskedItem() { 
      this.mask = mvMask;
   }

   /**
    * Override width and height properties
    */

   override public function get width():Number { return this.mvMask.width; }

   override public function set width(value:Number):void 
   {
      this.mvMask.width = value;
   }


   override public function get height():Number { return this.mvMask.height; }

   override public function set height(value:Number):void 
   {
      this.mvMask.height = value;
   }

}

现在只是将内容添加到 mvContent 电影中;

希望能帮助到你!

于 2011-11-17T13:20:37.203 回答
0

使用父对象的 _xscale 和 _yscale 属性(而不是 _height 和 _width)可能会有所帮助,因为这些属性不受子对象大小的影响。

因此,如果您的 parentClip 为 50 宽 x 80 高,则将其重新调整为 150 x 160

parentClip._xscale=3; parentClip._yscale=2;//still works even after child is added

(这适用于 AS2,但代码与 AS3 类似……您的问题并不具体)

于 2010-03-13T00:22:14.800 回答
0

您还可以获取蒙版本身的尺寸,而不是影片剪辑。

于 2010-03-17T16:03:13.133 回答