Actionscript 3 在ActionScript3中嵌入位图
如何在Actionscript 3中嵌入位图并获取位图数据Actionscript 3 在ActionScript3中嵌入位图,actionscript-3,actionscript,bitmap,embed,Actionscript 3,Actionscript,Bitmap,Embed,如何在Actionscript 3中嵌入位图并获取位图数据 public class MyGame extends Sprite { [EMBED(source="Assets/helicopter1.png")] private static var BMClass:Class; public function MyGame() { var BM:Bitmap = new BMClass(); var BMData:BitmapData = ne
public class MyGame extends Sprite {
[EMBED(source="Assets/helicopter1.png")] private static var BMClass:Class;
public function MyGame() {
var BM:Bitmap = new BMClass();
var BMData:BitmapData = new BitmapData(BM.width, BM.height);
BMData.draw(BM)
}
}
我什么都试过了。如果我尝试实例化嵌入式类(new BMClass();
),我会遇到以下错误:
TypeError:Error#1007:尝试在非构造函数上实例化。
如果我使用
[EMBED(source=“Assets/helicopter1.png”)]私有静态变量BMClass:BitmapData代码>
或者类似的东西,BitmapData为空
编辑:
所以我发现嵌入的数据是空的,但我不知道为什么。我在嵌入过程中做错了什么?您不需要实例化为位图数据并绘制-您可以简单地:
[Embed(source="Assets/helicopter1.png")]
private var AssetClass:Class;
var bitmap:Bitmap = new AssetClass();
如果转码时没有出现错误,看起来您是正确嵌入的。您应该能够直接从位图获取位图数据:
[Embed(source="picture.jpg")]
private var Picture:Class;
// create a bitmap of the embedded
var pic:Bitmap = new Picture();
// add to display list
addChild(pic);
// if you need to get the bitmapData for something else
var bitmapData:BitmapData = pic.bitmapData;
在某些编辑器中(至少在我的Intellij版本中),嵌入标记区分大小写。我在使用[EMBED]时遇到了与您完全相同的错误,但当我切换到[EMBED]时效果非常好
i getTypeError:Error#1007:尝试在非构造函数上实例化
您是否仍在按照示例进行嵌入而不是嵌入?这似乎是其他所有人的正确答案,因此我将接受我将其作为位图使用BM=new BMClass()代码>。我不知道为什么它以前不起作用,但现在起作用了。谢谢你的帮助。太好了,很高兴你分类了:)正如我上面所说的,我不能做newassetclass()代码>