Thema: Delphi QR-Code mit ESC-Commands

Einzelnen Beitrag anzeigen

Achim Kalwa

Registriert seit: 2. Apr 2005
Ort: Lienen
110 Beiträge
 
Delphi 12 Athens
 
#4

AW: QR-Code mit ESC-Commands

  Alt 26. Jul 2022, 18:00
hat jemand schon mal einen QR-Code mit ESC-Commands an einen STAR Bondrucker geschickt?
Vermutlich nicht, sonst hättest Du eine entsprechende Meldung bekommen. Aber Du kannst der Erste sein!
Ich komme bei der Beschreibung nicht weiter. Leider habe ich auch keinen Drucker zum Testen und dann dies nur beim Kunden machen.
https://www.manualslib.com/manual/16...age=136#manual
Mit dem Befel ESC GS y D 1 komme ich nicht klar wie ich den schicken soll?
Ich möchte folgenden Text schicken "Hallo QR-Code"
Du möchtest wissen, wie der Text aufbereitet werden muss, um als Escape-Sequenz vom Drucker verstanden zu werden. Die Doku zum Drucker gibt ja bereits die Anfang der Datensequenz für den QR-Code vor. Du musst jetzt "nur noch" die Anzahl der Datenbytes berechnen (nL und nH in der Doku), und dann die Nutzdaten anfügen. Hier wird ein RawByteString verwendet, damit keine Konvertierung der Bytes nach Unicode oder Ansi stattfindet:

Code:
// ungetestet; direkt hier in den Editor getippt:
var
  Data   : RawByteString;
  Message : string;
  i      : Integer;
  CharLen : Integer;
  nLow   : Byte;
  nHigh  : Byte;
begin
  Message := 'Hallo QR-Code';
  CharLen := Length(Message);
  if CharLen > 7089 then
    raise Exception.Create('String too long.');

  nHigh := CharLen div 256;
  nLow := CharLen mod 256;

  Data := #$1B#$1D#$79#$44#$31#$00; // ESC GS y D 1 NUL
  Data := Data + AnsiChar(nLow) + AnsiChar(nHigh);
  for i := 1 to CharLen do
  begin
    Data := Data + AnsiChar(Ord(Message[i]));
  end;
  // Data an den Drucker senden überlasse ich Dir
end;
HTH
Achim
Achim
  Mit Zitat antworten Zitat