Как я могу нарисовать CGContextRef
, созданный с помощью CGBitmapContextCreate()
, NSView?Отображение CGContextRef
Следует ли сначала преобразовать его в изображение? Если это так, разве это не дорогостоящая операция?
Как я могу нарисовать CGContextRef
, созданный с помощью CGBitmapContextCreate()
, NSView?Отображение CGContextRef
Следует ли сначала преобразовать его в изображение? Если это так, разве это не дорогостоящая операция?
Следует ли сначала преобразовать его в изображение?
Да. Вы можете использовать CGBitmapContextCreateImage
, а затем использовать его для рисования в графическом контексте с drawRect:
.
Если это так, разве это не дорогостоящая операция?
CGBitmapContext
->CGImage
один вариант среди нескольких - используйте лучшее для выполнения задачи. Если вы принимаете хорошие проектные решения, это редко является препятствием.
CGImage
, и UIImage
являются неизменяемыми. Они избегают копирования, вы можете ожидать, когда они будут созданы.
Изображения большего размера, очевидно, могут потреблять достаточное количество памяти, и может быть дорогостоящим рисовать изображение в растровом изображении, а затем рисовать изображение с размером, отличным от его собственного размера.
Повторное использование образов, которые вы создаете, и придерживаться их надлежащим образом. Просматривайте время от времени, чтобы увидеть, как все идет.