如何減少對繪圖裝置的存取呢? 很直覺地會想到先將所有的繪圖動作都 buffering, 最後再一次輸出至繪圖裝置, 而這個 buffer 就是記憶體, 因此其 DC 被稱為 memory DC(memory device context).
大致上 MemDC 的使用方法如下:
- 呼叫 CreateCompatibleDC 建立一個 1x1 大小的 memory DC.
- 呼叫 CreateCompatibleBitmap 建立一個特定大小的 buffer.
- 呼叫 SelectObject 將 buffer 設定至 memory DC.
- 開始對 MemDC 作畫.
- 呼叫 BitBlt 將 MemDC 的內容畫至(真實) DC.
更多資訊:
- Flicker Free Drawing In MFC
- 利用memory dc解決畫面閃爍問題
- Win32 GDI Double Buffering
沒有留言:
張貼留言