hdc mfc 画扇形图_MFC画图总结-DIB图形绘制
http://blog.sina.com.cn/s/blog_4c75bd8c0100zsw7.html
繪制DIB圖到到設備,明白一點。DIB設備無關圖形向設備CDC上繪的話,肯定是須要經過圖形pixel像素轉換的,要轉換成設備的顏色像素格式。
參考這段說明:
DIB的顏色信息儲存在自己的顏色表中。程序一般要依據顏色表為DIB創建邏輯調色板。
在輸出一幅DIB之前。程序應該將其邏輯調色板選入到相關的設備上下文中并實現到系統調色板中。然后再調用相關的GDI函數(如::SetDIBitsToDevice或::StretchDIBits)輸出DIB。
在輸出過程中,GDI函數會把DIB轉換成DDB,這項工作主要包含下面兩步:
將DIB的顏色格式轉換成與輸出設備同樣的顏色格式。
比如,在真彩色的顯示模式下要顯示一個256色的DIB,則應該將其轉換成24位的顏色格式。
將DIB像素的邏輯顏色索引轉換成系統調色板索引。
DIB圖形繪制的方法:
1.
通過CImage繪制圖形文件(支持png/bmp/jpg/gif等)
對于DIB圖形文件。方法比較簡單。也比較易用:
已有DIB圖形的文件,使用CImage::load載入圖形,然后再使用CImage::Draw繪制到設置DC綁定的圖形上就可以
2.
通過CBitmap載入文件并繪制(僅支持bmp等少量格式)
和CImage類似,CBitmap提供了LoadBitmap方法,載入圖形,把一個DIB圖形載入成為了一個DDB圖形。然后能夠用CBitmap::Draw等方法繪制
3.
通過轉換為DDB圖形,畫圖
假設已有內存DIB信息,能夠用過CreateDIBitmap函數,把DIB圖形結構和數據傳入,返回一個DDB的圖形HBITMAP
4.
直接把DIB圖形繪制到設備中,函數中自帶轉換
SetDIBitsToDevice或StretchDIBits函數,通過輸入DIB圖形信息和HDC以及繪制區域等,直接把DIB圖形繪到設備CDC上。
總結
以上是生活随笔為你收集整理的hdc mfc 画扇形图_MFC画图总结-DIB图形绘制的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: oracle并行parallel upd
- 下一篇: 2019matlab中的floyd,基于