一、gdi
相關概念 1、
gdi(
graphics
device inte***ce
):圖形裝置介面,是乙個應用程式與輸出裝置之間的中介。它提供了一套函式庫,這些函式在不同的輸出裝置上輸出圖形和文字。一方面,gdi
向應用程式提供乙個與裝置無關的程式設計環境,另一方面,它又以裝置相關的格式和具體的裝置打交道。 2、
dc (device context):裝置描述表(
裝置上下文
),是一種
windows
資料結構,包括了如線的寬度和顏色、刷子的樣式和顏色、字型、剪裁區域等資訊。用於表達顯示器、印表機等裝置。
dc的主要作用是進行繪圖和輸出文字,如繪製線條、形狀和文字等,具體如
dc.moveto()
,dc.lineto()
,dc.ellipse()
,dc.fillrect()
,dc.fillsolidrect()
,dc.textout()等。
win32下與
hdcgetdc(), beginpaint()/endpaint()
,getwindowdc()等
對應的mfc
版本的類有:
cdc, cpaintdc, cclientdc, cwindowdc等
3、gdi
物件:dc
定義了一組
gdi物件,包括畫筆,畫刷,字型,位圖,調色盤,剪裁區域,路徑層
(path)
。他們有
win32
和mfc
兩套實現版本,其對應關係如下:
win32物件
mfc類
hpen
cpen
hbrush
cbrush
hfont
cfont
hbitmap
cbitmap
hpalette
cpalette
hrgn
crgn
4、dc
與gdi
物件之間的關係:gdi
物件是通過
dc發生作用的,要使用這些
gdi物件,可以使用
win32
函式selectobject
來將其選入
dc中,如
::selectobject(hdc, hpen);
5、利用dc和
gdi物件繪圖的完整步驟為:
(1). 獲取或者建立乙個dc
(2). 獲取或者建立乙個gdi
物件(pen, brush等)
(3). 使用
dc.selectobject
函式把gdi
物件選入dc
(4). 使用
dc進行繪圖或文字輸出
(5). 恢復
dc原來的
gdi物件並刪除剛新建立的
gdi物件,如
pen.deleteobject()
(6). 釋放或刪除裝置描述表dc
其中,(1)和(6),(2)和(4)是成對出現的。
GDI 程式設計
image和bitmap類概述 gdi 的image類封裝了對bmp gif jpeg png tiff wmf windows元檔案 和emf 增強wmf 影象檔案的調入 格式轉換以及簡單處理的功能。而bitmap是從image類繼承的乙個影象類,它封裝了windows點陣圖操作的常用功能。例如,...
GDI 程式設計
最近在學習vc mfc學習 就所學記錄下筆記 1 新增gdiplus.h檔案 通常在標頭檔案檔案中新增 如下 include include using namespace gdiplus 2 新增gdiplus.lib連線 方法一 直接在stdafx.h檔案中新增 pragma comment l...
使用GDI 程式設計
1.引言 gdi 是windows xp中的乙個子系統,它主要負責在顯示螢幕和列印裝置輸出有關資訊,它是一組通過c 類實現的應用程式程式設計介面。顧名思義,gdi 是以前版本gdi的繼承者,出於相容性考慮,windows xp仍然支援以前版本的gdi,但是在開發新應用程式的時候,開發人員為了滿足圖形...