版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、GDI+ 主講:老趙 傳智播客培訓(xùn) 什么是GDI+ GDI+ (Graphics Device Interface) 是一種繪圖裝置接口, 可將應(yīng)用程序和繪圖硬件分隔, 讓我們能夠編寫與裝置無關(guān)的應(yīng)用程序。它可以讓我們不需注意特定顯示裝置的詳細(xì)數(shù)據(jù), 便可在屏幕或打印機(jī)顯示信息。我們可以呼叫 GDI+ 類別所提供的方法, 然后這些方法會適當(dāng)?shù)睾艚刑囟ǖ难b置驅(qū)動程序, 而完成繪圖。而且與.NET進(jìn)行了更好的融合。坐標(biāo)系統(tǒng)在GDI+中所采用的坐標(biāo)系統(tǒng),與平時人們較常用的坐標(biāo)系統(tǒng)不同,主要差別在于,一般的二維坐標(biāo)系,x軸與y軸分別是往右往上遞增(左圖),而GDI+所采用的坐標(biāo)系,x軸與y軸則分別是往
2、右往下遞增(右圖)圖形類所在的命名空間:各個命名空間的主要功能如下:System.Drawing:提供了對 GDI+ 基本圖形功能的訪問的類;System.Drawing.Imaging:提供高級 GDI+ 圖像處理功能的類;System.Drawing.Text:提供高級 GDI+ 排版功能,該命名空間中的類允許用戶創(chuàng)建和使用多種字體的類。Point 結(jié)構(gòu)體 Point主要有x與y兩個屬性(表示在二維平面中定義點(diǎn)的整數(shù)x和y坐標(biāo)的有序?qū)Γ2⑶铱梢詫λM(jìn)行“=”、“!=”等比較操作。Point表示在二維平面中定義點(diǎn)的、x 和 y 坐標(biāo)的有序?qū)?構(gòu)造方法:Point pt = new Poin
3、t(20,20);Point pt = new Point(new Size(10,10)圖形編程中常見的類Pen 畫筆類它主要指定線寬和線的模式。Pen對象繪制具有指定寬度和樣式的直線和曲線。由 Pen 對象繪制的直線可用各種填充模式(包括純色和紋理)填充。填充模式取決于Brush畫刷或用作填充對象的紋理。創(chuàng)建方法:分別可以采用Brush、Color、及Brush、width和Color、width等參數(shù)來創(chuàng)建一個畫筆。Pen myPen=new Pen(Color.Black, 3); /創(chuàng)建一個3個像素寬的黑色畫筆畫筆的作用:通常一個圖形輪廓(運(yùn)用DrawXXX()方法)是用畫筆對象來實(shí)
4、現(xiàn)的,Graphics對象它采用面向?qū)ο蟮姆庋b機(jī)制,提供將對象(圖形或文本)繪制到設(shè)備(如屏幕或打印機(jī))的方法。這些對象是獨(dú)立于Graphics對象的,它們?yōu)镚raphics類中的圖形方法的參數(shù)。從而簡化了圖形編程。處理圖形包括兩個步驟 創(chuàng)建 Graphics 對象。 使用 Graphics 對象繪制線條和形狀、呈現(xiàn)文本或顯示與操作圖像。 創(chuàng)建 Graphics 對象的各種方法通過窗體或控件的 Paint 事件中 PaintEventArgs參數(shù)來獲取對Graphics 對象的引用。 調(diào)用某控件或窗體的 CreateGraphics 方法來獲取對 Graphics 對象的引用,該對象表示該控件
5、或窗體的繪圖表面。如果想在已存在的窗體或控件上繪圖,則可使用此方法。Paint 事件處理程序中的 PaintEventArgs在為控件編制 Paint 事件處理程序時,圖形對象作為一個 PaintEventArgs 提供。因此可以獲取對 Paint 事件的 PaintEventArgs 中 Graphics 對象的引用來實(shí)現(xiàn)繪圖,步驟:聲明 Graphics 對象。 分配變量來引用作為 PaintEventArgs 的一部分傳遞的 Graphics 對象。 插入代碼來繪制窗體或控件。注:理解繪制過程中的坐標(biāo)問題 CreateGraphics 方法也可以使用某控件或窗體的 CreateGraph
6、ics 方法來獲取對 Graphics 對象的引用,該對象表示該控件或窗體的繪圖表面。用 CreateGraphics 方法創(chuàng)建 Graphics 對象 調(diào)用要在其上呈現(xiàn)圖形的窗體或控件的 CreateGraphics 方法。 例如:Graphics g;g = this.CreateGraphics();/創(chuàng)建出控件中的Graphics對象Graphics類常用的畫圖方法 畫點(diǎn)DrawLine()畫線,參數(shù)為兩個Point對象并且為同一個點(diǎn)時。 注:理解在窗體或控件中 的坐標(biāo)系問題畫線DrawLine()畫線-兩個Point對象DrawLines()畫線段(Point的數(shù)組)畫文本DrawS
7、tring()畫文本畫矩形(填充矩形)DrawRectangle()畫矩形FillRectangle()填充矩形private void Form1_Paint(object sender, System.Windows.Forms.PaintEventArgs e)Graphics g = e.Graphics;g.DrawString(圖形編程,Font,brush,20,20);g.DrawRectangle(Pens.Blue,100,100,200,100);示例:圖形編程中常用的幾個結(jié)構(gòu)Rectangle和RectangleF結(jié)構(gòu)體 主要有左上角的x與y及width、height等
8、四個屬性(存儲矩形區(qū)域的位置和大小)。并且可以對它進(jìn)行“=”、“!=”等比較操作。而RectangleF結(jié)構(gòu)體代表浮點(diǎn)數(shù)類型。主要的屬性如下:Bottom:矩形底部的縱座標(biāo)Top:矩形頂部的縱座標(biāo)Left:矩形坐部的橫座標(biāo)Right:矩形右部的橫座Height:矩形的高度Width:矩形的寬度Size:矩形的尺寸IsEmpty:矩形是否為空(高度和寬度是否都是)X:矩形左上角的橫座標(biāo)Y:矩形左上角的縱座標(biāo)Size和SizeF結(jié)構(gòu)體:主要有width、height兩個屬性(用寬度和高度的有序?qū)Ρ硎揪匦螀^(qū)域的大?。izeF結(jié)構(gòu)體代表浮點(diǎn)數(shù)類型。并且可以實(shí)現(xiàn)Size到Point、Size到Siz
9、eF的轉(zhuǎn)換。構(gòu)造函數(shù): Size sz1 = new Size(10,10)屬性:Width: 表示寬度值Height:表示高度值Brush畫刷類作用:它主要指定填充區(qū)域的顏色和樣式, Brush對象是一個抽象類。閉合的圖形(例如,矩形或橢圓)由輪廓和內(nèi)部組成,輪廓用畫筆繪制,內(nèi)部用畫刷填充。畫刷的風(fēng)格:實(shí)心畫刷(SolidBrush,用單一顏色填充)畫刷的創(chuàng)建實(shí)例:創(chuàng)建一個實(shí)心畫刷SolidBrush畫刷如:創(chuàng)建一個黑色的畫刷SolidBrush drawBrush=newSolidBrush(Color.Black); 下面的示例用純紅色填充橢圓:SolidBrush mySolidBrush = new SolidBrush(Color.Red);myGraphics.FillEllipse(mySolidBrush, 0, 0, 60, 40);實(shí)例:實(shí)心畫刷(SolidBrush)private void Form1_Paint(object sender, System.Windows.Forms.PaintEventArgs e)Graphics g=e.Graphics;/定義實(shí)心填充畫筆SolidBrush myBrush=new SolidBrush(Color.Yellow);g.FillEllipse(myBrus
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 樹木鋼支撐施工方案
- 韓國機(jī)械工學(xué)課程設(shè)計(jì)
- 2025年校園小賣部租賃合同及特色商品引進(jìn)協(xié)議2篇
- 2025年度園藝中心綠植花卉租賃及銷售合作協(xié)議4篇
- 二零二四年醫(yī)療人員培訓(xùn)與交流合同3篇
- 2025屆廣東省佛山市南海區(qū)石門實(shí)驗(yàn)中學(xué)重點(diǎn)中學(xué)中考生物模擬預(yù)測題含解析
- 二零二五版車輛抵押反擔(dān)保服務(wù)協(xié)議書3篇
- 內(nèi)蒙古呼倫貝爾市、興安盟重點(diǎn)名校2025屆十校聯(lián)考最后生物試題含解析
- 江西省上饒市鄱陽縣達(dá)標(biāo)名校2025屆中考生物押題試卷含解析
- 2025年度插畫師與動畫制作公司合同4篇
- 【人教版】九年級化學(xué)上冊期末試卷及答案【【人教版】】
- 四年級數(shù)學(xué)上冊期末試卷及答案【可打印】
- 人教版四年級數(shù)學(xué)下冊課時作業(yè)本(含答案)
- 中小學(xué)人工智能教育方案
- 高三完形填空專項(xiàng)訓(xùn)練單選(部分答案)
- 護(hù)理查房高鉀血癥
- 項(xiàng)目監(jiān)理策劃方案匯報
- 《職業(yè)培訓(xùn)師的培訓(xùn)》課件
- 建筑企業(yè)新年開工儀式方案
- 營銷組織方案
- 初中英語閱讀理解專項(xiàng)練習(xí)26篇(含答案)
評論
0/150
提交評論