欢迎来到天天文库
浏览记录
ID:37720902
大小:60.50 KB
页数:6页
时间:2019-05-29
《GDI+绘图技术应用之图形的保存和打印》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、一、一定要有个图形对象Image这里,我们定义一个图形对象Bitmapimagemap,假定imagemap就是我们绘制出来的图形对象。二、给操作界面(WinForm窗体:GraphicsAnalyse)添加一个contextMenu,并给GraphicsAnalyse_Load事件添加脚本功能:添加上下文菜单,可以右击出现如下菜单(包括保存图形、打印图形、页面设置、关闭)1、给GraphicsAnalyse的ContextMenu属性添加contextMenu1,使其窗体与contextMenu1关联。2、在GraphicsAnalyse_Load事件中添加
2、如下脚本,初始化弹出式菜单contextMenu1.MenuItems.Add("保存图形",newEventHandler(this.Right_Clicked));contextMenu1.MenuItems.Add("打印图形",newEventHandler(this.Right_Clicked));contextMenu1.MenuItems.Add("页面设置",newEventHandler(this.Right_Clicked));contextMenu1.MenuItems.Add("-");contextMenu1.MenuItems.Ad
3、d("关闭",newEventHandler(this.Right_Clicked));3、添加菜单处理程序//弹出式菜单项处理程序privatevoidRight_Clicked(objectsender,System.EventArgse){MenuItemmiClicked=(MenuItem)sender;stringstrMenu=((MenuItem)sender).Text;if(strMenu=="保存图形"){GraphicSave();}elseif(strMenu=="打印图形"){prePrint();}elseif(strMenu==
4、"页面设置"){pageSetUp();}elseif(strMenu=="关闭"){ClsFrameCommunicate.Close();}else{return;}}4、给“图形保存”菜单定义一个方法://图形保存privatevoidGraphicSave(){if(imagemap==null){return;}else{SaveFileDialogsaveDlg=newSaveFileDialog();saveDlg.Title="保存图形为...";saveDlg.OverwritePrompt=true;saveDlg.CheckPathExi
5、sts=true;saveDlg.Filter="Bitmapfiles(*.bmp)
6、*.bmp
7、GifFile(*.gif)
8、*.gif
9、JPEGFile(*.jpg)
10、*.jpg
11、PngFile(*.png)
12、*.png";saveDlg.ShowHelp=true;if(saveDlg.ShowDialog()==DialogResult.OK){stringfileName=saveDlg.FileName;stringstrFilExtn=fileName.Remove(0,fileName.Length-3);try{switch(strFilE
13、xtn){case"bmp":imagemap.Save(fileName,ImageFormat.Bmp);break;case"jpg":imagemap.Save(fileName,ImageFormat.Jpeg);break;case"png":imagemap.Save(fileName,ImageFormat.Png);break;case"gif":imagemap.Save(fileName,ImageFormat.Gif);break;default:break;}}catch(Exceptionex){MessageBox.Show(ex
14、.Message);}}}}5、给“打印图形”菜单定义一个方法://图形打印预览privatevoidprePrint(){if(strGraphicType==null
15、
16、strGraphicType==""){return;}try{hastb["Bitmap"]=imagemap;GraphicsPrintgPrint=newGraphicsPrint(hastb);try{gPrint.priviewPrint();}catch(Exceptionex){MessageBox.Show("printpriviewstart"+ex.Message);}
17、}catch(Exceptionex)
此文档下载收益归作者所有