Quindi sembra che questa stampante supporti qualcosa chiamato ESC/POS, che è come un set di comandi che consente di stampare e formattare i dati. Ci sono alcune guide disponibili online, questa è una che ho usato prima: http://www.starmicronics.com/support/mannualfolder/escpos_cm_en.pdf
Si noti che le stampanti a volte differiscono leggermente in quali set di comandi da ESC/POS supportano, quindi si potrebbe avere un po 'di tentativi ed errori su le tue mani.
In termini di invio di tali dati alla stampante, dipende dal tipo di connessione che è. Per la seriale, dovresti solo essere in grado di aprire e scrivere su quella porta, usando il set di comandi ESC/POS.
Non tutti i dati che invierai saranno codificati ASCII o UTF, molti di essi sono valori binari che devi inviare. Ad esempio, per comunicare alla stampante di scrivere una nuova riga, il valore esadecimale è 0A
. Quindi, in Java si avrebbe bisogno di specificare che come String s = "\u000A";
ecc
per Java è necessario scaricare l'API Java Comm da http://java.sun.com/products/javacomm/
C'è un tutorial su questo qui: http://www.java-samples.com/showtutorial.php?tutorialid=214
Speriamo che questo aiuta .
fonte
2015-08-18 11:29:34
Nota l'installazione di Java Comm è davvero dolorosa. Include la copia di dll direttamente nell'installazione di jvm. Un'alternativa è semplicemente l'uso di plink (da putty) che è appena iniziato come un processo da java e read/write con stdio. –
Inoltre ho avuto alcuni problemi di stabilità con java comm ultima volta che l'ho usato. Se si utilizza plink, il processo di plink può essere solo ucciso e riavviato in caso di errore e quindi rilascerà tutte le risorse sul sistema operativo. –
'" \ u000A "' è anche conosciuto come '" \ n "', cioè newline. E "\ u000A" non funzionerà come il compilatore Java interpreterà quello come una interruzione di riga letterale tra virgolette. Vedi http://stackoverflow.com/questions/3866187/why-cant-i-use-u000d-and-u000a-as-cr-and-lf-in-java –