Отображение CGContextRef - PullRequest
       12

Отображение CGContextRef

1 голос
/ 28 февраля 2012

Как я могу нарисовать CGContextRef, созданный с помощью CGBitmapContextCreate(), в NSView?

Должен ли я сначала преобразовать его в изображение? Если это так, разве это не будет дорогой операцией?

1 Ответ

1 голос
/ 28 февраля 2012

Должен ли я сначала преобразовать его в изображение?

Да.Вы можете использовать CGBitmapContextCreateImage, а затем использовать его для рисования в графическом контексте из drawRect:.

Если это так, разве это не будет дорогой операцией?

CGBitmapContext -> CGImage один вариант из нескольких - используйте лучшее для выполнения задачи.Если вы принимаете правильные дизайнерские решения, это редко становится препятствием.

CGImage, NSImage и UIImage являются неизменными.Они избегают копирования, которого вы можете ожидать при создании.

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

Повторно используйте созданные вами изображения и удерживайте их соответствующим образом.Профиль время от времени, чтобы увидеть, как идут дела.

...