Condividi tramite


Epson ESC/POS con formattazione

Informazioni su come usare la lingua dei comandi ESC/POS per formattare il testo, ad esempio caratteri in grassetto e di dimensioni doppie, per la stampante Point of Service.

API importanti

Utilizzo ESC/POS

Windows Point of Service supporta un'ampia gamma di stampanti, tra cui diverse stampanti TM Di Windows (per un elenco completo delle stampanti supportate, vedere la pagina stampante PointofService). Windows supporta la stampa tramite il linguaggio di controllo della stampante ESC/POS, che fornisce comandi efficienti e funzionali per la comunicazione con la stampante.

ESC/POS è un sistema di comando creato da Epson usato in un'ampia gamma di sistemi di stampante POS, volti a evitare set di comandi incompatibili fornendo applicabilità universale. La maggior parte delle stampanti moderne supporta ESC/POS.

Tutti i comandi iniziano con il carattere ESC (ASCII 27, HEX 1B) o GS (ASCII 29, HEX 1D), seguito da un altro carattere che specifica il comando. Il testo normale viene semplicemente inviato alla stampante, separato da interruzioni di riga.

L'API Windows PointOfService offre molte di queste funzionalità tramite i metodi Print() o PrintLine().. Tuttavia, per ottenere una certa formattazione o per inviare comandi specifici, è necessario usare i comandi ESC/POS, compilati come stringa e inviati alla stampante.

Esempio di utilizzo di caratteri grassetto e di dimensioni doppie

L'esempio seguente illustra come usare i comandi ESC/POS per stampare caratteri in grassetto e di dimensioni doppie. Si noti che ogni comando viene compilato come stringa, quindi inserito nelle chiamate printJob.

// … prior plumbing code removed for brevity
// this code assumed you've already created a receipt print job (printJob)
// and also that you've already checked the PosPrinter Capabilities to
// verify that the printer supports Bold and DoubleHighDoubleWide print modes

const string ESC = "\u001B";
const string GS = "\u001D";
const string InitializePrinter = ESC + "@";
const string BoldOn = ESC + "E" + "\u0001";
const string BoldOff = ESC + "E" + "\0";
const string DoubleOn = GS + "!" + "\u0011";  // 2x sized text (double-high + double-wide)
const string DoubleOff = GS + "!" + "\0";

printJob.Print(InitializePrinter);
printJob.PrintLine("Here is some normal text.");
printJob.PrintLine(BoldOn + "Here is some bold text." + BoldOff);
printJob.PrintLine(DoubleOn + "Here is some large text." + DoubleOff);

printJob.ExecuteAsync();

Per altre informazioni su ESC/POS, inclusi i comandi disponibili, vedere la Revisione di riferimento 2.60 dei comandi ESC/POS . Per informazioni dettagliate su Windows.Devices.PointOfService e su tutte le funzionalità disponibili, vedere PointofService Printer su MSDN.