999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于GDI+的簡易畫圖程序設計與實現

2010-09-07 00:50:12羅倩
中國新技術新產品 2010年2期
關鍵詞:界面程序

羅倩

(青島理工大學琴島學院 計算機工程系,山東 青島 266106)

1 相關技術介紹

1.1 GDI 技術

GDI 是位于應用程序與不同硬件之間的中間層,這種結構讓程序員從直接處理不同硬件的工作中解放出來,把硬件間的差異交給了GDI 處理。GDI 通過將應用程序與不同輸出設備特性相隔離,使Windows 應用程序能夠毫無障礙地在Windows 支持的任何圖形輸出設備上運行。

Windows 系統是用來給應用程序提供設備獨立性的工具,它是windows 系統為了處理輸出設備而使用的一種內部數據結構,設備環境是windos 程序,驅動程序,和輸出設備(如打印機,繪圖儀)之間的紐帶,GDI 是一組C++類,它在驅動程序的協助下把數據描繪在硬件上,它位于應用程序與硬件之間,把數據從一方傳到另一方。

1.2 GDI+技術

GDI+是GDI 的下一個版本,它進行了很好的改進,并且易用性更好。GDI 的一個好處就是你不必知道任何關于數據怎樣在設備上渲染的細節,GDI+更好的實現了這個優點,也就是說,GDI 是一個中低層API,你還可能要知道設備,而GDI+是一個高層的API,你不必知道設備。例如你如果要設置某個控件的前景和背景色,只需設置BackColor 和ForeColor 屬性。

1.3 本文采用的技術

GDI+與GDI 相比,增加了下列新的特性:漸變畫刷、樣條曲線、獨立的路徑對象、矩陣和矩陣變換、Alpha 通道合成運算和多圖片格式的支持,除了上述新特性外,GDI+還將支持重新著色、色彩修正、消除走樣、元數據以及Graphics 容器等特性。

而.NET 可以很好的支持GDI+編程,可以充分利用其優越性,本文在設計與實現簡易畫圖程序時,采用GDI+編程技術。

2 系統的設計

2.1 系統總體設計方案

a.對整個界面進行布局。b.實現繪圖工具的功能。c.實現顏色拾取的功能。d.實現菜單功能。e.實現手動調節畫布大小的功能。f.測試。

2.2 系統結構選擇

目前,常用的系統體系結構有兩種:C/S 與B/S。采用B/S 結構,客戶端只能完成瀏覽、查詢、數據輸入等簡單功能,絕大部分工作由服務器承擔,這使得服務器的負擔很重。采用C/S 結構時,客戶端和服務器端都能夠處理任務,這雖然對客戶機的要求較高,但因此可以減輕服務器的壓力。

畫圖程序對計算機的性能要求比較高,占用大量的內存,且要求穩定性好。本文中的系統采用C/S 結構,這樣可以充分利用客戶端的功能,為服務器減輕負擔。

2.3 系統模塊設計

畫圖程序,主要包括四大模塊:文件功能(打開、關閉、保存等)、工具箱(線條、鉛筆、矩形、空心園、實心圓、橡皮擦等)、調色板(各種顏色)、圖像(清除圖像、圖像屬性),軟件啟動時,為一張空白畫布,我們可以直接在畫布上繪畫,也可以通過菜單中的“打開”,導入一張圖片,然后我們就可以在這張圖片上進行繪制。簡單結構,如圖1 所示:

圖1 畫圖程序模塊圖

圖2 界面設計圖

2.4 系統界面設計

系統界面遵循簡潔、緊湊、美觀和易于使用的原則,主界面分成了四個區:菜單區(上側)、工具箱區(左上側)、調色板區(左下側)、狀態欄(下側)、中心區(中間),如圖2 所示:

3 系統的實現

3.1 編程語言的選擇

C#語言是微軟公司提供一門編程語言,方便易用,且功能強大,適合各類項目的開發,對于編寫WinForm 程序,是一種不錯的選擇。本文在開發畫圖程序時,采用了C#語言。因為使用C#語言,可以通過引入命名空間,調用強大的GDI+的功能,從而可以繪制出漂亮、功能強大穩定的圖像。

3.2 關鍵技術與代碼分析

3.2.1 畫板、畫筆、畫刷介紹

要實現畫圖功能,首要任務是建立畫板,Graphics 主要是用來建立畫板對象,本文將picture 控件作為畫板,創建畫板的語法為:

Graphics g=picture1.CreateGraphics();//創建畫板

g.Clear(Color.Red);//將畫板染成為紅色

g.Dispose();//把畫板對象從內存中清除掉

建立畫板后,下一步的任務就是創建畫筆,Pen 主要是用來建立畫筆對象,創建畫筆的語法如下:

Pen p=new Pen(Color.Blue,2);//定義了一個藍色,像素為2 的畫筆

有了畫筆,下一步就是定制畫刷,Brush 對象是畫筆對象,用來繪制實心、漸層的圖形,使得圖案顯得比較有質感。最簡單的畫筆僅指定了區域用純色來填充。這種畫筆由System.Drawing.Brush類的實例表示,該實例可以如下構造:Brush b=SolidBrush(Color.Orange);3.2.2 清除圖像

清除圖像的方法是,把整個畫布顏色填充為白色,部分代碼如下:

3.2.3 畫布大小調整

放置一個picture1 控件,將它固定在主畫板的右下角,然后改變鼠標進入時的Cursor 為箭頭形狀,設置鼠標按下移動時的事件,讓該picturebox1 跟隨鼠標移動。當鼠標松開時,將主畫板的右下角坐標調整為picturebox1 的坐標,部分代碼:

3.3 運行界面分析

圖3 畫圖程序主界面

程序啟動后,進入程序的主運行界面,如圖3 所示。利用左側工具箱中的工具,以及顏色工具箱,可以白色畫板區域中,繪制線條、矩形、橢圓,并可以改變線條的顏色,給矩形和橢圓填充顏色;當繪制圖形,出現錯誤時,使用工具箱中的橡皮擦,除掉錯誤的地方,以便重新繪制。另外,程序也提供了對圖片像素的大小的改變,如將圖片的大小從1024*768,改變成800*600,方便使用。

4 結束語

GDI+是WinXP 操作系統的一個子集,具有十分強大的圖形接口,通過它可以繪制出功能強大的圖形,并可以對圖形進行各種處理,以滿足圖像處理的需要。使用GDI+可以很方便的開發出一個畫圖軟件,例如操作系統的畫板。本文使用GDI+技術,很好的實現了一個簡易的畫圖程序,簡單實用。

[1]王東明.Visual C#.NET 程序設計與應用開發.清華大學出版社,2008.5

[2].程不功.ASP.NET2.0 動態網站開發教程.清華大學出版社,2006.4

[3].邵良杉.ASP.NET3.5(C#)實踐教程.清華大學出版社,2009.5

猜你喜歡
界面程序
國企黨委前置研究的“四個界面”
當代陜西(2020年13期)2020-08-24 08:22:02
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
失能的信仰——走向衰亡的民事訴訟程序
基于FANUC PICTURE的虛擬軸坐標顯示界面開發方法研究
“程序猿”的生活什么樣
空間界面
金秋(2017年4期)2017-06-07 08:22:16
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
電子顯微打開材料界面世界之門
人機交互界面發展趨勢研究
創衛暗訪程序有待改進
中國衛生(2015年3期)2015-11-19 02:53:32
主站蜘蛛池模板: 五月天福利视频| 国产免费网址| 高清亚洲欧美在线看| 97在线视频免费观看| 超碰91免费人妻| 午夜少妇精品视频小电影| 国产凹凸视频在线观看| 伊人AV天堂| 成人福利一区二区视频在线| 国产理论一区| 免费又爽又刺激高潮网址 | 国产成人欧美| 日本一区二区三区精品国产| 99视频精品在线观看| 午夜国产理论| 一级毛片在线播放| 亚洲综合欧美在线一区在线播放| 色偷偷综合网| 精品一区二区三区水蜜桃| 99久视频| av在线无码浏览| 91九色国产porny| 57pao国产成视频免费播放| 免费无码又爽又黄又刺激网站 | 九一九色国产| 国产麻豆91网在线看| 国产精品伦视频观看免费| 女人一级毛片| 国产第一页免费浮力影院| 国产精品一线天| 国国产a国产片免费麻豆| 国产成人一区免费观看| 日本午夜精品一本在线观看 | 青青久视频| 黄片一区二区三区| 国产原创演绎剧情有字幕的| 真实国产乱子伦视频| 无码精品国产VA在线观看DVD| 精品久久高清| 福利国产在线| 在线免费观看AV| 日韩av无码精品专区| 国产女人在线观看| 91精选国产大片| 看国产毛片| 日本五区在线不卡精品| 美女一区二区在线观看| 99精品福利视频| 日本三级黄在线观看| 国产黄在线观看| 九月婷婷亚洲综合在线| 亚洲 欧美 偷自乱 图片| 久久人午夜亚洲精品无码区| 67194成是人免费无码| 国产午夜小视频| 国产精品久久久久久搜索| 九色最新网址| 欧美日韩一区二区三区在线视频| 波多野结衣中文字幕一区二区| 热久久综合这里只有精品电影| 亚洲人成电影在线播放| 无码日韩人妻精品久久蜜桃| 国产精品大白天新婚身材| 九九久久精品国产av片囯产区| 成年片色大黄全免费网站久久| AV无码一区二区三区四区| 久久香蕉国产线看观看精品蕉| 国产成人成人一区二区| 亚洲成a人片77777在线播放| 亚洲一级色| 亚洲日韩精品无码专区| 91视频青青草| 国产亚洲高清在线精品99| 一本一本大道香蕉久在线播放| 99热免费在线| 亚洲中文无码h在线观看| 亚洲视频欧美不卡| 香蕉视频在线观看www| AV天堂资源福利在线观看| 亚洲精品国产综合99| 免费无码一区二区| 四虎免费视频网站|