print

2022-06-21 16:24 更新

将打印内容发送到指定地址的打印机(蓝牙打印机为MAC地址,网口打印机为IP地址),支持多机打印

print({params})

params

taskList:

  • 类型:JSON数组
  • 描述:(必填项)打印机、打印内容、重复打印次数组成的JSON对象数组
  • 内部字段:

[
    {
        printerAddr: '98:D3:31:20:23:4A',  //字符串;打印机地址
        printerEncoding:'gbk',             //打印机支持的编码格式,默认gbk
        type:1,  //打印机类型,默认是1。1:小票打印机,2:tsc标签打印机
        tscSetting:{                       //如果是TSC标签打印机,这个属性必须设置,如果忽略此属性,则此打印机为小票打印机
            width:40,                      //标签的宽度,单位mm
            height:30,                     //标签的高度,单位mm
            gap:2                          //每个标签之间的间隔,单位mm
        },
        content: orderInfo,     //字符串;打印内容
        keepAlive:true,       //打印完毕后不断开连接,下次打印将使用同样的连接进行打印(蓝牙打印机建议设置为true)
        cmd:[25,23,0]           //打印内容的同时,一并发送指定的ESC/POS命令
        copyNum: 2                 //数值类型;重复打印次数,默认值为1 
    }
]

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:

{
    result:     'ok'   //字符串;ok表示调用成功
}

err:

  • 类型:JSON对象
  • 内部字段:

        {
            msg:'',       //错误信息的汇总描述
            errors:[   //用一个数组,描述打印发生的错误
                {
                    taskIndex:0,     //描述哪个打印任务发生错误
                    printerAddr:'',  //发生错误的打印机地址
                    msg:''           //错误信息


                }
            ], 
        }

打印小票示例代码

var orderInfo;
orderInfo = "<CA>测试打印</CA><BR>";
orderInfo += "名称      单价  数量 金额<BR>";
orderInfo += "--------------------------------<BR>";
orderInfo += "番       1.0    1   1.0<BR>";
orderInfo += "番茄      10.0   10  10.0<BR>";
orderInfo += "番茄炒     10.0   100 100.0<BR>";
orderInfo += "番茄炒粉    100.0  100 100.0<BR>";
orderInfo += "番茄炒粉粉   1000.0 1   100.0<BR>";
orderInfo += "番茄炒粉粉粉粉 100.0  100 100.0<BR>";
orderInfo += "番茄炒粉粉粉粉 15.0   1   15.0<BR>";
orderInfo += "备注:快点送到<BR>";
orderInfo += "--------------------------------<BR>";
orderInfo += "合计:xx.0元<BR>";
orderInfo += "送货地点:xxxxxxxxxxxxxxxxx<BR>";
orderInfo += "联系电话:138000000000<BR>";
orderInfo += "订餐时间:2011-01-06 19:30:10<BR>";
orderInfo += " <BR> <BR>";


var printModule = api.require('posPrinter');
var param = 
{ 
    taskList: 
    [
        { 
            printerAddr: '98:D3:31:20:23:4A', 
            content: orderInfo, 
            keepAlive:true,       //蓝牙打印机,建议把keepAlive设为true
            copyNum: 2 
        },
        { 
            printerAddr: '192.168.1.10', 
            content: orderInfo, 
            copyNum: 2 
        }
    ] 
};
printModule.print(param);

打印标签示例代码

var printModule = api.require('posPrinter');
var param = 
{ 
    taskList: 
    [
        { 
            printerAddr: 'u:85:Printer', 
            type:2,
            tscSetting:{
                width:40,
                height:30,
                gap:2
            },
            content:'<text size="30" bold="true" left="10" top="10">我的测试1</text><qr left="10" top="85" width="150">http://www.cailutong168.com</qr><img  left="10" top="70">base64内容</img>',
            //<qr>标签表示打印二维码
            //tagContent里面所有标签都支持旋转属性,如rotate="45"表示旋转45度
            //text标签可以使用center="1"表示居中,如果居中时,设置left="-10",表示居中后,再往左偏移10
            keepAlive:true,       //usb打印机,建议把keepAlive设为true
            copyNum: 1 
        }
    ] 
};
printModule.print(param);

可用性

Android系统

可提供的1.0.0及更高版本

以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号