Как отправить байты на термопринтер Kotlin (POS)

Я делаю программу, чтобы открыть коробку, подключенную к термопринтеру, но у меня проблема, и я не знаю, как отправить байты на принтер или открыть коробку, или отрезать бумагу, даже если я знаю требуемые байты, Я нахожу это только для Java, но я бы хотел сделать это в Котлине.

Принтер подключен через USB к ПК и, в свою очередь, через сетевой кабель (если я не ошибаюсь) к принтеру

. Откройте коробку: 27,112,48,55,121

Большое спасибо

0
задан 04.08.2019, 19:41
1 ответ
val open = byteArrayOf(27, 112, 48, 55, 121)
val printserviceattributeset = HashPrintServiceAttributeSet()
printserviceattributeset.add(PrinterName("", null))
val printservice = PrintServiceLookup.lookupPrintServices(null,printserviceattributeset)
if (printservice.size != 1) {
    println("Printer not found")
}
val pservice = printservice[0]
val job = pservice.createPrintJob()
val flavor = DocFlavor.BYTE_ARRAY.AUTOSENSE
val doc = SimpleDoc(open, flavor, null)
val aset = HashPrintRequestAttributeSet()
try {
    job.print(doc, aset)
    println("Succefully printed")
} catch (ex: PrintException) {
    println(ex.message)
}

Извините задержку, справедливый человек я ушел в отпуск и я только что вернулся, aquГ - я оставляю вам cГіdigo, который функционирует. В printerName ("") поместите между кавычками имя принтера tickets, находившееся в устройствах и принтерах.

1
ответ дан 01.12.2019, 22:35