Как обрабатывать загруженные изображения с помощью CATiledLayer - PullRequest
0 голосов
/ 01 января 2011

Happy New Year,

Я пишу приложение, в котором пользователь ищет изображения с высоким разрешением в Интернете, а затем загружает эти большие изображения.Мне нужно показать их в UIScrollView.

На сайте разработчика Apple я нашел сеанс 104 WWDC 2010 на UIScrollViews, который объясняет, как я могу использовать CATiledLayer с набором плиток, созданным вручную, с различными уровнями масштабирования.

Есть ли способ программно сгенерировать плитки из загруженного файла изображения высокого разрешения?

Любые рекомендации?

Спасибо

Ответы [ 2 ]

0 голосов
/ 02 января 2011

В книге есть пример, описывающий базовую анимацию ( ссылка ), освещающий именно это.Кроме того, книга стоит денег на другие вещи :-)

0 голосов
/ 01 января 2011

Начиная с CGImage (UIImage имеет свойство CGImage только для чтения, если вы начинаете с UIImage), вы можете использовать CGImageCreateWithImageInRect для создания плиток из оригинала.

Чтобы создавать плитки с различными уровнями масштабирования, вам, вероятно, потребуется нарисовать масштабированное изображение CGImage в графическом контексте и использовать UIGraphicsGetImageFromCurrentImageContext, чтобы получить UIImage, содержащий нарисованное изображение, которое затем можно записать в некоторый кэш. См. «Создание и рисование изображений» в Руководстве по рисованию и печати для iOS.

...