在iPhone上显示的巨大图像

时间:2012-01-17 14:59:53

标签: iphone ios xcode

好的,这是我的问题。我有一个巨大的jpg文件,18000 x 18000像素41MB大小。 如果你真的需要知道,这是一个有服务的国家的一部分地图。

我的项目非常简单。我只需要能够缩放并显示这个爷爷大小的图像。从方面适应到iPhone的100%。我不太确定这是否可以完成或需要多长时间。非常感谢任何见解。

我尝试过使用imageView,但我读到它真的不应该超过1024 x 1024.这比我的要低。如果你知道如何做到这一点,请分享!

3 个答案:

答案 0 :(得分:16)

您应该将图像分割成一系列放大倍数的图块。计算并构建这些离线,并将它们作为单个文件发送到应用程序包中。如果放大显示,请选择最接近的缩放尺寸。然后,您可以选择覆盖屏幕所需的图块,并制作网格。当用户缩放时,选择适当的图块大小。

这样做的好处是您不必将HUGE文件加载到内存中,只需要根据需要加载。

谷歌地图是这样做的。

不能给你任何代码,对不起!

答案 1 :(得分:2)

您应该遵循类似于Google地图和其他地图网站的方法。您需要分段切割整个地图,因此如果并非总是需要,用户不需要加载整个地图(加上加快时间的方式)

有一些可能适合您的解决方案,例如OpenLayers,甚至可以创建自定义Google地图,其中的图片显示为herehere

答案 2 :(得分:1)

这是Apple用于处理名为PhotoScroller的大型图像的示例。图像已经平铺。如果您需要在Cocoa中平铺图像的示例,请查看cimgf.com