GDI+是GDI的後繼者,它是.NET Framework爲操做圖形提供的應用程序編程接口,主要用在窗體上繪製各類圖形圖像,能夠用於繪製各類數據圖像、數學仿真等。編程
Graphics類是GDI+的核心,它提供將對象繪製到顯式設備的方法。Graphics類封裝了繪製直線、曲線、圓形、圖像和文本的方法,是一切GDI+操做的基礎類。在繪圖以前,必須在指定的窗體上建立一個Graphics對象,才能調用Graphics類的方法畫圖。api
在窗體或控件的Paint事件中建立,將其做爲PaintEventArgs的一部分。在爲控件建立繪製代碼時,一般會使用此方法。數組
例如,在Paint事件中建立Graphics對象:this
private void Form1_Paint(object sender, PaintEventArgs e) //窗體的Paint事件 { Graphics g = e.Graphics; //建立Graphics對象 }
調用窗體或控件的CreateGraphics方法能夠獲取對Graphics對象的引用,該對象表示控件或窗體的繪圖畫面。若是在已存在的窗體或控件身上繪圖,應該使用此方法spa
例如,在窗體的Load事件中,經過CreateGraphics方法建立Graphics對象code
private void Form1_Load(object sender, EventArgs e) //窗體的Load事件 { Graphics g; //聲明一個Graphics對象 g = this.CreateGraphics(); }
由從Image繼承的任何對象建立Graphics對象,調用Graphics.FromImage方法便可,該方法在須要更改已存在的圖像時十分有用,例:orm
private void Form1_Load(object sender, EventArgs e) { Bitmap mbit = new Bitmap(@"C:\test.bmp"); Graphics g = Graphics.FromImage(mbit); }
Clip | 獲取或設置 Region,它限定此 Graphics 的繪圖區域。對象 |
ClipBounds | 獲取一個 RectangleF 結構,該結構限定此 Graphics 的剪輯區域。blog |
CompositingMode | 獲取一個值,該值指定如何將合成圖像繪製到此 Graphics。繼承 |
CompositingQuality | 獲取或設置繪製到此 Graphics 的合成圖像的呈現質量。 |
DpiX | 獲取此 Graphics 的水平分辨率。 |
DpiY | 獲取此 Graphics 的垂直分辨率。 |
InterpolationMode | 獲取或設置與此 Graphics 關聯的插補模式。 |
IsClipEmpty | 獲取一個值,該值指示此 Graphics 的剪輯區域是否爲空。 |
IsVisibleClipEmpty | 獲取一個值,該值指示此 Graphics 的可見剪輯區域是否爲空。 |
PageScale | 獲取或設置此 Graphics 的世界單位和頁單位之間的比例。 |
PageUnit | 獲取或設置用於此 Graphics 中的頁座標的度量單位。 |
PixelOffsetMode | 獲取或設置一個值,該值指定在呈現此 Graphics 的過程當中像素如何偏移。 |
RenderingOrigin | 爲抵色處理和陰影畫筆獲取或設置此 Graphics 的呈現原點。 |
SmoothingMode | 獲取或設置此 Graphics 的呈現質量。 |
TextContrast | 獲取或設置呈現文本的灰度校訂值。 |
TextRenderingHint | 獲取或設置與此 Graphics 關聯的文本的呈現模式。 |
Transform | 獲取或設置此 Graphics 的幾何世界轉換的副本。 |
VisibleClipBounds | 獲取此 Graphics 的可見剪輯區域的邊框。 |
注:詳情參考MSDN對Graphics屬性的說明
方法 | 描述 |
Clear | 清除整個繪圖面並以指定背景色填充 |
Dispose | 釋放由此Graphics對象使用的全部資源 |
DrawArc | 繪製一段弧線,它表示由一對座標、寬高指定的橢圓部分 |
DrawBezier | 繪製由四個Point結構定義的貝塞爾樣條 |
DrawBeziers | 從Point結構的數組繪製一系列貝塞爾樣條 |
DrawCurve | 繪製通過一組指定的Point結構的基數樣條 |
DrawEllipse | 繪製一個由一對座標、寬度和高度指定的橢圓 |
DrawIcon | 在指定座標處繪製由指定的Icon對象表示的圖像 |
DrawImage | 在指定的位置而且按原始大小繪製指定的Image對象 |
DrawLine | 繪製一條鏈接由座標對象指定的兩個點的線條 |
DrawLines | 繪製一列鏈接一組Point結構的線段 |
DrawPath | 繪製GraphicsPath對象 |
DrawPie | 繪製一個扇形,該扇形由一個座標對象,寬度和高度,以及兩條射線所指定的橢圓指定 |
DrawPolygon | 繪製由一組Point結構定義的多邊形 |
DrawRectangle | 繪製由座標對。寬度和高度指定的矩形 |
DrawRectangles | 繪製一系列由Rectangle結構指定的矩形 |
DrawString | 在指定位置而且用指定的Brush和Font對象繪製指定的文本字符串 |
FillEllipse | 填充邊框所定義的橢圓內部,該邊框由一對座標、一個高度和一個寬度指定 |
FillPath | 填充GraphicsPath對象的內部 |
FillPie | 填充扇形內部 |
FillPolygon | 填充多邊形內部 |
FillRectangle | 填充由一對座標、一個寬度和一個高度指定的矩形內部 |
FillRectangles | 填充由Rectangle結構指定的一些列矩陣的內部 |
FillRegion | 填充Region對象的內部 |
FromImage | 從指定的Image對象建立行的Graphics對象 |
Save | 保存此Graphics對象的當前狀態,而且GraphicsState對象標識保存的狀態 |
注:完整的Graphics方法請查看MSDN對Graphics方法的說明
因爲時間有限,後續還會對GDI+ 相關內容進行更新