2012-02-27 46 views
1

如何將用CGBitmapContextCreate()創建的CGContextRef繪製到NSView?顯示CGContextRef

我應該先將它轉換爲圖像嗎?如果是這樣的話,這不是一個昂貴的操作嗎?

回答

1

我應該先將它轉換爲圖像嗎?

是的。您可以使用CGBitmapContextCreateImage,然後使用它從drawRect:中繪製到圖形上下文中。

如果是這樣的話,那不是一個昂貴的操作嗎?

CGBitmapContext - >CGImage多個選項之一 - 使用最好的任務。如果你做出了很好的設計決定,那很難成爲一個障礙。

CGImage,NSImageUIImage是不可變的。他們避免了您創建時可能期望的複製。

較大的圖像顯然會佔用大量的內存,將圖像繪製到位圖然後以非原始大小繪製圖像可能會很昂貴。

重複使用您創建的圖像,並適當保留它們。現在輪廓,然後看看事情進展如何。