---恢復內容開始---
gdi+:
gdi+由一組c++類實現,是對於gdi的繼承,gdi+不僅優化了大部分gdi效能而且提供了更多特性。
允許應用程式開發者將資訊顯示在顯示器或者印表機上,而無需考慮該顯示裝置的詳細情況,gdi+與gdi一樣,都具有裝置無關性,使得應用程式和圖形硬體隔離開來。
gdi+的三個組成部分:
1.二維向量圖形
向量圖形由圖元(比如線條、曲線和圖形)組成。
使用者可以在圖元檔案中記錄向量影象(圖形命令的序列)。gdi+提供了metafile類,可用於記錄、顯示和儲存圖元檔案。metafileheader和metaheader類允許您檢查圖元檔案頭中儲存的資料。
2.影象
某些很難或者根本無法用向量圖形來顯示,。這種型別的影象可儲存為位圖,即代表螢幕上單個點顏色的數字陣列。
gdi+提供了image、bitmap和metafile類,可用於顯示、操作和儲存位圖,支援bmp、gif、jpeg、exif、png、tiff、icon、wmf、emf共9種常見的影象格式。。它們支援眾多的影象檔案格式,還可以進行多種影象處理的操作。
3.文字
使用各種字型、字型大小和樣式來顯示文字。
在mfc中使用gdi+
1.引入標頭檔案
#include
using namespace gdiplus;
#pragma comment(lib,"gdiplus.lib")
2.全域性變數設定
3.初始化gdi+物件
gdiplusstartupinput gsi;
gdiplusstartup(&m_ptrtoken,&gsi,null);
4.關閉
在exitinstance函式中新增
gdiplusshutdown(m_ptrtoken);
在ondraw函式使用gdi+來繪圖:
graphics graphics(this->getdc()->m_hdc);
pen pen(color(255, 0, 0, 255));
graphics.drawline(&pen, 0, 0, 100, 100);
GDI 學習筆記
gdi 不支援異或繪圖,而使用雙快取方式,避免了圖形閃爍,但是速度稍慢,占用記憶體較多。隨著硬體發展,這是乙個圖形編輯器的趨勢 用 gdi 開發向量圖形編輯系統的經驗之談 效能篇 經過無數次的實驗,終於形成了自己的 風格 宣告兩個bitmap物件,乙個用於即時的圖形繪製,另乙個用於存放已有的圖形。在...
GDI 基礎程式設計(1)
首先是在我的vs2008裡面配置gdi 庫,以及初始化gdi lib,參見 然後進行一些比較基礎的gdi 畫筆 影象處理 詳細請見注釋 imageatt.setcolormatrix colormatrix,colormatrixflagsdefault,coloradjusttypebitmap ...
Duilib中將GDI換成GDI
step1 在uirend.cpp的檔案頭加入下面 目的是包含gdi 的標頭檔案和庫,以及定義提取的路徑變數imagepath step2 在函式bool crenderengine drawimage hdc hdc,cpaintmanagerui pmanager,const rect rcit...