public PrinterClass(string printerPortName = "COM3") { //Serial port init printerPort = new SerialPort(printerPortName, 19200); if (printerPort != null) { Debug.Print("Port ok"); if (printerPort.IsOpen) { printerPort.Close(); } } Debug.Print("Opening port"); try { printerPort.Open(); } catch { Debug.Print("I/O error"); //Environment.Exit(0); } //Printer init printer = new ThermalPrinter(printerPort, 9, 110, 10); printer.Reset(); }
public override void Start() { Log.Add(LogLevel.Info, "Printer", "Opening port to printer"); try { _port.Open(); _printer = new ThermalPrinter(_port); _printer.Reset(); } catch (Exception ex) { Log.AddException("Printer", ex); } }
private static void ShowItems(ThermalPrinter printer, Reciept reciept) { foreach(Item item in reciept.getItems()) { printer.Reset(); // .PadLeft(Math.Abs(item.ItemName.Length - 30)); string output = item.Quantity.PadRight(2) + " " + item.Size.PadRight(5) + " " + item.Sugar.PadRight(2) + " " + item.ItemName.Trim() + " " + (item.Price.Trim() + ".SR").PadLeft(Math.Abs(item.ItemName.Length - 29)); printer.WriteLine(output); if (item.Components.Trim().Length > 3 ) { printer.WriteLine(item.Components.Trim()); } if (item.Additionals.Trim().Length > 3) { printer.WriteLine(item.Additionals.Trim()); } printer.Reset(); } }
public static void Main(string[] args) { if (args.Length <= 0) { Console.Out.WriteLine("Command Line Error"); return; } string path = args[0]; Reciept reciept = getReciept(path); string printerPortName = getPrinterPort(); SerialPort printerPort = new SerialPort(printerPortName); if (printerPort != null) { if (printerPort.IsOpen) { printerPort.Close(); } } try { printerPort.Open(); } catch{ Console.WriteLine ("I/O error"); Environment.Exit(0); } //Printer init ThermalPrinter printer = new ThermalPrinter(printerPort,2,180,2); printer.WakeUp(); printer.SetLineSpacing(0); printer.SetAlignCenter(); printer.WriteLine("Mango Talaat", (byte)ThermalPrinter.PrintingStyle.Bold + (byte)ThermalPrinter.PrintingStyle.DoubleHeight + (byte)ThermalPrinter.PrintingStyle.DoubleWidth); printer.WriteLine("Riyadh, Gadheer Branch"); printer.Reset(); printer.LineFeed(); // show header string header = "Qty".PadLeft(2) + " " + "Size".PadLeft(3) + " " + "Sugar".PadLeft(5) + " " + "Item".PadLeft(10) + " " + "Price".PadLeft(15); printer.WriteLine(header); printer.HorizontalLine(40); ShowItems(printer, reciept); printer.HorizontalLine(40); printer.WriteLine("CASH" + reciept.cash.PadLeft(26)); printer.WriteLine("Discount" + reciept.discount.PadLeft(22)); printer.WriteLine("TOTAL" + reciept.total.PadLeft(10), ThermalPrinter.PrintingStyle.DoubleWidth); printer.LineFeed(); printer.SetAlignCenter(); printer.WriteLine("Have a good day.", ThermalPrinter.PrintingStyle.Bold); printer.LineFeed(); printer.SetAlignLeft(); printer.WriteLine(DateTime.Now.ToString()); printer.LineFeed(); printer.LineFeed(3); printer.cutPaper(); printer.openCashDrawer(); printer.Sleep(); Console.WriteLine("Printer is now offline."); printerPort.Close(); }
static void CashRegister(ThermalPrinter printer, string item, int price) { printer.Reset(); printer.Indent(0); if (item.Length > 24) { item = item.Substring(0,23)+"."; } printer.WriteToBuffer(item.ToUpper()); printer.Indent(25); string sPrice = String.Format("{0:0.00}",(double)price/100); sPrice = sPrice.PadLeft(7); printer.WriteLine(sPrice); printer.Reset(); }