设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 5965|回复: 8
打印 上一主题 下一主题

[报表] 如何设置POS机的打印纸张?根据打印内容走纸

[复制链接]
跳转到指定楼层
1#
发表于 2010-3-17 22:23:32 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式
我用的是POS打印机,打印纸是连续的卷筒纸。每次打印时,内容已打印完,但是,走纸却按照设置的页面进行,后面空了很大一部分纸,因此,很浪费纸张。
请问,如何设置,才能按照内容多少打印走纸?
谢谢了!
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
 楼主| 发表于 2010-3-18 21:44:01 | 显示全部楼层
谢谢楼上的两位朋友,能否指教详细点,谢谢了!!
3#
 楼主| 发表于 2010-3-19 21:34:00 | 显示全部楼层
谢谢tz-chf,我第一次接触打印方面的事,能否再给我指教详细点,或者给个实例,谢谢了!
4#
 楼主| 发表于 2010-3-27 20:43:40 | 显示全部楼层
转载自网站http://topic.csdn.net/t/20030909/16/2241131.html 的一篇文章
我觉得不错,还没有来得及整理,现贴出来,供大家一起分享学习。

//   向LPT口打印一个文本文件   
  procedure   TPosFrm.PrintFile(AFileToPrint:   string);   
  var   
    Port,   FileToPrint:   TextFile;   
    ALine:   string;   
  begin   
    AssignFile(FileToPrint,   AFileToPrint);   
    Reset(FileToprint);   
    AssignFile(Port,   'LPT1');   
    Rewrite(Port);   
    while   not   Eof(FileToPrint)   do   
    begin   
        Readln(FileToPrint,   ALine);   
        Writeln(Port,   ALine);   
    end;   
    CloseFile(Port);   
    CloseFile(FileToPrint);   
  end;   
   
   
        //   打印小单   
        //   输出到文本,稍后再输出到LPT1端口;   
        OutFile:=ExtractFilePath(Application.ExeName)+'output.txt';   
        AssignFile(F,   OutFile);   
        Rewrite(F);   
        CompanyTitle:=SysParms.CompanyTitle+'购物清单';   
        CompanyTitle:=StringOfChar('   ',   (32-Length(CompanyTitle))   div   2)+CompanyTitle;   
        Writeln(F,   CompanyTitle);   
        Writeln(F,'--------------------------------');   
  //         Writeln(F,'收银机:'+EdPosID.Text+'           单号:'+EdSaleID.Text);   
  //         Writeln(F,'收银员:'+EdOpID.Text+   '           日期:'+EdSaleDate.Text);   
        Write(F,'收银员:',   Format('%-10s',   [STOpID.Caption]));   
        Writeln(F,   '单号:'+STSaleID.Caption);   
        Writeln(F,'日期:'+STSaleDate.Caption+   '     时间:'+FormatDateTime('hh:mm:ss',   Now));   
        Writeln(F,'--------------------------------');   
        //                   12345678901234567890123456789012   
        Writeln(F,'商品名称                   数量   单价     金额');   
   
        ADSSaleList.DisableControls;   
        ADSSaleList.First;   
        while   not   ADSSaleList.Eof   do   
        begin   
            MerName:=ADSSaleList.FieldValues['MerName'];   
            len:=Length(MerName);   
            if   len   <   18   then   
                MerName:=MerName+StringOfChar('   ',   18-len);   
            if   (len   mod   2)   =   0   then   
                Write(F,   Copy(MerName,   1,   18))   
            else   
                Write(F,   (Copy(MerName,   1,   17)+'   '):18);   
            Write(F,   ADSSaleList.FieldValues['Qty']:2);   
            Write(F,   FormatFloat('0.0',   ADSSaleList.FieldValues['Price']):6);   
            Writeln(F,   FormatFloat('0.0',   ADSSaleList.FieldValues['Amount']):6);   
            ADSSaleList.Next;   
        end;   
        ADSSaleList.EnableControls;   
   
        Writeln(F,'--------------------------------');   
        Writeln(F,'合计:',STHj.Caption:8,   '         让利:',   STRl.Caption:8);   
        Writeln(F,'实收:',STSs.Caption:8,   '         金卡:',   
                        FormatCurr('0.00',   CardPayment):8   
                        );   
        Writeln(F,'现金:',   
                        FormatCurr('0.00',   StrToCurr(EdCash.Text)-CardPayment):8,   
                        '         找补:',   STBack.Caption:8   
                        );   
        Writeln(F,'   ');   //空行,添加或减少空行即可控制出纸多少。   
        ...   
        PrintFile(Outfile);   //   输出文件到打印口     
   
   
   
  输出如下例:   
   
          XX化妆品世界购物清单   
  --------------------------------   
  收银员:01                 单号:000000329   
  日期:2003-07-16     时间:17:53:28   
  --------------------------------   
  商品名称                   数量   单价     金额   
  8g华美健强力消痘乳   4     16.0     64.0   
  小口红                           1       5.0       5.0   
  180g隆力奇蛇胆不紧   3     20.8     62.4   
  速效脱毛露                   2       7.5     15.0   
  美容海藻面膜               3     18.0     54.0   
  蕾琪唇彩                       1     12.0     12.0     
  .....   
  --------------------------------   
  合计:   2058.40         让利:         0.00   
  实收:   2058.40         金卡:         0.00   
  现金:   2100.00         找补:       41.60   
   
   
  因宽度只有58mm,故商品名切去部分。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-5-18 12:44 , Processed in 0.107724 second(s), 27 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表