在Flash中,BitmapData对象可用于在RAM中存储位图,稍后您可以使用beginBitmapFill()方法将它们绘制到MovieClip。
如何将外部位图文件(.jpg)加载到BitmapData对象中?
即使是AS3代码也会有所帮助。
答案 0 :(得分:42)
AS3代码加载PNG并“获取”其bitmapData
var bitmapData:BitmapData;
var loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete);
loader.load(new URLRequest("../lib/img.png"));
function onComplete (event:Event):void
{
bitmapData = Bitmap(LoaderInfo(event.target).content).bitmapData;
}
答案 1 :(得分:9)
参考棉花的第一篇文章。
实际上每个图像都是一个位图,所以你需要做的就是
bitmapData = event.target.content.bitmapData
而不是
bitmapData = Bitmap(LoaderInfo(event.target).content).bitmapData;
答案 2 :(得分:6)
从棉花中取出,这将在加载后显示位图:
import flash.display.Bitmap;
import flash.display.BitmapData;
var bitmapData:BitmapData;
var bmVis:Bitmap;
var loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete);
loader.load(new URLRequest("put url here"));
function onComplete (event:Event):void
{
trace("loaded!");
bitmapData = event.target.content.bitmapData;
bmVis = new Bitmap(bitmapData);
this.addChild(bmVis);
}
答案 3 :(得分:5)
您必须将外部文件(.jpg)加载到MovieClip中并等待它加载。
然后将包含外部文件的MovieClip快照放入BitmapData对象中。
myBitmap = new BitmapData(myMC._width, myMC._height,true,0x00FFFFFF)
myBitmap.draw( myMC)
答案 4 :(得分:1)
GUI阶段:
将图像加载到库中(文件 - >导入 - >库)
在库浏览器中,右键单击并单击“属性”,注意它是X乘Y像素
打开“高级”标签。
选择“导出动作脚本”。导出为myImg
Actionscript阶段:
import flash.display.BitmapData;
import flash.display.Bitmap; //needed?
..........
var myPic:BitmapData = new myImg(X,Y);