@m-scan/device-kit-usb
v0.0.1
Published
USB printer discovery and printing via OS print queues (winspool.drv on Windows, CUPS on Linux/macOS)
Readme
@m-scan/device-kit-usb
Scan et impression ESC/POS sur une imprimante USB, adressée via sa queue d'impression système plutôt que via un accès USB bas niveau. Fait partie du SDK @m-scan/device-kit — utilisé en interne par @m-scan/device-kit-agent, généralement pas installé directement par une application.
Supporte Windows (winspool.drv via PowerShell), Linux et macOS (CUPS,
lp -o raw). Voir le
README de l'agent
pour pourquoi l'accès USB direct (WebUSB/libusb) ne fonctionne pas de façon
fiable une fois un pilote imprimante installé.
Usage
import { UsbScanner, UsbPrinter } from '@m-scan/device-kit-usb'
const scanner = new UsbScanner()
const devices = await scanner.scan()
// Liste les queues d'impression système dont le port/URI est USB
const printer = new UsbPrinter({ printerName: 'pos80malo' }) // nom de queue OS
await printer.connect()
await printer.print(bytes) // Uint8Array de commandes ESC/POS
await printer.disconnect()Trouver le nom de la queue
Windows (PowerShell) :
Get-Printer | Select-Object Name, DriverName, PortNameLinux/macOS (CUPS) :
lpstat -vLe nom de queue retourné (Name sur Windows, avant les : sur
Linux/macOS) est ce qu'il faut passer à printerName.
Licence
MIT
