最近做個項目,業務員希望能打印訂座系統的數據,本來想用第三方控件的,或者說到網上下載一個打印的dll程序,但是看了一下微軟的打印控件,覺得挺簡單的,於是決定還是用微軟的控件。廢話不多說了,直接上代碼
private void btn_打印_Click(object sender, EventArgs e) { // printDocument1 為 打印控件 //設置打印用的紙張 當設置為Custom的時候,可以自定義紙張的大小,還可以選擇A4,A5等常用紙型 this.printDocument1.DefaultPageSettings.PaperSize = new PaperSize("Custum", 500, 300); this.printDocument1.PrintPage += new PrintPageEventHandler(this.MyPrintDocument_PrintPage); //將寫好的格式給打印預覽控件以便預覽 printPreviewDialog1.Document = printDocument1; //顯示打印預覽 DialogResult result = printPreviewDialog1.ShowDialog(); if (result == DialogResult.OK) this.printDocument1.Print(); } private void MyPrintDocument_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e) { /*如果需要改變自己 可以在new Font(new FontFamily("黑體"),11)中的“黑體”改成自己要的字體就行了,黑體 后面的數字代表字體的大小 System.Drawing.Brushes.Blue , 170, 10 中的 System.Drawing.Brushes.Blue 為顏色,后面的為輸出的位置 ,第一個10是左邊距,第二個35是上邊距*/ e.Graphics.DrawString(show_box.Text, new Font(new FontFamily("黑體"), 11), System.Drawing.Brushes.Black, 10, 35); }