AS3中的PNG alpha透明度 - 未知文件类型

时间:2010-04-06 15:24:01

标签: php actionscript-3 actionscript png

在缩小选项后,我们遇到了PNG和ActionScript 3(AS3)的问题。

当加载具有alpha透明度的PNG 8或PNG 32时,我们在Flash中报告了以下错误: -

“错误#2124:加载的文件是未知类型”

现在,我们正在处理一些遗留图像,看起来这个问题并不普遍 - 一些被认为是32位alpha PNG的图像正在加载。但是,一些结论: -

  • 将一个32位alpha(不在AS3中工作)的图像转换为PNG 8索引透明度DID工作。
  • 将同一张图片转换为PNG 8 alpha DID无效。
  • 这些都在AS2中起作用
  • 标题
  • 之间没有区别

失败图像的标题

[0] => HTTP/1.1 200 OK
[1] => Date: Tue, 06 Apr 2010 14:17:28 GMT
[2] => Server: Apache/2.2.3 (Red Hat)
[3] => Last-Modified: Tue, 06 Apr 2010 13:44:05 GMT
[4] => ETag: "3700054-11d6-a3983340"
[5] => Accept-Ranges: bytes
[6] => Content-Length: 4566
[7] => Connection: close
[8] => Content-Type: image/png

工作图像的标题

[0] => HTTP/1.1 200 OK
[1] => Date: Tue, 06 Apr 2010 14:19:02 GMT
[2] => Server: Apache/2.2.3 (Red Hat)
[3] => Last-Modified: Fri, 30 Oct 2009 18:38:08 GMT
[4] => ETag: "ba8057-65f2-5445c400"
[5] => Accept-Ranges: bytes
[6] => Content-Length: 26098
[7] => Connection: close
[8] => Content-Type: image/png

任何关于进一步调查方向的想法或对一个令人困惑的问题的想法,几乎没有文件;非常热烈欢迎。

修改

现在,似乎PHP转换图像中的某些东西是轴系;我使用以下PHP添加alpha图层: -

imagealphablending($image_p, false);
ImageSaveAlpha($image_p, true);
ImageFill($image_p, 0, 0, IMG_COLOR_TRANSPARENT); 

1 个答案:

答案 0 :(得分:2)

HTTP标头实际上对Flash播放器来说很少。它通常会查看文件头,因此您应该查看这些是否正确。此外,如果您使用图形软件,打开它并再次导出它,32位透明度会发生什么。问题消失了吗?

最后但同样重要的是,您应该考虑Flash Player不支持所有PNG功能。人们通常遇到的是隔行扫描。可能是吗?