利用Flash CS4的PNG压缩,但作为外部文件?

问题描述:

下面是问题:我正在开发一些Flash网站,并真正享受AS3。利用Flash CS4的PNG压缩,但作为外部文件?

问题: PNG 24位图像太大了......我有三张PNG图像,透明度是每隔10秒钟左右在“主页”上旋转。大。没问题 - 但不是将所有三个PNG嵌入到SWF中,这会花费更长的时间加载,我想从外部文件动态加载它们,以便用户不必等待图像加载无论如何不会再显示10-15秒。没关系......我有工作代码。

真正的问题:这些PNG大小,即使从外部文件飞行加载,真的让我烦恼。使用Photoshop保存时,一张图像为350k - 当使用PNGOUT时,图像为300k。但是...当我将PNG导入到Flash的库中时,我可以进入并设置为JPG /图像压缩,从而将尺寸缩小到约45k,但仍保留alpha信息!如果Flash可以压缩我的PNG,并且仍然使它看起来不错,为什么我找不到可以为外部文件执行相同操作的应用程序?我很满意将我的图像加载到Flash库中并让它处理压缩,但如果我得到5或6张图像,则加载时间过长。

摘要:如何将我的350k PNG图像缩小到45k,像Flash一样将它导入到它的库中时呢?

可能的解决方案:或.... hmmmm ....这可能是一种解决方法...也许我可以为每个PNG制作一个单独的SWF电影我想使用哪个使用Flash压缩映像 - 然后使用Loader动态地读取文件...那应该工作! 我将返回并报告...

但是,Flash仍然如此压缩这些PNG比PNGOUT这样的压缩器更多吗?也许我只是没有通过正确的参数让他们有效。

感谢您阅读我的ramblings。你们都是一个伟大的探空板!

+0

希望这个小游览可以帮助有人出类似的问题。使用外部SWF文件导入PNG并压缩为la Flash似乎可行 - 我担心透明背景可能是一个问题,但在将HTML发布设置中的窗口模式设置为透明/无窗口后,它会起作用像一个魅力。 但是,任何其他建议将非常欢迎! – Eddie 2010-05-18 21:06:28

PNG压缩是无损的,所以它不能像JPEG那样与有损的感知压缩方案竞争。只要确保你的PNG是要显示的大小(或不是:一个简单的“压缩”方案将保存你的图像缩小和显示时放大,但这通常不令人满意)。如果你不能低于24位(我想你不能去256位),我不认为可以做很多事情。我只能建议看看PngCrush

我曾经有同样的问题,但后来,我认为闪存使用JPEG压缩PNG文件。 JPEG压缩的“PNG”实际上是标准PNG格式不支持的变体,但是闪存支持。在我自己的flash项目中,我用了很多。我甚至使用swftools从很多png生成动画SWF,所以我可以加载单个“png gallery”swf并使用里面的所有png。

我知道这个问题已经过去了一年,但我认为这对未来的参考很有帮助。使用任何png压缩工具(PngCrush,Optipng)都无法获得与Flash压缩相同的结果。

我发现使用Flash压缩而不在Flash IDE中创建每个swf的最佳方法是使用SwfTools的png2swf实用程序,它将保留alpha通道并允许您设置jpeg的压缩质量。

http://www.swftools.org/png2swf.html