freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于c多機(jī)聯(lián)合繪圖軟件的實(shí)現(xiàn)畢業(yè)設(shè)計(jì)論文-資料下載頁

2025-02-26 09:03本頁面
  

【正文】 TextDialog td = new TextDialog()。 if (() == ) { = 。 = 。 = 。 } ( 6) 運(yùn)行程序,單擊 [文字 ]按鈕,再彈出的窗口中輸入繪制的文字,然后在右邊 29 的框中用鼠標(biāo)拖動(dòng)繪制一些文字,運(yùn)行效果如圖 a. 選擇文字的顏色 b. 繪制任意大小和方向的文字 圖 30 繪制任意大小的圖像 ( 1)在解決方案資源管理器中,添 加一個(gè)名為 的類,使其從DrawRectangle 類派生,主要代碼如下; class DrawMyImage : TrackRectangle { private Bitmap originalBitmap。 public override DrawObject Clone() { DrawMyImage w = new DrawMyImage()。 = 。 = (Bitmap)()。 AddOtherFields(w)。 return w。 } public DrawMyImage() { } public DrawMyImage(int x, int y, int width, int height, Bitmap bitmap, int id) { = new Rectangle(x, y, width, height)。 = new Bitmap(bitmap)。 = id。 } public override void Draw(Graphics g) { if (originalBitmap == null) { Pen p = new Pen(, 1f)。 (p, objRectangle)。 } else { //將 bitmap設(shè)置為對(duì)其默認(rèn)的透明色透明 ()。 (originalBitmap, objRectangle, 0, 0, , , )。 } } 31 ( 2)在解決方案管理器中添加一個(gè)名為 ,使其從 ToolObjiect類派生。具體代碼如下; class ToolImage : ToolObject { public override void OnMouseDown(Palette palette, MouseEventArgs e) { (palette, e)。 DrawMyImage w = new DrawMyImage(, , 15, 15, , )。 AddNewObject(palette, w)。 isNewObjectAdded = true。 } public override void OnMouseUp(Palette palette, MouseEventArgs e) { if (isNewObjectAdded == false) { return。 } (palette, e)。 int index = ()。 DrawMyImage w = (DrawMyImage)[index]。 if ( != ) { GraphicsList myGraphicsList = new GraphicsList()。 (())。 //序列化 try { using (MemoryStream stream = new MemoryStream()) { IFormatter formatter = new BinaryFormatter()。 (stream, myGraphicsList)。 byte[] bytes = ()。 //層號(hào),序列化后的字節(jié)數(shù) ((DrawMyImage,{0}, ))。 (bytes)。 } } catch (Exception err) { (, 序列化失敗 )。 } 32 ()。 } } } } ( 3) 在主窗體的構(gòu)造函數(shù)內(nèi)添加代碼; tools[(int)] = new ToolImage()。 ( 4)在主窗體上雙擊曲線按鈕,在對(duì)應(yīng)的 Click 事件中添加如下代碼; OpenFileDialog f = new OpenFileDialog()。 = false。 = true。 = 添加圖像 。 = JPEG (*.jpg)|*.jpg|Bitmap (*.bmp)|*.bmp|PNG (*.png)|*.png|GIF (*.gif)|*.gif|All files|*.*。 if (() == ) { = (Bitmap)(, true)。 = 。 } ( 5)運(yùn)行程序,觀察效果圖,這里文字,矩形,曲線,直線和圖像的功能全部實(shí)現(xiàn),整體運(yùn)行效果圖如圖 。 圖 33 聯(lián)機(jī)操作 多臺(tái)計(jì)算機(jī)同時(shí)控制繪圖時(shí),應(yīng)該保證每臺(tái)計(jì)算機(jī)看到的繪圖界面是一致的。每臺(tái)計(jì)算機(jī)繪制圖形圖像或者對(duì)繪圖對(duì)象進(jìn)行操作時(shí),通過向主機(jī)發(fā)送命令,再又主機(jī)發(fā)送給其他附機(jī),從而實(shí)現(xiàn)多機(jī)的同步 。 主機(jī)與附機(jī)的連接 下面可以在初始化模板中一個(gè)作為主機(jī)另一個(gè)作為附機(jī)由 圖 可知,有一臺(tái)主機(jī),附機(jī)可多臺(tái),這里為了簡化起見也只弄了一臺(tái)附機(jī),在圖上也看到與 主機(jī)連接的用戶數(shù)為 1. 圖 主機(jī)與附機(jī)的連接 具體連接方法可參照 那節(jié)的具體連接構(gòu)思 主機(jī)與附機(jī)聯(lián)合繪圖 聯(lián)合繪圖效果圖如圖 所示; 34 圖 多機(jī)聯(lián)合繪圖 效果實(shí)現(xiàn)的方法 就拿矩形列舉吧。在繪制矩形時(shí),在 ToolRectangle 類的OnMouseUp 事件中,向主機(jī)發(fā)送 DrawMyRectangle 命令,主機(jī)收到后再將發(fā)送給所有聯(lián)合制圖的計(jì)算機(jī)(包括主機(jī)和所有附機(jī))。所有計(jì)算機(jī)收到命令后,再統(tǒng)一實(shí)現(xiàn)矩形的繪制。這樣一來,即可確保 所有的計(jì)算機(jī)看到的界面都是一致的 其他功能的實(shí)現(xiàn) 編輯主要有兩個(gè)功能,一是用來選擇對(duì)象 二是用來刪除選擇對(duì)象,如圖 所示 圖 編輯 35 實(shí)現(xiàn)代碼如下; private void 刪除 ToolStripMenuItem_Click(object sender, EventArgs e) { ()。 } private void 全部選擇 ToolStripMenuItem_Click(object sender, EventArgs e) { ()。 } 導(dǎo)出圖像 通過 Image 類的 save 方法將對(duì)象保存為圖片即可實(shí)現(xiàn)導(dǎo)出功能。如圖 所示 圖 導(dǎo)出圖片 實(shí)現(xiàn)導(dǎo)出圖片功能的代碼如下; private void 導(dǎo)出圖片 ToolStripMenuItem_Click(object sender, EventArgs e) { Bitmap myBitmap = DrawImage()。 string fileName = + \\。 (fileName, )。 (\n導(dǎo)出成功 \n\n導(dǎo)出位置: + fileName)。 } 圖像的打印和預(yù)覽 打印功能的實(shí)現(xiàn)主要用到 PrintPreviewDialog 對(duì)話框和 PrintDocument 類其中,PrintPreviewDialog 實(shí) 現(xiàn) 打 印 預(yù) 覽 功 能 , PrintDocument 實(shí)現(xiàn)打印功能。PrintPreviewDialog 對(duì)話框表示包含從 Windowns 窗體應(yīng)用程序中進(jìn)行打印的PrintPreviewControl 的對(duì)話框體。 PrintDocument 類定義一個(gè)可再次使用的對(duì)象,該對(duì)象將輸出發(fā)送到打印機(jī) 。 實(shí)現(xiàn)打印功能時(shí),首先創(chuàng)建 PrintDocument 類的實(shí)例額,設(shè)置掃描打印方式的屬性,然后調(diào)用 Print 方法開始打印進(jìn)程。在 PrintDocument 的 PrintPage 事件中,通過 PrintPageEventArgs 中包含的 Graphics 對(duì)象,處理指定的打印輸出。 如圖 所示 36 圖 圖片的打印預(yù)覽 實(shí)現(xiàn)的關(guān)鍵代碼如下; private MemoryStream streamToPrint。 private void 打印預(yù)覽 ToolStripMenuItem_Click(object sender, EventArgs e) { PrintDocument printDocument1 = new PrintDocument()。 += new PrintPageEventHandler(printDocument1_PrintPage)。 Bitmap myBitmap = DrawImage()。 streamToPrint = new MemoryStream()。 (streamToPrint, )。 PrintPreviewDialog p = new PrintPreviewDialog()。 = true。 = printDocument1。 = 。 = 。 ()。 } private void printDocument1_PrintPage(object sender, e) { image = 37 ()。 ()。 int x = 。 int y = 。 int width = 。 int height = 。 if ((width / ) (height / ))
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1