更新记录

1.0.0(2024-07-05)

V1.0.0 发布


平台兼容性

Android Android CPU类型 iOS
适用版本区间:4.4 - 14.0 armeabi-v7a:未测试,arm64-v8a:未测试,x86:未测试 ×

原生插件通用使用流程:

  1. 购买插件,选择该插件绑定的项目。
  2. 在HBuilderX里找到项目,在manifest的app原生插件配置中勾选模块,如需要填写参数则参考插件作者的文档添加。
  3. 根据插件作者的提供的文档开发代码,在代码中引用插件,调用插件功能。
  4. 打包自定义基座,选择插件,得到自定义基座,然后运行时选择自定义基座,进行log输出测试。
  5. 开发完毕后正式云打包

付费原生插件目前不支持离线打包。
Android 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/android
iOS 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/ios

注意事项:使用HBuilderX2.7.14以下版本,如果同一插件且同一appid下购买并绑定了多个包名,提交云打包界面提示包名绑定不一致时,需要在HBuilderX项目中manifest.json->“App原生插件配置”->”云端插件“列表中删除该插件重新选择


BluetoothPrintingPlugin

简介

一个可定制打印的蓝牙打印插件

引用

// 引用插件
const bluetoothPrinting = uni.requireNativePlugin("Chen-BluetoothPrinting")

getPrinters(CACLLBACK)

获取连接打印机列表

CACLLBACK参数说明

参数 类型 说明
success Boolean 是否成功
code Int 状态码
message String 返回信息
data Array 打印机列表

data参数说明

参数 类型 说明
name String 打印机名称
mac String 打印机mac地址

示例

bluetoothPrinting.getPrinters((res) => {
  if (res.success){
    // ...
  }
})

printImage(OPTIONS,CACLLBACK)

打印图像

属性说明

参数 类型 必填 说明
printer String 打印机名称
url String 打印图像路径

CACLLBACK参数说明

参数 类型 说明
success Boolean 是否成功
code Int 状态码
message String 返回信息

示例

var image = "https://camo.githubusercontent.com/e8655ffec747c97deca7fc72fc8e174f2bbcff0ca99024616569d63d58c02b2c/68747470733a2f2f64616e7473752e636f6d2f66696c65732f726563656970742d746865726d616c2d7072696e7465722e706e673f31"

bluetoothPrinting.printImage({
  "printer": "xxxx",
  "url": image
},(res) => {
  if (res.success){
    // ...
  }
})

printText(OPTIONS,CACLLBACK)

打印内容(文本、条形码、二维码等)

属性说明

参数 类型 必填 说明
printer String 打印机名称
text String 打印内容

CACLLBACK参数说明

参数 类型 说明
success Boolean 是否成功
code Int 状态码
message String 返回信息

示例

var content = "[L]\n" +
        "[C]<u><font size='big'>ORDER N°045</font></u>\n" +
        "[L]\n" +
        "[C]================================\n" +
        "[L]\n" +
        "[L]<b>BEAUTIFUL SHIRT</b>[R]9.99e\n" +
        "[L]  + Size : S\n" +
        "[L]\n" +
        "[L]<b>AWESOME HAT</b>[R]24.99e\n" +
        "[L]  + Size : 57/58\n" +
        "[L]\n" +
        "[C]--------------------------------\n" +
        "[R]TOTAL PRICE :[R]34.98e\n" +
        "[R]TAX :[R]4.23e\n" +
        "[L]\n" +
        "[C]================================\n" +
        "[L]\n" +
        "[L]<font size='tall'>Customer :</font>\n" +
        "[L]Raymond DUPONT\n" +
        "[L]5 rue des girafes\n" +
        "[L]31547 PERPETES\n" +
        "[L]Tel : +33801201456\n" +
        "[L]\n" +
        "[C]<barcode type='ean13' height='10'>831254784551</barcode>\n" +
        "[C]<qrcode size='20'>https://dantsu.com/</qrcode>"

bluetoothPrinting.printText({
  "printer": "xxxx",
  "text": content
},(res) => {
  if (res.success){
    // ...
  }
})


换行
使用 \n 创建新的文本行。

对齐
[L]:左侧对齐
[C]:居中对齐
[R]:右侧对齐

示例:
[L]一些文本:左侧对齐的一列
[C]一些文本:中心对齐的一列
[R]一些文本:右侧对齐的一列
[L]一些文本[L]另一些文本:两列左侧对齐。另一些文本从纸张的中心开始。
[L]一些文本[R]另一些文本:两列,第一列左侧对齐,第二列右侧对齐。其他文本打印在右侧的纸张上。
[L]一些[R]文本[R]这里:三列。
[L][R]文本[R]这里:三列。第一个是空的,但它占用了可用空间的三分之一。

字体
<font></font>标记允许您更改字体大小和颜色。默认大小为正常 / 黑色。
<font size='normal'>一些文本</font>:正常大小
<font size='wide'>一些文本</font>:中等尺寸的两倍宽度
<font size='tall'>一些文本</font>:中等尺寸的两倍高度
<font size='big'>一些文本</font>:中等尺寸的两倍宽度和高度
<font size='big-2'>一些文本</font>:3倍宽度和高度
<font size='big-3'>一些文本</font>:4倍宽度和高度
<font size='big-4'>一些文本</font>:5倍宽度和高度
<font size='big-5'>一些文本</font>:6倍宽度和高度
<font size='big-6'>一些文本</font>:7倍宽度和高度
<font color='black'>一些文本</font>:黑色文本 - 白色背景
<font color='bg-black'>一些文本</font>:白色文本 - 黑色背景
<font color='red'>一些文本</font>:红色文本 - 白色背景(不适用于所有打印机)
<font color='bg-red'>一些文本</font>:白色文本 - 红色背景(不适用于所有打印机)

粗体
<b></b>标记允许您更改字体粗细。
<b>一些文本</b>

下划线
<u></u>标记允许您给文本加下划线。
<u>一些文本</u> 带下划线的文本
<u type='double'>一些文本</u> 文本加粗(不适用于所有打印机)

条形码
<barcode></barcode> 标记允许您打印条形码。在标记内部,您需要编写要打印的代码编号。
<barcode> 451278452159 </barcode>:(12 位数字)
打印 EAN13 条形码 (高度:10mm,宽度:~70% 打印机宽度,文本:显示在下方)。
<barcode type='ean8'> 4512784 </barcode>:(7 位数字)
打印 EAN8 条形码 (高度:10mm,宽度:~70% 打印机宽度,文本:显示在下方)。
<barcode type='upca' height='20'> 4512784521 </barcode>:(11 位数字)
打印 UPC-A 条形码 (高度:20mm,宽度:~70% 打印机宽度,文本:显示在下方)。
<barcode type='upce' height='25' width='50' text='none'> 512789 </barcode>:(6 位数字)
打印 UPC-E 条形码 (高度:25mm,宽度:~50mm,文本:隐藏)。
<barcode type='128' width='40' text='above'> DantSu </barcode>:(字符串)
打印条形码 128 (高度:10mm,宽度:~40mm,文本:显示在上方)。

⚠ 警告 ⚠:此标记有几个约束条件:
包含 <barcode></barcode> 的行只能有一个对齐标记,并且它必须位于行的开头。
<barcode> 必须直接由空白或对齐标记 ( [L][C][R] ) 直接前置。
</barcode> 必须直接后跟一个换行符 \n。
您不能在包含 <barcode></barcode> 的行上写文字。

二维码
<qrcode></qrcode>标记允许您打印QR码。
<qrcode>https://dantsu.com/</qrcode>:打印一个宽度和高度为20毫米的二维码。
<qrcode size='25'>123456789</qrcode>:打印一个宽度和高度为25毫米的二维码。
⚠ 警告 ⚠:此标记有几个限制:
包含 <qrcode></qrcode> 的行只能有一个对齐标记,并且必须位于行的开头。
<qrcode> 必须直接前面是空白或对齐标记([L][C][R])。
</qrcode> 必须直接后跟一个换行符 \n。
您不能在包含 <qrcode></qrcode> 的行上写文字。

隐私、权限声明

1. 本插件需要申请的系统权限列表:

蓝牙相关权限

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问