文档详情

通用小票打印程序指南.doc

发布:2017-07-10约3.81千字共6页下载文档
文本预览下载声明
怎样做出通用的pos小票打印程序 POS小票打印机分为热敏和针式俩种。 打印纸的宽度分为58毫米、76毫米和80毫米三种。 打印接口分为:串口、并口、USB和网口(以太网)。 热敏打印机速度较快,打印的时候噪音少,针打可以使用多联纸自动复印。 热敏打印机价格一般比较便宜,不需要频繁地更换色带。 并口打印机,可直接端口输出,不需要安装打印机的驱动程序。 几乎所有的POS小票打印机都可以兼容EPSON的ESC POS打印机指令。 const // 末尾走纸几行 c_run_paper_lines = 6; // ESC指令 开钱箱 c_OpenMoneyBoxCommand = CHR(27) + CHR(112) + CHR(0) + CHR(17) + CHR(8); // ESC指令 自动切纸 c_cut_paper = CHR(29) + CHR(86) + CHR(66) + CHR(0); ? type // usb接口票打用 TOutBufPassThrough = record nDataLen: word; sEscData: array [0 .. 1024] of AnsiChar; end; // usb接口开钱箱 procedure OpenUSBMoneyBox; var prt: TPrinter; esc: TOutBufPassThrough; begin try prt := Printers.Printer; prt.beginDoc; esc.nDataLen := Length(c_OpenMoneyBoxCommand); strpCopy(esc.sEscData, c_OpenMoneyBoxCommand); windows.ExtEscape(prt.Handle, PASSTHROUGH, sizeOf(esc), @esc, 0, nil); prt.endDoc; except end; end; // usb接口切纸 procedure usbCutPaper; var prt: TPrinter; esc: TOutBufPassThrough; begin try prt := Printers.Printer; prt.beginDoc; esc.nDataLen := Length(c_cut_paper); strpCopy(esc.sEscData, c_cut_paper); windows.ExtEscape(prt.Handle, PASSTHROUGH, sizeOf(esc), @esc, 0, nil); prt.endDoc; except end; end; procedure TfrmReprint.Print80; var sPort: string; RPrinter: TextFile; i: Integer; sBill, sBarcode, sXH, sPortType: string; MyList: TStringList; BillId: string; sTmp: string; iTmp: Integer; sMoney: string; sGoodName: string; iLen: Integer; sTmp2: string; begin // 生成一个小票的文本文件 sBill := ExtractFilePath(Application.ExeName) + bill.txt; AssignFile(RPrinter, sBill); Rewrite(RPrinter); try // 店名 Writeln(RPrinter, + UserInfo.ShopName); Writeln(RPrinter, 机号 收款员 交易流水号); sTmp := UserInfo.MachineId + + UserInfo.UserCode; iTmp := 32 - Length(sTmp); i := Length(cdsMaster.FieldByName(saleno).Text); while i iTmp do begin BillId := BillId + ; i := i + 1; end; BillId := BillId + cdsMaster.FieldByName(saleno).Text; Writeln(RPrinter, sTmp + BillId); Writeln(RPrinter, 印小票时间: + FormatDatetime(yyyy-mm-dd hh:nn, now)); Writeln(RPrinter, ----------------------------
显示全部
相似文档