我在 Animate CC 的舞台上有一些 PNG 图像,如何用另一个通过代码导入库的 PNG 更改/交换图像?
问问题
602 次
1 回答
0
要从库中添加图像,您需要为该图像设置 AS3 类(让它成为 image.flame),然后
import image.flame;
import flash.display.Bitmap;
import flash.display.BitmapData;
var aRaster:BitmapData = new image.flame();
var aBitmap:Bitmap = new Bitmap(aRaster);
aBitmap.name = "Flame";
addChild(aBitmap);
删除可能有点棘手。
1) 如果 Animate CC 允许命名位图实例,那么您很幸运,可以命名它(例如 Flame),然后:
removeChild(getChildByName("Flame"));
1.1) 你也可以用 MovieClip 包装该位图并给它一个正确的名称。我认为这是最可靠的方法。
2)如果 Animate CC 不允许命名位图,就像我没有的 CS6 一样,那么您最多可以选择几个选项。
2.1)如果您的位图是其容器中唯一的孩子,只需将其删除
removeChildAt(0);
2.2)如果它是其他一些内容中唯一的位图,你可以找到它并删除:
for (var i:int = 0; i < numChildren; i ++)
{
var aChild:Bitmap = getChildAt(i) as Bitmap;
if (aChild)
{
removeChild(aChild);
break;
}
}
2.3) 如果该位图是多个位图之一,并且此容器中还有其他内容,那么...猜测它的深度并removeChildAt(...)它,或者选择选项#1.1 并用 MovieClip 包装该位图具有实例名称并可用于删除。
PS 顺便说一句,我记得在 CS6 之前,Flash 将位图(位图类)转换为位图填充的形状(形状类),所以无论如何#1.1 是你最好的朋友。
于 2017-02-07T21:56:01.833 回答