Как создать изображение размером 30000 x 6000 для экрана 480 x 320? - PullRequest
2 голосов
/ 28 апреля 2010

(это связано с другим вопросом о реализации на iPhone)

У меня большое изображение размером около 30000 (ш) х 6000 (ч) пикселей. Вы можете считать, что это как большая карта. Я предполагаю, что мне нужно обрезать его в меньшие плитки. Вопросы:

  • какова стратегия тайлов?

Требования:

  • все изображение (хотя и обрезанное) можно прокручивать вверх / вниз / влево / вправо с помощью пролистывания
  • увеличение (до пикселя к пикселю) (до размера экрана по высоте) с помощью операции с двумя пальцами
  • эффективность памяти при ленивой загрузке тайлов

Спасибо!

Ответы [ 2 ]

3 голосов
/ 28 апреля 2010

Ознакомьтесь с частью 3 примера кода ScrollViewSuite от Apple, чтобы узнать, как это сделать.

2 голосов
/ 28 апреля 2010

Вы можете использовать технику, аналогичную MIP mapping для эффективного масштабирования. Одним словом, вы готовите изображения размером 1/2, 1/4, 1/8 и т. Д. С размерами исходного изображения и загружаете / отображаете их в соответствии с требуемым уровнем масштабирования. Это сэкономит некоторые масштабирующие вычисления за счет дискового пространства (потребуется примерно 1/3 больше дискового пространства).

Что касается панорамирования, идея может заключаться в том, чтобы некоторые плитки были предварительно загружены вокруг видимой области. Если пользователь выполняет панорамирование в определенном направлении, скорость панорамирования может учитываться для предварительной загрузки большего количества плиток в этом направлении.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...