本帖最后由 Francis.Wang 于 2021-8-17 18:51 编辑
又好久没有更新新贴了,各位看官见谅;
经过两天不懈努力,终于搞定了蓝牙打印基本功能,话不多说,先看效果
具体实现思路:
1、我们需要什么?需要支持的终端是什么?现在情况是什么?
答:蓝牙打印;安卓,IOS;现在情况为web页面,web页面可以调用蓝牙,但是打印命令异常繁杂,需要根据不同厂商重写打印命令,工作量异常繁杂,IOS和安卓原生开发耗时耗力;
2、既然如此,那又当如何?
答:(1)借助第三方平台,在此我们借助apicloud平台进行代码打包,可以很轻松将web页面封装为IOS或者安卓app;
(2)查找可以支持蓝牙打印的模块,因为对应不同厂商,封装的模块不一样,调用方式也不一样,最终确定支持德佟系列打印的模块,原因有二,一是免费,二是文档示例比较齐全;
3、方案有了,如何实现呢?
答:蓝牙打印无非两步,一连接对应蓝牙设备,二打印;
连接对应蓝牙设备,通过查找示例文档,方法如下:- //获取所有打印机
- var lpapi = api.require('lpapiModule');
- lpapi.getAllPrinters({}, function(printers) {
- console.log(ret.info);
- });
- //连接对应打印机
- var lpapi = api.require('lpapiModule');
- lpapi.openPrinter({
- name: 'DT20-XXXXXXXX'
- }, function(ret) {
- if (ret) {
- alert("打印机打开成功");
- } else {
- alert("打印机打开失败");
- }
- });
复制代码
打印通过查找文档示例,方法如下:(1)打印文字:
- var lpapi = api.require('lpapiModule');
- lpapi.drwaText({
- text: "上海格心科技有限公司",
- x: 0,
- y: 0,
- width: 40,
- height: 10,
- fontHeight: 5
- }, function(ret) {});
复制代码
(2)打印二维码:
- var lpapi = api.require('lpapiModule');
- lpapi.draw2DQRCode({
- text: "二维码内容",
- x: 0,
- y: 0,
- width: 30
- }, function(ret) {});
复制代码
通过以上两步,就可以完成一张带二维码的标签打印了,具体的数据格式,需要各位看官自行调整,如何对接活字格数据,就需要把活字格简单研究下活字格js命令,对应的方法取值等;
其实发个帖子,还是想要各位大佬帮忙投个票
|