2012-07-27 41 views
1

我正在使用Android应用程序来显示图像。其中一个必要条件是显示千兆像素图像。Gigapixel图像Android应用程序

我发现显示正常图像(> = 1Mb)的内存问题,但我认为我解决了它。 对于千兆像素图像,这是管理这些文件(> = 15Mb)并防止OutOfMemory错误的最佳方法吗? 有人曾与这种类型的图像?

回答

3

任何时候我都会看到过这样的事情(当我看到在绘制引擎中应用了超大尺寸的纹理时,这种情况更多),图像以瓦片形式引入,就像Google地图带来的东西一样。

根据缩放级别使用不同的图像(mipmap),每个图像具有不同的细节级别,并且只加载所需的图块。通过这种方式(取决于您在应用程序中需要的内容),您可以在加载小图片时获得较高的细节,但在放大时保持非常高的细节。

+4

除此之外,您还可以使用非常大的图像,并在需要时使用子采样以较低的质量渲染图像。那么你不需要不同质量的重复图像。 (你本质上创建质量较低的图像) – 2012-07-27 09:10:14

+0

@MikeT是的好点我忘了提到这一点。 – 2012-07-27 09:11:30

1

Android对应用程序有内存限制,通常约为48/64MB。 我是Android的Gigapixel Pano Viewer PPV360HD的作者。我用过C++,本地层没有这个约束。