请问我现在有一个正方形的图片,我想把他做成圆形,有什么办法呢?前提是用flex或者as3

2024-12-22 15:34:53
推荐回答(3个)
回答1:

原理就像楼上所说,用遮罩,下面是AS3的代码:
var bm:Bitmap; //这个是你的正方形图片,这个图片,你要赋值,或者用BitmapData新建一个Bitmap对象
var radius:Number = 60;//圆半径
var container:Sprite = new Sprite();//容器
var sp1:Sprite = new Sprite();
sp1.addChild(bm);
var sp2:Sprite = new Sprite();
sp2.graphics.beginFill(0x000000)
sp2.graphics.drawCircle(radius, radius, radius);
sp2.graphics.endFill();

sp1.mask = sp2;//设置遮罩
container.addChild(sp1);
container.addChild(sp2);

addChild(container); //加入舞台

回答2:

不管你在flex还是直接在flash pro里,反正操作原理就是:

正方图片是元件A,绘制一个圆形元件B,可以是sprite或者shape,然后

元件A.setMask(元件B);

回答3:

a.mask = yourMaskSprite