iPhone, как ты рисуешь со страницы текстуры, используя coregraphics? - PullRequest
0 голосов
/ 10 марта 2009

Я пытаюсь понять, как рисовать из TexturePage, используя CoreGraphics.

Учитывая страницу текстуры (CGImageRef), которая содержит несколько упакованных текстур размером 64x64, как мне отобразить подобласти с этой страницы в контекст устройства.

CGContextDrawImage, кажется, принимает только прямоугольник назначения. Я заметил CGImageCreateWithImageInRect, однако это создает новое изображение. Я не хочу нового изображения, которое я просто хочу нарисовать из исходного изображения.

Я уверен, что это возможно, однако я новичок в разработке для iPhone.

Любая помощь высоко ценится.

Спасибо

Ответы [ 2 ]

2 голосов
/ 10 марта 2009

Что не так с CGImageCreateWithImageInRect?

CGImageRef subImage = CGImageCreateWithImageInRect(image, srcRect);
if (subImage) {
    CGContextDrawImage(context, destRect, subImage);
    CFRelease(subImage);
}
1 голос
/ 10 марта 2009

Редактировать: подождите минуту. Используйте CGImageCreateWithImageInRect. Вот для чего это.

Вот идеи, которые я написал изначально; Я оставлю их на случай, если они пригодятся.

  • Посмотрите, можете ли вы создать какое-то подизображение из другого изображения, чтобы оно заняло буфер исходного изображения (так же, как некоторые реализации подстрок). Тогда вы можете рисовать, используя подизображение.
  • Возможно, Core Graphics больше предназначена для компоновки, чем для манипулирования изображениями, поэтому вам, возможно, придется использовать отдельные файлы изображений в вашем комплекте приложений. Если документы SDK не особо рекомендуют то, что вы делаете, то я предлагаю вам пойти по этому пути, поскольку это кажется наиболее простым и естественным способом сделать это.
  • Вместо этого вы можете использовать OpenGLES, и в этом случае вы можете указать координаты текстуры вершин многоугольника, чтобы выбрать только этот участок вашей большой текстуры.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...