Posted on 2008-06-27 11:39
若我 閱讀(2055)
評論(0) 編輯 收藏 引用
GDI+, Microsoft Graphics Device Interface Plus, 是微軟在繼GDI(Microsoft Graphics Device Interface)后推出的圖形編程接口,它捅GDI一樣隱藏了下層顯示設備、打印設備的具體細節,提供給用戶一個統一的圖形接口,支持基本的位圖處理、顯示,矢量元素(貝塞爾曲線等)繪制,基本的打印處理。它比GDI提供了更多的功能,諸如漸變填充,基本的位圖格式編解碼等。
本文嘗試介紹我在學習GDI+中的一些體會,順便做一些提綱型的筆記。
GDI+的新功能:
(一)漸變畫刷
GDI+提供的漸變畫刷可以填充出如下的效果:

上圖是一種成為線性漸變畫筆填充出來的效果。GDI還提供一種路徑漸變畫刷,你可以配置各種選項來設置讓顏色隨著你的路徑(如貝塞爾曲線)來變化,它可以填充出下面的效果:

(二)樣條曲線
GDI+可以繪制出樣條曲線:

樣條曲線將一系列的曲線連接起來,可以畫出比較圓滑的拐角。
(三)獨立的路徑對象
在GDI里面,路徑隸屬于一定的設備上下文,路徑繪制完成,路徑對象也就被destroy掉了。但是在GDI+里面,你可以從一個Grahpics上生成若干個GraphicsPath對象,GraphicsPath對象獨立于Graphics,并且不會在繪制完成后銷毀。
(四)支持變換和矩陣
GDI+可以通過矩陣對象來支持常見的變化。原理可以再一般的圖形學入門書籍里面見到。
(五)可變化的區域
GDI+擴展了GDI里面區域(Region)的功能,使得區域可以支持變換。
(六)透明度(Alpha)繪制
在GDI+里面,你可以設置繪制顏色的透明度,達到下面的繪制效果:

(七)支持多種圖像格式
GDI+支持下面的圖像格式:
- BMP
- Graphics Interchange Format (GIF)
- JPEG
- Exif
- PNG
- TIFF
- ICON
- WMF
- EMF