封装映美CFP-820BW针式云打印机局域网wifi、蓝牙打印的相关操作,支持打印html、图片,使用前请先按照说明书配置网络。图片仅支持jpg、png格式,大小不能超过600K。打印html仅支持本地静态htlm通过局域网wifi链接打印。手机系统支持Android 7.0以上手机,ios暂不支持。
搜索可用的映美打印设备,需要手机开启蓝牙和位置;使用局域网wifi,需要先扫描打印机上的二维码,配置网络
支持平台
微信 | 友空间 | 安卓 | iOS |
---|---|---|---|
✘ | ✔︎ | ✔︎ | ✘ |
参数
字段 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
time | number | 10 | 是 | 搜索超时时间,默认10秒,超出时间后没有搜索到可用设备时需要重新搜索 |
type | string | all | 是 | 搜索类型,参考值: "wifi":局域网wifi; "classic":蓝牙经典版; "ble":蓝牙低功耗版; "all":包括全面三种全部 |
callback | function | 是 | 搜索数据回调函数 |
注意:
示例
mtl.ymPrinter.searchDevices({
time:10,
type:'all',
callback: function(res){
const status = res.status,//布尔类型:true:表示扫描到设备,false
const eventType = res.eventType, //字符串类型://startDevices 表示开始搜索; //stopDevices 表示结束搜索;//findDevices表示发现设备,只要搜索到新的就会一直回调,直到搜索结束
const deviceInfos = res.deviceInfos, //JSonArray,eventType为"findDevices"时返回搜索到的打印设备信息
},
success: function(res) {
},
fail: function(err) {
var message = err.message; // 错误信息
}
});
支持平台
微信 | 友空间 | 安卓 | iOS |
---|---|---|---|
✘ | ✔︎ | ✔︎ | ✘ |
参数
-无-
示例
mtl.ymPrinter.isSupportedBLE({
success: function(res) {
const isSupportedBLE = res.isSupportedBLE,//布尔类型:布尔类型:true:支持,false:不支持
},
fail: function(err) {
var message = err.message; // 错误信息
}
});
支持平台
微信 | 友空间 | 安卓 | iOS |
---|---|---|---|
✘ | ✔︎ | ✔︎ | ✘ |
参数
-无-
示例
mtl.ymPrinter.isBluetoothOpen({
success: function(res) {
const isBluetoothOpen = res.isBluetoothOpen,//布尔类型:布尔类型:true:支持,false:不支持
},
fail: function(err) {
var message = err.message; // 错误信息
}
});
支持平台
微信 | 友空间 | 安卓 | iOS |
---|---|---|---|
✘ | ✔︎ | ✔︎ | ✘ |
参数
-无-
示例
mtl.ymPrinter.getConnectedDevice({
success: function(res) {
const status = res.status,//布尔类型:true:表示有设备链接;false表示无设备链接
const deviceInfo = res.deviceInfo//JSon对象,status为 true 时返回,内部字段如下:
//wifi搜索: address为ip地址, did为打印机编号, pstatus为打印机状态:(0 空闲 1 忙碌 2 异常), mdl为打印机型号. (作为打印参数时:则必须有address和did)
//蓝牙搜索: address 为mac地址, did为蓝牙名 (做为打印参数时:则必须有address)
//transType:打印类型(BLE/CLASSIC/WIFI),打印时必须有该参数
},
fail: function(err) {
var message = err.message; // 错误信息
}
});
打印图片, 注意图片仅支持png和jpg格式的,大小有限制,不能超过600K
支持平台
微信 | 友空间 | 安卓 | iOS |
---|---|---|---|
✘ | ✔︎ | ✔︎ | ✘ |
参数
字段 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
deviceInfo | obj | 是 | searchDevices方法中返回的deviceInfos中的任意一个都可以选择 | |
path | string | 是 | 本地图片的路径,支持fs、绝对路径 |
示例
mtl.ymPrinter.printPicture({
deviceInfo:{"address":"DC:E9:94:8B:4B:8A","did":"DESKTOP-1MPSR34","mdl":null,"progress":0,"pstatus":0,"status":0,"taskid":null,"tp":0,"transType":"TRANS_CLASSIC"},
path:'https://pic2.ntimg.cn/pic/20220520/25297851_161452446108_4.jpg',
success: function(res) {
const status = res.status,//布尔类型:true:数据发送成功,false:数据发送失败
const msg = res.msg //字符串类型: status为 false 时返回错误信息
},
fail: function(err) {
var message = err.message; // 错误信息
}
});
支持平台
微信 | 友空间 | 安卓 | iOS |
---|---|---|---|
✘ | ✔︎ | ✔︎ | ✘ |
参数
字段 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
deviceInfo | obj | 是 | searchDevices方法中返回的deviceInfos中的任意一个都可以选择 | |
path | string | 是 | 本地html的路径,支持fs、绝对路径 |
注意:CFP-820BW只支持wifi链接打印;支持标准规范的html标签,样式只能支持到IE11内核,可以打印表格数据以及标准规范排版页面,html页面的body宽度不大于打印机的纸张宽度值,Body宽度的像素最大值等于纸张宽度*打印机dpi/25.4打印机的dpi值。CFP-820BW的dpi值为180。
示例
mtl.ymPrinter.printHTML({
deviceInfo:{"address":"DC:E9:94:8B:4B:8A","did":"DESKTOP-1MPSR34","mdl":null,"progress":0,"pstatus":0,"status":0,"taskid":null,"tp":0,"transType":"TRANS_CLASSIC"},
path:'/storage/emulated/0/Android/data/com.yongyou.youpu.debug/files/ymprinter/25297851_161452446108_4.jpg',
success: function(res) {
const status = res.status,//布尔类型:true:数据发送成功,false:数据发送失败
const msg = res.msg //字符串类型: status为 false 时返回错误信息
},
fail: function(err) {
var message = err.message; // 错误信息
}
});
打开系统的文件选择器,选择一个文件打印,只支持图片、html文件;pdf需要转成图片后才能打印。打印图片大小不能超过600K,图片格式为jpg、png。
支持平台
微信 | 友空间 | 安卓 | iOS |
---|---|---|---|
✘ | ✔︎ | ✔︎ | ✘ |
参数
字段 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
deviceInfo | obj | 是 | searchDevices方法中返回的deviceInfos中的任意一个都可以选择 |
示例
mtl.ymPrinter.printFile({
deviceInfo:{"address":"DC:E9:94:8B:4B:8A","did":"DESKTOP-1MPSR34","mdl":null,"progress":0,"pstatus":0,"status":0,"taskid":null,"tp":0,"transType":"TRANS_CLASSIC"},
path:'/storage/emulated/0/Android/data/com.yongyou.youpu.debug/files/ymprinter/25297851_161452446108_4.jpg',
success: function(res) {
const status = res.status,//布尔类型:true:数据发送成功,false:数据发送失败
const msg = res.msg //字符串类型: status为 false 时返回错误信息
},
fail: function(err) {
var message = err.message; // 错误信息
}
});
支持平台
微信 | 友空间 | 安卓 | iOS |
---|---|---|---|
✘ | ✔︎ | ✔︎ | ✘ |
参数
-无-
示例
mtl.ymPrinter.stopSearch({
success: function(res) {
},
fail: function(err) {
var message = err.message; // 错误信息
}
});
关闭链接,调用该方法会关闭与打印机的通信,未发送完的数据会丢失,应当在不需要连接的时候使用。
支持平台
微信 | 友空间 | 安卓 | iOS |
---|---|---|---|
✘ | ✔︎ | ✔︎ | ✘ |
参数
-无-
示例
mtl.ymPrinter.closeConnect({
success: function(res) {
},
fail: function(err) {
var message = err.message; // 错误信息
}
});
释放资源,调用该方法会关闭与打印机的通信,日志写入也会停止。可以在APP退出或页面关闭时调用。
支持平台
微信 | 友空间 | 安卓 | iOS |
---|---|---|---|
✘ | ✔︎ | ✔︎ | ✘ |
参数
-无-
示例
mtl.ymPrinter.release({
success: function(res) {
},
fail: function(err) {
var message = err.message; // 错误信息
}
});