如何使用FlashDevelop,Haxe和Swfmill嵌入和显示png

时间:2009-07-12 05:40:27

标签: flash flashdevelop haxe

我无法在使用 Haxe 和FlashDevelop构建的简单Flash应用程序中显示png文件。

采取步骤

  • 将png文件添加到我的项目中。
  • 将png添加到库
  • 将选项设置为嵌入位图
  • 为对象“PlayerBitmap”
  • 设置ID
  • 验证生成的xml看起来是否正确

然后我尝试显示嵌入的图像:

var bitmap:Bitmap;
bitmap = new PlayerBitmap();
bitmap.x = 200;
bitmap.y = 200; 
addChild(bitmap);

代码编译并生成swf文件,但图像未显示。 有什么指针吗?

4 个答案:

答案 0 :(得分:2)

我通过创建两个简单的测试项目来加载图像,从而解决了这个问题。 第一次工作,第二次失败。 一个人有一个包裹的项目有一个区别。

我的Main工作项目没有像这样编译的包 - 主要

失败的项目是相同的,除了主要在一个包中,它编译如下 -main org.alexjeffery.Main

要在我的main位于org.alexjeffery包中时加载图像,我将图像名称设置为org.alexjeffery.PlayerBitmap而不是PlayerBitmap。

我现在写了一篇关于如何embed images using FlashDevelop and Haxe的教程。

答案 1 :(得分:0)

追踪时你会得到什么

  • bitmap
  • bitmap.bitmapData.rect
  • bitmap.bitmapData.getPixel
  • 的一些随机像素

更新1:您的PNG可能是隔行扫描,还是其他类似的东西?如果我记得很清楚,swfmill有交错图像的问题......

格尔茨

back2dos

答案 2 :(得分:0)

简单,打开项目目录,然后转到源文件夹,然后将* .png文件粘贴到那里。它们将被FlashDevelop自动检测到。

答案 3 :(得分:0)

您可能希望在Haxe手册中查看此页面:
http://haxe.org/manual/target-flash-resources.html

基本上你需要:

@:bitmap("relative/path/to/myfile.png") 
class MyBitmapData extends BitmapData { }