ZPL Code an Etikettendrucker senden in Java

ZPL bzw. die Weiterentwicklung ZPL II, die Zebra Programming Language ist eine von der Firma Zebra entwickelte Drucker-Beschreibungssprache. Damit kann man mittels einfacher Steuerzeichen, welche immer mit einem Zirkumflex beginnen (^), das Aussehen eines Etiketts beschreiben und dieses an den Etikettendrucker zum Drucken senden.

ZPL erlaubt auch die Verwendung von Variablen. Das ZPL-Template kann z.B. in der Datenbank gespeichert werden, dann tauscht man einfach die Variablen mit den zu druckenden Daten aus und schickt den ZPL-Code über das Netzwerk zum Drucker.

Um einen solchen ZPL-Code zu erstellen, gibt es verschiedene Software. Eine Möglichkeit ist z.B. Labelary, ein online-Tool zum Generieren von ZPL-Code mit integrierter Vorschau (Labelary Online ZPL Viewer).

Folgende Java-Methode schickt den Code dann direkt zum Drucker (voraussgesetzt dieser ist über das Netzwerk angeschlossen):

private void sendZplCodeToPrinter(String druckerIpAdresse, String zplCode) throws UnknownHostException, IOException {
    Socket sock = new Socket(druckerIpAdresse, 9100);

    byte [] mybytearray  = new byte [(int)zplCode.length()];
    BufferedInputStream bis = new BufferedInputStream(new ByteArrayInputStream(zplCode.getBytes()));
    bis.read(mybytearray,0,mybytearray.length);
    OutputStream os = sock.getOutputStream();
    os.write(mybytearray,0,mybytearray.length);
    os.flush();		
    os.close();
}
Code-Sprache: JavaScript (javascript)