2011-06-09 140 views
2

我有一些非常大的PNG图像存储在数据库中(例如1000x15000像素,4.5MB)。我正在尝试使用Loader类加载这个...我遇到的问题是当我调用load()时,没有任何反应。没有事件,没有错误。加载器不会加载大图像

我可以采取相同的图像并嵌入它。只要我将高度设置为小于8000像素,它就可以正常工作。如果我将嵌入式图像转换为ByteArray并尝试加载它,则什么都不会发生。

有什么建议吗?

+0

你为什么要将图像存储在数据库中?更不用说大图像了。并回答你的问题,图像是大闪光灯将崩溃。 – 2011-06-10 18:38:27

回答

0

嗯,它看起来像有没有周围的闪光灯不限于任何方式。我最终做的是编写一个非常简单的servlet来提供图像,然后将图像显示在HTML组件中。

4

在AIR 1.5和Flash播放器10看一看,对于BitmapData对象 的 最大尺寸的宽度或高度, 8191个像素和的总数像素不能 超过16,777,215像素。 (因此,如果一个 BitmapData对象是8191个像素 宽,它只能是2048个像素 高。)在Flash Player 9及更早 和AIR 1.1和更早的版本, 限制是高度 2880个像素,宽度2880 。

来源:flash.display.BitmapData

+0

伟大的资源/答案。 – Marty 2011-06-10 05:03:00

+0

对,那么有什么方法可以将它全部加载到闪存中吗?我不需要它的全尺寸,即使我可以将它放大一半,它会很棒,但问题是我甚至无法加载它来缩小它的大小。 – Osman 2011-06-11 05:43:23

+0

宽度为15,000像素的图像资产有点荒谬。我假设你正在尝试处理高分辨率的照片,也许会显示预览?如果不需要自动化,那么最好的办法就是用photoshop进行往返并手动制作自己的缩略图,否则我唯一能想到的其他事情就是将图像资源的内容加载到ByteArray中,然后创建一个更小的位图对象使用一些缩略图算法来表示大图像资产。 – TheDarkIn1978 2011-06-11 10:21:49