資源描述:
《C#實現(xiàn)打印功能實例詳解》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、C#實現(xiàn)打印功能實例詳解C#實現(xiàn)打印功能是通過什么來實現(xiàn)的?C#實現(xiàn)打印功能的步驟是什么呢?那么本文就向你介紹這方面的內(nèi)容。C#實現(xiàn)打印功能是通過使用PrintDialog控件來實現(xiàn)的。任何物有所值的應(yīng)用程序都會擁有某種打印功能,不管是基本的打印功能還是更為復(fù)雜的打印功能,比如允許用戶只打印所選的文本或某個范圍內(nèi)的頁面。本節(jié)將探討一下實現(xiàn)基本的C#打印功能,看看哪些類有助于打印文件中的文本。C#實現(xiàn)打印功能的過程是:在調(diào)用PrintDialog控件的ShowDialog方法之前,必須先設(shè)置PrintDialog類的Document屬性。該屬性接受一個Prin
2、tDocument類,以獲得打印機設(shè)置并將輸出內(nèi)容發(fā)送給打印機。PrintDocument類需要System.Drawing.Printing名稱空間,因此,在定義使用PrintDocument類的對象前,必須包含這個名稱空間。C#實現(xiàn)打印功能具體的操作步驟如下:創(chuàng)建一個PrintDialog的實例。如下:1.System.Windows.Forms.PrintDialog?PrintDialog1=new?PrintDialog?();??創(chuàng)建一個PrintDocument的實例.如下:2.System.Drawing.Printing.PrintDocu
3、ment?docToPrint?=??3.?new?System.Drawing.Printing.PrintDocument();??設(shè)置打印機開始打印的事件處理函數(shù).函數(shù)原形如下:4.void?docToPrint_PrintPage(object?sender,??5.?System.Drawing.Printing.PrintPageEventArgs?e)??將事件處理函數(shù)添加到PrintDocument的PrintPage事件中。6.docToPrint.PrintPage+=?7.?8.new?PrintPageEventHandler(doc
4、ToPrint_PrintPage);??設(shè)置PrintDocument的相關(guān)屬性,如:9.PrintDialog1.AllowSomePages?=??10.?11.true;PrintDialog1.ShowHelp?=?true;??把PrintDialog的Document屬性設(shè)為上面配置好的PrintDocument的實例:1.PrintDialog1.Document?=?docToPrint;??調(diào)用PrintDialog的ShowDialog函數(shù)顯示打印對話框:2.DialogResult?result?=?PrintDialog1.Show
5、Dialog();??根據(jù)用戶的選擇,開始打印:3.if?(result==DialogResult.OK)?4.?{?5.docToPrint.Print();?6.?}?C#實現(xiàn)打印功能的實例如下:使用時先創(chuàng)建PrintService類的實例,然后調(diào)用voidStartPrint(StreamstreamToPrint,stringstreamType)函數(shù)開始打印。其中streamToPrint是要打印的內(nèi)容(字節(jié)流),streamType是流的類型(txt表示普通文本,image表示圖像);7.using?System;?8.using?System
6、.Drawing.Printing;?9.using?System.Windows.Forms;?10.using?System.IO;??11.?12.namespace?EDImageSystem?13.{?14.?///??15.?///?PrintService?的摘要說明。?16.?///??17.?public?class?PrintService?18.?{?19.public?PrintService()?20.{?21.?//?22.?//?TODO:?在此處添加構(gòu)造函數(shù)邏輯?23.?//?24.?th
7、is.docToPrint.PrintPage+=?25.new?PrintPageEventHandler(docToPrint_PrintPage);?26.}//將事件處理函數(shù)添加到PrintDocument的PrintPage中??27.?28.//?Declare?the?PrintDocument?object.?29.private?PrintDocument?docToPrint?=??new?PrintDocument();?1.//創(chuàng)建一個PrintDocument的實例??2.?3.privateStream?streamToPrint
8、;?4.string?streamType;??5.