Liebe Gemeinde,
da ich kein gescheites Programm finden konnte, um unterwegs Quittungen für Kunden auszudrucken, ohne auf einen DIN A4-Drucker zurückgreifen zu müssen, habe ich mir ein kleines Skript mit der printMG.dll von Martin erstellt, um einen kleinen 80 mm Bluetooth-Bondrucker anzusteuern. Das klappt soweit wunderbar, was den Inhalt angeht. Nur mit der Formatierung habe ich ein kleines Problem.
Zum Hintergrund: Generell benutzt man bei Kassenanwendungen häufig den Raw- oder Textmodus, da das einfach schneller geht, als Grafiken zum Drucker zu schicken. Z.B. hinterlegt man ein Logo einmal im Speicher des Druckers und löst es zum Anfang des Druckvorgangs einfach aus, statt die ganze Grafik neu zu übermitteln.
Auch für Textformatierungen und andere Dinge gibt es dann entsprechende Escape-Sequenzen (Lade öffnen, Schrift doppelt breit, doppelt hoch, etc.), die man einfach in den Druck mit einbauen kann.
Dummerweise bin ich anscheinend zu doof, um die Sequenzen richtig zu senden. Probiert habe ich z.B. den Druck in doppelter Höhe. Dazu müsste ich die Sequenz ESC ! n an den Drucker schicken. n steht dann für die Art des Drucks (n = 16 ist doppelte Höhe, n = 32 ist doppelte Breite). Es gilt also, dem Drucker zu sagen ESC ! 16. Dazu habe ich z.B.
_PrintText( $Prn Chr( 27) & Chr( 33) & 16 ) sowie _PrintText( $Prn {ESC} & {!} & 16 ) oder auch send( Chr( 27) & Chr( 33) & 16 ) ausprobiert. Leider hat nichts davon funktioniert.
Hat vielleicht schon einmal jemand von Euch mit solchen Escape-Sequenzen gearbeitet oder sonstwie eine Idee, wie ich diese korrekt an den Drucker schicken kann? Über jedwede Unterstützung würde ich mich riesig freuen.