文章目录

  • 商米内置打印机插件
    • 插件需求
    • 插件介绍
    • 使用案例
      • 获取插件
      • 连接服务
      • 断开服务
      • 测试打印
    • 接口列表

商米内置打印机插件

  • 插件地址:https://ext.dcloud.net.cn/plugin?id=8291

插件需求

使用插件前,请先使用试用版本,在本地调试好,看插件是否满足,再进行购买。如果插件不满足你的需求,可以联系我(微信:18386474459),尝试修改插件或者增加功能的方式,来帮助实现你的业务逻辑。

插件介绍

商米内置打印机插件,支持商米所有的一体机打印,采用的是商米一体机打印文档的标准 SDK 封装。初始化连接成功之后,直接从 Uniapp 端即可组装参数、纸张格式,直接传递到插件即可打印。下面有所有的接口文档,看不懂的可以打开商米官网查看一体机打印文档
模块的文档。

  • 一体机打印文档适用于所有内置打印机的商米设备

  • 连接方式:远程依赖库、蓝牙(蓝牙设备名:InnerPrinter)、AIDL 等

  • 第三方 APP 可以通过连接内置打印机进行打印业务。商米打印机包含的功能:58 和 80mm 两种打印规格的热敏打印机,切刀(部分机器),钱箱(部分机器),客显(部分机器)

  • 商米打印机一体机打印文档

使用案例

获取插件

// 商米内置打印机插件
let sunmiPrinterPlugin = uni.requireNativePlugin('Tellsea-SunmiPrinterPlugin');
console.log('商米内置打印机插件:' + JSON.stringify(sunmiPrinterPlugin));

连接服务

// 连接服务
connect() {sunmiPrinterPlugin.connect((e) => {let res = JSON.parse(e);console.log(res);if (res.code == 200) {that.$msg(res.msg);} else {that.$msg(res.msg);}});
},

断开服务

// 断开服务
disconnect() {sunmiPrinterPlugin.disconnect((e) => {let res = JSON.parse(e);console.log(res);if (res.code == 200) {that.$msg(res.msg);} else {that.$msg(res.msg);}});
},

测试打印

// 测试打印
testPrinter() {sunmiPrinterPlugin.printerInit();sunmiPrinterPlugin.getPrinterPaper((paper) => {sunmiPrinterPlugin.setAlignment(1);sunmiPrinterPlugin.printTextWithFont("结账单 #100\n", null, 48);sunmiPrinterPlugin.printTextWithFont("Tellsea 专卖店\n", null, 40);that.setInterval(paper);sunmiPrinterPlugin.setAlignment(0);sunmiPrinterPlugin.setPrinterStyle(2003, 0);sunmiPrinterPlugin.printTextWithFont("桌台号:华山007\n", null, 28);sunmiPrinterPlugin.printTextWithFont("就餐人数:1人\n", null, 28);sunmiPrinterPlugin.printTextWithFont("配送类型:骑手配送\n", null, 28);sunmiPrinterPlugin.printTextWithFont("订单号:131561658165116\n", null, 28);that.setInterval(paper);sunmiPrinterPlugin.setPrinterStyle(1002, 1);let txts = ["商品", "数量", "单价"];let width = [4, 1, 1];let align = [0, 1, 2];sunmiPrinterPlugin.printColumnsString(txts, width, align);sunmiPrinterPlugin.setPrinterStyle(1002, 2);// 多属性格式txts[0] = "杨枝甘露";txts[1] = "";txts[2] = "";sunmiPrinterPlugin.printColumnsString(txts, width, align);txts[0] = "大份、加冰、微辣";txts[1] = 1;txts[2] = 18;sunmiPrinterPlugin.printColumnsString(txts, width, align);// 单属性格式txts[0] = "小馒头";txts[1] = 1;txts[2] = 18;sunmiPrinterPlugin.printColumnsString(txts, width, align);// 单个菜设置备注txts[0] = "备注少放盐";txts[1] = "";txts[2] = "";sunmiPrinterPlugin.printColumnsString(txts, width, align);that.setInterval(paper);sunmiPrinterPlugin.printTextWithFont("订单原价:999\n", null, 28);sunmiPrinterPlugin.printTextWithFont("优惠金额:1\n", null, 28);sunmiPrinterPlugin.printTextWithFont("抹零金额:0.99\n", null, 28);sunmiPrinterPlugin.printTextWithFont("整单打折:8折\n", null, 28);sunmiPrinterPlugin.printTextWithFont("打折金额:200\n", null, 28);sunmiPrinterPlugin.printTextWithFont("订单备注:麻烦快一点,客人忙着出去\n", null, 28);that.setInterval(paper);sunmiPrinterPlugin.printTextWithFont("实付金额:888\n", null, 40);that.setInterval(paper);sunmiPrinterPlugin.printText("    \n");sunmiPrinterPlugin.printText("    \n");sunmiPrinterPlugin.printText("    \n");sunmiPrinterPlugin.printText("    \n");sunmiPrinterPlugin.cutPaper();});
},
setInterval(paper) {if (paper == 1) {sunmiPrinterPlugin.printText("--------------------------------\n");} else {sunmiPrinterPlugin.printText("------------------------------------------------\n");}
}

接口列表

内置打印机开发文档全系列接口。接口的使用,对照着官方在线文档:内置打印机开发文档,查看接口的作用就行了,直接翻译接口名也能知道是啥作用。

    void updateFirmware();int getFirmwareStatus();String getServiceVersion();void printerInit();void printerSelfChecking();String getPrinterSerialNo();String getPrinterVersion();String getPrinterModal();void getPrintedLength();void lineWrap(int var1);void sendRAWData(byte[] var1);void setAlignment(int var1);void setFontName(String var1);void setFontSize(float var1);void printText(String var1);void printTextWithFont(String var1, String var2, float var3);void printColumnsText(String[] var1, int[] var2, int[] var3);void printBitmap(Bitmap var1);void printBarCode(String var1, int var2, int var3, int var4, int var5);void printQRCode(String var1, int var2, int var3);void printOriginalText(String var1);void commitPrint(TransBean[] var1);void commitPrinterBuffer();void cutPaper();int getCutPaperTimes();void openDrawer();int getOpenDrawerTimes();void enterPrinterBuffer(boolean var1);void exitPrinterBuffer(boolean var1);void tax(byte[] var1, InnerTaxCallback var2);void getPrinterFactory();void clearBuffer();void commitPrinterBufferWithCallback();void exitPrinterBufferWithCallback(boolean var1);void printColumnsString(String[] var1, int[] var2, int[] var3);int updatePrinterState();void sendLCDCommand(int var1);void sendLCDString(String var1);void sendLCDBitmap(Bitmap var1);int getPrinterMode();int getPrinterBBMDistance();void printBitmapCustom(Bitmap var1, int var2);int getForcedDouble();boolean isForcedAntiWhite();boolean isForcedBold();boolean isForcedUnderline();int getForcedRowHeight();int getFontName();void sendLCDDoubleString(String var1, String var2);int getPrinterPaper();boolean getDrawerStatus();void sendLCDFillString(String var1, int var2, boolean var3);void sendLCDMultiString(String[] var1, int[] var2);int getPrinterDensity();void print2DCode(String var1, int var2, int var3, int var4);void autoOutPaper();void setPrinterStyle(int var1, int var2);void labelLocate();void labelOutput();

【Uniapp 原生插件】商米内置打印机插件相关推荐

  1. 【Android】Android 集成商米内置打印机打印票据

    文章目录 [Android]Android 集成商米内置打印机打印票据 1.集成商米打印依赖 2.规范接口接口 3.使用到的相关对象以及工具类 4.MainActivity初始化接口 5.Uniapp ...

  2. android 连接商米POSV1内置打印机

    最近接触连接打印机的比较多,就写下来吧 连接商米POSV1的打印机: 商米官网上有开发文档,具体可以看下,我只写下步骤: (1)因为我用的AIDL的方法,所以先把这3个文件放入到项目中 (2)创建线程 ...

  3. java分页插件PageHelper的内置list数据操作失败

    问题描述: java分页插件PageHelper的内置list数据在hanlder处理器中获取失败,但是测试确通过了,如下图 但是测试代码成功 @ContextConfiguration(locati ...

  4. AWS EMR内置Ranger插件使用的IAM Role及其设计策略

    AWS EMR提供三种内置的Ranger插件,分别是:S3(EMRFS),Spark,Hive,如果要启用这些插件,需要创建三个特定的IAM Role,以便相关组件能获得适当的权限.对这三种Role的 ...

  5. 版权原因,QQ不再内置flash插件,需安装二个插件

    QQ不再内置flash插件 需安装二个插件

  6. HBuilder X内置浏览器插件安装失败解决方案

    我是最近下载的HBuilder X,今天要去用的时候,想去下载一下插件,发现其他插件都能下载安装成功,而内置浏览器插件却总是安装失败.注意,提示的是安装失败哦,于是我便去百度寻求帮助. 关闭360,火 ...

  7. Idea中内置Translation插件报“翻译错误”,解决方式!!!

    问题 我的编程软件一直是Idea,Idea是我心中YYDS. 使用的版本是2020.4,最近在使用idea内置的Translation翻译插件的时候,一直报翻译失败的错误.一开始以为是我的网络问题,从 ...

  8. VS code内置浏览器插件-Preview on Web Server

    VS code内置浏览器需要自己下载安装,下面我们就来看看下载安装使用VS code内置浏览器的图文教程. 软件名称: Visual Studio Code(代码编辑器) v1.51.1 64位 中文 ...

  9. vscode预览html插件,VSCode插件推荐-VSCode内嵌浏览器插件-Browser Preview

    很多小伙伴在开发html页面的时候觉得很不方便.因为显示屏的大小是有限的,只能展示代码或者浏览器窗口的其中一种,哪怕用上了LiveServer,也需要一直切换页面,接下来小编带来的这款插件,可以在VS ...

最新文章

  1. mysql数据库常用命令
  2. 是否有可能从python中的句子语料库重新训练word2vec模型(例如GoogleNews-vectors-negative300.bin)?
  3. JMeter重要知识点汇总
  4. HDU - 5592 ZYBs Premutation(线段树,逆序对)
  5. 你必须要懂的APK瘦身知识
  6. 命令行下的mysql的基本操作
  7. 【转】 测试人员的职业规划 --整理标注
  8. HTML基础知识点(二)
  9. matplotlib报错Line2D‘ object has no property ‘linestyle‘或‘linewidth‘
  10. 如何有效的屏蔽百度蜘蛛
  11. WAF - SQL注入之绕过云锁 靶场实战
  12. 生物识别技术是什么,生物识别技术的比较介绍
  13. 绿色手动安装MySQL数据库
  14. kdj值应用口诀_KDJ应用口诀,一文教你巧妙利用KDJ买卖股票
  15. 河南高校计算机好的是排名,河南高校的计算机科学与技术专业排名如何?
  16. 复旦大学邱锡鹏:若优化顺利,MOSS三月底开源;库克或被踢出苹果董事会;华为云联合CSDN发布智能化编程助手Snap|极客头条
  17. 1231:最小新整数
  18. 你要整合资源,首先你得是一个有资源的人
  19. 【渝粤题库】国家开放大学2021春2226物业管理实务(2)题目
  20. 001:你好Direct 2D! 在对话框中初次使用D2D

热门文章

  1. 差分隐私:原理,应用与展望
  2. arduino pwm电机调速程序
  3. 在zabbix中使用使用pg_monz模板日常监控postgresql发生sh: psql: command not found错误
  4. Altium Desinger 20概述-安装及卸载
  5. python爬取知乎热搜_Python知乎热门话题数据的爬取实战
  6. 1.Supervised Learning with Projected Entangled Pair States
  7. MATLAB调整为护眼模式
  8. IOS_音视频不同步问题
  9. CocosCreator只谈实战系列1——成语游戏编辑器篇
  10. 2020年数学建模国赛B题:穿越沙漠