delphi打印小票 要用到什么技术?
用的打印机是那种小的票据打印机
用的打印机是那种小的票据打印机
解决方案 »
- 从TGraphicControl继承的类-----如何显示到ScrollBox的指定位置
- 请问怎么可以拿到下载积分啊?想下点东西没分了。
- 关于查询排序显示的一个问题,急~~
- 怎样使opendialog控件打开的不是选择文件对话框,而是选择目录对话框?急
- 100分求助,怎样对DFM进行流操作。
- Tmemo控件问题,特定字符串的分离
- 在DELPHI中怎样把图片存入SQL SERVER的image字段中?
- 请教:使用table控件,怎么样才能控制其状态为‘dsbrowse’?
- 如何取消输入数据库连接密码的过程!
- 简单的问题:怎样将‘2001-10-12’变成‘2001-11-12’*******40分********
- 有关三层的问题,请高手指教
- 如果我想在某个时间自动按下键盘的D键,应该怎么样实现
没做过POS系统,不过打印应该是一样的吧,只是应该调试下,使打印符合纸张
//windows打印
procedure windowsPrint;
var
_nPrint,i,j:Integer;
begin
with Printer do
begin
_nPrint := 12; //行高
BeginDoc;
Canvas.Font.Name:='宋体';
Canvas.Font.Size:=9;
J := 4;
for i:=0 to printBuffer.Count-1 do //printBuffer是要打印的内容,先准备好
begin
Canvas.TextOut(0,J,printBuffer[i]);
Inc(J,_nPrint);
end;
EndDoc;
end;
end;
//一般EPSON系列的POS打印机可用上面的方法
//直接端口打印
procedure printToPort;
var
F:TextFile;
i:Integer;
begin
with Printer do
begin
AssignFile(F,Global.printforfile);
ReWrite(F);
for i:=0 to printBuffer.Count-1 do
Writeln(F,printBuffer[i]);
for i:=0 to Global.printbline-1 do
Writeln(F,' '); //Writeln(F,Chr(27)+'p'+Chr(0)+Chr(60)+Chr(255)); 打开钱箱
CloseFile(F);
end;
end;
//一般POS58的打印机用下面的方法
通常如果打印机内带汉字库,建立直接端口打印,否则采用windows打印,
打印机没有内置汉字库直接端口打印汉字会出现乱码,采用windows打印需要安装正确的
打印驱动程序.
下面就正常进行
如果打印机带硬字库,建议了解通讯协议后直接写端口,速度超快
如果不带硬字库,则要装打印机驱动,可以用PRINTER单元,速度会稍慢点
偶原来做的EPSON TM-200的针打,现在很多热敏的本身速度就很快,可以不考虑这些因素了.