Skip to content

API 参考

本节提供 taro-bluetooth-print 的完整 API 参考文档。

核心类

说明
BluetoothPrinter蓝牙打印机主类,提供链式调用 API
DeviceManager设备管理器,负责扫描和连接设备
MultiPrinterManager多打印机管理器,支持并发和负载均衡
PrintQueue打印队列,支持优先级和重试

数据管理

说明
OfflineCache离线缓存,断网自动缓存,来网自动同步
PrintHistory打印历史记录管理
PrintStatistics打印统计信息

高级管理

说明
ScheduledRetryManager定时重试管理器
BatchPrintManager批量打印管理器
PrinterStatus打印机状态监控

工具与模板

说明
TemplateEngine模板引擎,支持循环、条件、表格
BarcodeGenerator条码/二维码生成器
PrinterConfigManager打印机配置管理

驱动

详见 drivers — 完整 driver 列表 + fluent-builder vs IPrinterDriver 选择指南。

驱动协议说明
EscPosESC/POS热敏票据打印机
TsplDriverTSPLTSC 标签打印机
ZplDriverZPLZebra 标签打印机
CpclDriverCPCL移动打印机
StarPrinterSTARSTAR 系列打印机

适配器

详见 adapters — 平台接入详情 + AdapterFactory 自动选择。

适配器平台
TaroAdapter微信/支付宝/百度/字节跳动小程序
WebBluetoothAdapterH5 浏览器
ReactNativeAdapterReact Native
AlipayAdapter支付宝小程序
BaiduAdapter百度小程序
ByteDanceAdapter字节跳动小程序
QQAdapterQQ 小程序

服务层

说明
BluetoothPrinter蓝牙打印机主类,提供链式调用 API + writeRaw() 原始字节透传(v2.15.3+)
ConnectionManager底层 BLE 连接管理(heartbeat / auto-reconnect / state machine)
CommandBuilderESC/POS 命令构造器(fluent API)
PrintJobManager任务调度(chunking / retry / progress / pause)
PrintScheduler定时打印(cron 风格)
CloudPrintManager云端打印集成
QRCodeDiscoveryService通过 QR 码发现并配对打印机
QRCodeParserQR 码内容解析(业务字段提取)

工具与模板

说明
TemplateEngine模板引擎,支持循环、条件、表格
BarcodeGenerator条码/二维码生成器
TextFormatter文本格式化(对齐 / 字号 / 加粗 / 下划线)
PreviewRenderer预览渲染(PNG / HTML)
ImageProcessing图像处理(dithering / 1-bit 转换)
EncodingService多编码支持(GBK / Big5 / UTF-8 / Shift-JIS)
Platform平台检测(wechat / alipay / h5 / rn)
Logger日志门面(scope / level / configure)
outputLimiter输出限流(截断 / 批量 / 摘要)

工厂

导出说明
createBluetoothPrinter主工厂(v2.6+ 推荐)
createWebBluetoothPrinterH5 专用快捷方式
PrinterFactory旧版兼容(@deprecated)

插件系统(v2.6+ 实验性)

导出说明
PluginManager插件注册 / 顺序执行
createLoggingPlugin日志插件
createRetryPlugin自动重试插件
Plugin / PluginHooks / PluginOptions插件接口类型

类型定义

详见 typesIPrinterDriver / IPrinterAdapter / ICommandBuilder / IConnectionManager / IPrintJobManager / PrinterState / IQrOptions / IAdapterOptions / DeviceInfo / PrintProgress

事件总线

导出说明
EventEmitter通用事件总线(on / once / off / emit)

错误处理

详见 errors — 完整错误码 + 子类 + retry 模式。

typescript
import { BluetoothPrintError, ErrorCode } from 'taro-bluetooth-print';

try {
  await printer.print();
} catch (error) {
  if (error instanceof BluetoothPrintError) {
    console.log('错误码:', error.code);
    console.log('错误信息:', error.message);
  }
}

错误码

错误码说明
CONNECTION_FAILED连接失败
CONNECTION_TIMEOUT连接超时
WRITE_FAILED数据写入失败
DEVICE_DISCONNECTED设备已断开
SERVICE_NOT_FOUND蓝牙服务未发现
CHARACTERISTIC_NOT_FOUND特征值未发现
PRINT_JOB_IN_PROGRESS打印任务进行中
INVALID_BUFFER无效的数据缓冲区

基于 MIT 许可发布