如何将位图文件加载到 BitmapData 对象中?

发布于 2024-07-16 13:53:42 字数 476 浏览 7 评论 0原文

在 Flash 中,BitmapData 对象可用于在 RAM 中存储位图,稍后您可以使用 beginBitmapFill() 方法。

如何将外部位图文件 (.jpg) 加载到 BitmapData 对象中?

甚至 AS3 代码也会有帮助。

In Flash, the BitmapData object can be used to store bitmaps in RAM, you can later draw them to a MovieClip using the beginBitmapFill() method.

How do you load an external bitmap file (.jpg) into a BitmapData object?

Even AS3 code would be helpful.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

靑春怀旧 2024-07-23 13:53:42

用于加载 PNG 并“获取”其位图数据的 AS3 代码

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;
}

AS3 code to load a PNG and "get" its 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;
}
睫毛上残留的泪 2024-07-23 13:53:42

参考棉花的第一个帖子。

实际上每个图像都是位图,所以您需要做的就是

bitmapData = event.target.content.bitmapData  

代替

bitmapData = Bitmap(LoaderInfo(event.target).content).bitmapData;

Refering to the first post by cotton.

Actually each image is a bitmap so all you need to do is

bitmapData = event.target.content.bitmapData  

instead of

bitmapData = Bitmap(LoaderInfo(event.target).content).bitmapData;
是伱的 2024-07-23 13:53:42

取自cotton和will,这将在加载后显示位图:

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);
}

taking from cotton and will, this will display the bitmap after it is loaded:

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);
}
围归者 2024-07-23 13:53:42

您必须将外部文件 (.jpg) 加载到 MovieClip 中并等待其加载。

然后将包含外部文件的 MovieClip 快照保存到 BitmapData 对象中。

myBitmap = new BitmapData(myMC._width, myMC._height,true,0x00FFFFFF)

myBitmap.draw( myMC)

请参阅Flash 8 中的图像 API 简介

You have to load the external file (.jpg) into a MovieClip and wait for it to load.

Then take a snapshot of the MovieClip that contains the external file, into your BitmapData object.

myBitmap = new BitmapData(myMC._width, myMC._height,true,0x00FFFFFF)

myBitmap.draw( myMC)

See Introducing the Image API in Flash 8.

超可爱的懒熊 2024-07-23 13:53:42

GUI 阶段:
将图像加载到库中(文件 -> 导入 -> 库)。
在库浏览器中,右键单击并点击“属性”,请注意它是 X x Y 像素。
打开“高级”选项卡。
选择“导出为动作脚本”。 导出为 myImg

Actionscript 阶段:

import flash.display.BitmapData;
import flash.display.Bitmap; //needed?
..........
var myPic:BitmapData = new myImg(X,Y);

GUI phase:
Load the image into the library (file -> import -> library).
In the library browser, right-click and hit "properties", notice that it is X by Y pixels.
Open up the "advanced" tab.
Select "export for Action Script". Export as myImg

Actionscript phase:

import flash.display.BitmapData;
import flash.display.Bitmap; //needed?
..........
var myPic:BitmapData = new myImg(X,Y);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文