代码之家  ›  专栏  ›  技术社区  ›  ohho

如何为480 x 320屏幕平铺30000 x 6000图像?

  •  2
  • ohho  · 技术社区  · 15 年前

    (这与 another question 关于在iPhone上实现)

    我有一个大图像,大小约30000(宽)x 6000(高)像素。你可能会认为它像一张大地图。我想我需要把它切成小块。问题:

    • 瓷砖策略是什么?

    要求:

    • 整个图像(尽管已裁剪)可以通过滑动向上/向下/左/右滚动
    • 通过2指操作放大(最多像素到像素)缩小(根据高度缩小到屏幕大小)
    • 通过延迟加载块提高内存效率

    谢谢!

    2 回复  |  直到 15 年前
        1
  •  3
  •   Rob Lourens    15 年前

    查看苹果的第3部分 ScrollViewSuite 示例代码,以了解如何执行此操作。

        2
  •  2
  •   Saulius Žemaitaitis    15 年前

    您可以使用类似于 MIP mapping 有效缩放。简而言之,您可以准备原始图像的1/2、1/4、1/8等尺寸的图像,并根据所需的缩放级别加载/显示它们。这将以存储空间为代价节省一些缩放计算(大约需要增加1/3的存储空间)。

    至于平移,可以在可见区域周围预加载一些瓷砖。如果用户在特定方向上平移,则可以考虑平移速度,以便在该方向上预加载更多瓷砖。