Я пытаюсь отправить некоторый код ZPL на Zebra TLP 2824, подключенный через USB, из приложения Java в Windows 7. Я пробовал разные подходы, но пока не смог распечатать. В настройках драйвера я активировал сквозной режим и попытался установить принтер с помощью универсального / текстового драйвера, но ничего не получилось.
Я всегда получаю неуказанные ошибки Windows в очереди печати.
Это мой код:
try {
PrintService psZebra = null;
String sPrinterName = null;
PrintService[] services = PrintServiceLookup.lookupPrintServices(null, null);
for (int i = 0; i < services.length; i++) {
PrintServiceAttribute attr = services[i].getAttribute(PrinterName.class);
sPrinterName = ((PrinterName) attr).getValue();
if (sPrinterName.toLowerCase().indexOf("generic") >= 0) {
psZebra = services[i];
System.out.println(psZebra);
break;
}
}
if (psZebra == null) {
System.out.println("Zebra printer not found.");
return;
}
DocPrintJob job = psZebra.createPrintJob();
String s = "${^XA^FO100,100^BY7^BCN,100,Y,N,N^FD123456^FS^XZ}$";
byte[] by = s.getBytes();
DocFlavor flavor = DocFlavor.BYTE_ARRAY.AUTOSENSE;
Doc doc = new SimpleDoc(by, flavor, null);
job.print(doc, null);
} catch (PrintException e) {
e.printStackTrace();
}