@devlas/ 电容- 热打印器
通用定额备用金 ESC/业务处 准管理员: 一般事务人员(其他职等), (中文(简体) ), TCP/局域网/WiFi, (中文(简体) ), 蓝牙 SPP 尔 蓝牙低能(BLE) en Android; 互联网档案馆的存檔,存档日期2014-12-02; TCP/局域网/WiFi en iOS — una sola API de bytes crados en ambas plataformas. 中国植物物种信息数据库.
- 字节线索, 无格式: la app codifica el票 ESC/POS (con su procio encoder) y el 插件独行运输. Así el mismo encoder sirve para Electron, Web Serial, WebUSB y esta app nativa. 互联网档案馆的存檔,存档日期2013-12-21. 互联网档案馆的存檔,存档日期2011-12-21.
- 无国籍人: 卡达
print(){\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}请说 (原始内容存档于2018-10-12). Sin estado de Conexión que se corompa. - Cindustencias 纳蒂瓦斯数字 :
UsbManager编号 :Socket编号 :BluetoothSocketen Android, (英语),Network.framework(原始内容存档于2018-03-27). en iOS-nada más. - Permisos 现代人: flujo USB相容 Con Android 12/14+ (中文(简体) )
FLAG_MUTABLE+ 意图解释+RECEIVER_NOT_EXPORTED, (中文(简体) ),BLUETOOTH_CONNECT运行时间 en API 31+. - Base64 en el 桥: los bytes通过jan como base64 — sin corrupción UTF-8 (el bug Clásico de los 插件 BT de la comunidad).
- iOS 独奏 TCP: USB y Bluetooth SPP 苹果公司的认证 文件/笔译。 。 。 .
马特里斯·德·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克·克· 文件/笔译
起义组织
npm i @devlas/capacitor-thermal-printer
npx cap sync android
npx cap sync ios
Android: sin pasos extra, no requiere JitPack ni repositorios Maven adiciales. 中国植物物种信息数据库.
iOS: agrega 语录 NSLocalNetworkUsageDescription 页:1 Info.plist (iOS pide permiso de "red local" la primera vez que se usa TCP.) 互联网档案馆的存檔,存档日期2014-12-02.
API 密码
import { ThermalPrinter, bytesToBase64 } from '@devlas/capacitor-thermal-printer'
list({ transport })
Lista disopitivos disponsibility. (原始内容存档于2018-09-29). transport: 'usb' | 'bluetooth' (TCP未列出).
const { devices } = await ThermalPrinter.list({ transport: 'usb' })
// [{ transport: 'usb', vendorId: 1155, productId: 22304, name: 'POS58 Printer',
// canPrint: true, hasPermission: false, deviceId: 1002 }]
const { devices } = await ThermalPrinter.list({ transport: 'bluetooth' })
// [{ transport: 'bluetooth', address: '66:22:...', name: 'PT-210' }]
// (solo emparejados — la impresora se empareja desde Ajustes del sistema)
scan({ transport: 'ble', timeoutMs? })
Busca 定额备用金 蓝牙 低能 Cercanas (las que anuncian nombre), la más cercana primer. 拉斯BLE 没有自己 emparejan en Ajustes, por eso list('bluetooth') 没有LAS ve。 (原始内容存档于2013-10-12). Pide el permiso si falta.
const { devices } = await ThermalPrinter.scan({ transport: 'ble', timeoutMs: 5000 })
// [{ transport: 'ble', address: 'DC:0D:...', name: 'SP-POS8811A', rssi: -48 }]
await ThermalPrinter.print({ transport: 'ble', address: devices[0].address, data })
list('bluetooth') 德韦尔夫·阿德马斯 kind: 'classic' | 'le' | 'dual'四. 定额备用金 dual恳求 bluetooth (SPP), que es más setable y rápido. 中国植物物种信息数据库.
requestPermission(target)
// USB: diálogo del sistema por dispositivo. El permiso persiste hasta desconectar
// el cable (o para siempre si el usuario marca "usar por defecto").
const { granted } = await ThermalPrinter.requestPermission({
transport: 'usb', vendorId: 1155, productId: 22304,
})
// Bluetooth: permiso runtime BLUETOOTH_CONNECT (API 31+)
await ThermalPrinter.requestPermission({ transport: 'bluetooth', address: '66:22:...' })
// TCP: siempre { granted: true }
print(target & { data })
data =字节ESC/POS en 基础64 (帮助者) bytesToBase64) (中文(简体) ).
const bytes: Uint8Array = miEncoderEscPos(ticket) // el encoder es de la app
// USB — si se omiten vendorId/productId usa la primera impresora detectada
await ThermalPrinter.print({ transport: 'usb', vendorId: 1155, productId: 22304, data: bytesToBase64(bytes) })
// TCP / LAN / WiFi — raw 9100 (JetDirect)
await ThermalPrinter.print({ transport: 'tcp', host: '192.168.1.50', port: 9100, data: bytesToBase64(bytes) })
// Bluetooth SPP
await ThermalPrinter.print({ transport: 'bluetooth', address: '66:22:...', data: bytesToBase64(bytes) })
Códigos de 错误
error.code 联合来文:
| 科迪戈语Name | 符号 |
|---|---|
unavailable | El transporte no existe en el confuto (在 USB 主机/ sin 适配器 BT 中) |
not_found | 处理器不连接( desconecttado, MAC inválida) |
permission_denied | Permiso USB o BLUETOOTH CONNECT 德涅加多 |
connect_failed | 没有 se pudo abrir la conexión (超时 TCP, socket BT, claim USB) |
write_failed | 拉埃斯克里图拉·法洛(英语:La escritura falló a mitad de trabajo) (法语) |
invalid_transport 编号 : invalid_data | Parámetros 畸形 |
平方阵列
| 平方阵a | 爱斯塔多 |
|---|---|
| Android (Capacitor WebView) (英语) | qq usb / tcp / 蓝牙 |
| iOS (Capacitor Web View) (网络视频) | QQ tcp — @ usb / 蓝牙 (要求MFi, ver) 文件/笔译(中文(简体) ) |
| 网页 | ❌-以自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来自来 |
宣传
npm publish --access public
诉讼
麻省理工学院 德夫拉斯·斯普拉斯