c#餐饮系统打印机_C# 实现打印机功能
標簽:
c# 調用打印機
2011-12-13 17:18:00| 分類: C# | 標簽:調用打印機
|舉報
|字號
訂閱
下載LOFTER客戶端
using System;using System.Collections.Generic;using System.Text;using System.Drawing;using System.IO;using System.Windows.Forms;
namespace TY_ClassLibrary{ public class Printer { private Font printFont; private Font titleFont; private StringReader streamToPrint; private int leftMargin = 0;
/// /// 設置PrintDocument 的相關屬性 /// /// 要打印的字符串 public void print(string str) { try { streamToPrint = new StringReader(str); printFont = new Font("宋體", 10); titleFont = new Font("宋體", 15); System.Drawing.Printing.PrintDocument pd = new System.Drawing.Printing.PrintDocument(); pd.PrinterSettings.PrinterName = "SmartPrinter"; pd.DocumentName = pd.PrinterSettings.MaximumCopies.ToString(); pd.PrintPage += new System.Drawing.Printing.PrintPageEventHandler(this.pd_PrintPage); pd.PrintController = new System.Drawing.Printing.StandardPrintController(); pd.Print(); } catch(Exception ex) { MessageBox.Show(ex.ToString()); } }
private void pd_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs ev) { float linesPerPage = 0; float yPos = 0; int count = 0; float leftMargin = this.leftMargin; float topMargin = 0; String line = null; linesPerPage = ev.MarginBounds.Height / printFont.GetHeight(ev.Graphics); while (count < linesPerPage && ((line = streamToPrint.ReadLine()) != null)) { if (count == 0) { yPos = topMargin + (count * printFont.GetHeight(ev.Graphics)); ev.Graphics.DrawString(line, titleFont, Brushes.Black, leftMargin + 10, yPos, new StringFormat()); } else { yPos = topMargin + (count * printFont.GetHeight(ev.Graphics)); ev.Graphics.DrawString(line, printFont, Brushes.Black, leftMargin, yPos, new StringFormat()); } count++; } if (line != null) ev.HasMorePages = true; else ev.HasMorePages = false;
} }}收起
標簽:
總結
以上是生活随笔為你收集整理的c#餐饮系统打印机_C# 实现打印机功能的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: IDEA 学习笔记之 安装和基本配置
- 下一篇: 通过类或ID记录上一个被选中的标签或者数