So erstellen Sie eine ZPL Datei in Delphi / C ++ Builder / Lazarus

How to create a ZPL file in Delphi/ C++ Builder/Lazarus

Was ist ZPL?

ZPL

Im Allgemeinen steht ZPL für Zebra Programmierung Sprache. Teams haben die Möglichkeit, das gewünschte Druckdesign zu erstellen, egal, ob es ein Etikett oder eine Seite ist.

Dies macht das Etikett unabhängig von der spezifischen Druckvorrichtung. Der Drucker erhält Befehle zum Erstellen von Formen, Rahmen, Symbolen und mehr und weiß, wie dies selbst zu tun ist. Dies ist der Hauptunterschied zwischen der ZPL!

Zebra Technologies hat die ZPL ursprünglich erstellt, um Etiketten (mit Barcodes, Grafiken und Text) zu erstellen und zu drucken, die hauptsächlich für kommerzielle Aktivitäten verwendet werden.

Ein wenig über die Stadien der Bildung einer ZPL:

Zuerst werden Daten über das Gerät (PCs oder Terminals, die Informationen sammeln) an den Drucker gesendet, dann verarbeitet der Zebra-Druckerprozessor die empfangenen Informationen und druckt das Ergebnis.

ZPL

Ein Paar Wörtern über das Verfassen von ZPL-Code:

Druckmessungen werden in Punkten durchgeführt, da es ohne einen genauen Wert ziemlich schwierig ist, etwas zu tun, ohne Fehler und Ausfälle zu erhalten. Sie sollten die Dokumentation der Druckausrüstung studieren und herausfinden, wie hoch ihre Punktdichte (DPI) ist.

Das Design selbst wird mit den folgenden Befehlen erstellt:

1. Der Code muss mit dem Tag ^ XA beginnen und mit ^ XZ enden.

2. Das ^ FX-Tag steht jedoch vor den Kommentaren.

3. ^ CF x, y, z - Standardschriftarteneinstellungen: die Schriftart selbst, Höhe und Breite;

4. ^ FO x, y - linker und oberer Einzug;

5. ^ FS - Zeilenende;

6. Sie können die Daten mit den angepassten Werten wie folgt anzeigen:

FD <Text>

Textblock:

FB <Breite>, <Anzahl der Zeilen>, <Leerzeichen zwischen Zeilen>, <Textausrichtung>, <Einzug für zweite oder nachfolgende Zeile>
<Textposition>:
L - linksbündig,
R - rechter Rand,
C - in der Mitte,
J - Dehnen Sie den Text auf die Breite des Feldes.

Rechtecke erstellen:

GB <Breite>, <Höhe>, <Liniengewicht>, <Linienfarbe>, <Eckenrundung>
Linienfarbe: B (schwarz) oder W (weiß)
Eckenrundungen werden durch einen Wert von 0 bis 8 angezeigt.

7. Barcode (und ZPL und Zebra-Drucker - direkt für Barcodes erstellt!) Bestehend aus drei Befehlen:
Barcode-Abmessungen (BY <Breite>, <Liniendickenverhältnis>, <Barcode-Höhe>);
seine Einstellungen:

BC <Orientierung>,
<Barcode-Höhe in Punkten>,
<ob die Entschlüsselung des Codes gedruckt werden soll>,
<Barcode-Decodierung>,
<Modus> <Orientierung> - N - normale Orientierung;
R - 90 Grad im Uhrzeigersinn;
I - 180 Grad;
B - 270 Grad;
<ob die Entschlüsselung des Codes gedruckt werden soll>,
<Decodierung des Codes über den Barcode> - Y (Ja) oder N (Nein) Werte; <Modus> - Standard N.

8. Die Ausgabe des Barcodes zum Drucken erfolgt über den Befehl - FD <Information>

Tatsächlich ist nicht alles so einfach, aber im Allgemeinen vermittelt es eine Vorstellung von der ZPL-Sprache.

Erstellung vom ZPL Code in Delphi / C++Builder / Lazarus

Sofort eine Frage - ist es möglich, nur ein normales Bild oder ein Dokument, das auf das Etikett zugeschnitten ist, aus einem Texteditor zu senden? Ja, einfach „auf Leinwand zeichnen und an den Drucker senden - der Treiber wird es selbst herausfinden“? Sie können senden, es wird gedruckt, es sieht oft sogar wie ein echtes aus. Das einzige Problem besteht darin, dass ZPL- und Zebra-Drucker in erster Linie dafür ausgelegt sind, maschinenlesbare, vektorskalierte Etiketten zu erstellen. Dies ist häufig der Fall, da die Schritte zur Rasterung und Bildskalierung im Programm und im Treiber nicht ausgeführt und vom Barcode-Scanner verstanden werden. Wenn Ihre Barcodes vom Scanner nicht erkannt werden, haben Sie meistens ein Problem mit einem gerasterten und skalierten Bild. Lassen Sie uns die ZPL aus unserer Delphi-Anwendung oder Lazarus-Anwendung richtig machen!

Wir verwenden FastReport VCL, das einen Report sofort im erforderlichen Format (Zebra Programming Language) gespeichert wird. Wir können jedoch mehr Möglichkeiten nutzen - Bilder, Tabellen und Barcodes zu Etiketten hinzufügen (und dies sind korrekte, maschinenlesbare Barcodes!). Es ist klar, dass es keinen Sinn macht, Fotos von Landschaften an einen „Zebradrucker“ zu senden, aber hier ist ein Bild wie das am Anfang des Artikels - warum nicht, wenn es auf unseren Etiketten angebracht ist!)

Es gibt zwei Möglichkeiten, den generierten Report zu speichern. Der erste wird über das Vorschaufenster gespeichert, der zweite direkt über den Pascal-Code.

Betrachten wir beide Optionen.

Wir setzen nicht nur die Komponenten aufs Formular, die wir benötigen, um einen Report zu erstellen, Datenquellen zu verbinden, sondern auch eine Komponente für den ZPL-Export!

Speichern Sie ZPL aus Delphi / RAD Studio Lazarus mit Vorschau

Der Vorteil der Methode ist, dass wir sehen, dass wir speichern, wir haben die Möglichkeit, in der Vorschau mit dem Ergebnis in der ZPL zu vergleichen. Und wir debuggen es auf unserem Computer und nicht des Kunden auf seiner Ausrüstung, wenn das Projekt fertig zu sein scheint.

ZPL

Wir erstellen das gewünschte Dokument.

Vor dem Speichern schauen wir in die Vorschau und korrigieren alles, was uns nicht gefallen hat.

Klicken Sie auf den Punkt "Speichern".

Wählen Sie "ZPL-Datei". Ich mache diesen Artikel mit fast allen angeschlossenen Exportfiltern. In Ihrem Fall (wenn Sie NUR den ZPL-Exportfilter angeschlossen haben) enthält dieses Menü keine weiteren Elemente (außer "Vorbereiteter Report").

 

ZPL

Wir haben ein Fenster mit den Exporteinstellungen für unsere Datei markiert.
Wir konfigurieren alles nach Bedarf und klicken auf "OK".

 

Weitere Informationen zu den Einstellungen:

Seitenbereich - Seitenspeicherbereich;
Exporteinstellungen:
- Als Bitmap drucken - Als Matrixbild drucken (NICHT für Barcodes tun);
- Linien brechen - Linien brechen;
- Auflösung (dpi) - Auflösung von 152 bis 600 dpi (tatsächlich gibt es eine Reihe von voreingestellten Werten, begrenzte Formate - wir können sie auswählen - sie sind unten im Code aufgeführt);
Speichern unter - Speichern als Datei auf einem PC, Senden per E-Mail oder im Cloud-Speicher;
Nach dem Export öffnen - nach dem Speichern öffnen.

Speichern von ZPL aus Delphi / C ++ Builder / Lazarus-Code.

Export in ZPL:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
procedure TForm1.Button18Click(Sender: TObject);
begin
 {Wir erstellen einen Report. Vor dem Export soll der Report erstellt werden}
 frxReport1.PrepareReport();
 {Wir bestimmen die Intervalle der exportierten Seiten. By Default werden alle Seiten des erstellten Reports exportiert.}
 frxZPLExport1.PageNumbers := '2-3';
 {Wir stellen fest, soll der Report als eine Abbildung exportiert werden}
 frxZPLExport1.PrintAsBitmap := True;
 {Wir stellen fest, brauchen wir die Folge die Symbolen am Ende jeder Seite oder nicht}
 frxZPLExport1.BreakLines := True;
 {Wir bestimmen die Auflösung. Mögliche Werte: d6_dpmm_152_dpi, d8_dpmm_203_dpi, d12_dpmm_300_dpi, d24_dpmm_600_dpi, test1to1}
 frxZPLExport1.ZplDensity := d6_dpmm_152_dpi;
 {Wir definieren, ob das Ergebnis nach dem Export geöffnet werden soll}
 frxZPLExport1.OpenAfterExport := False;
 {Wir bestimmen, ob die Progress Skala angezeigt wird (Anschauen die Nummer der exportierten Seite)}
 frxZPLExport1.ShowProgress := False;
 {Wir bestimmen, ob die Dialog Fenster mit Export Einstellungen angezeigt wird }
 frxZPLExport1.ShowDialog := False;
 {Wir definieren den Namen der Ergebnis-Datei. Merken Sie sich, dass wenn wir keinen Datei Namen bestimmen und die Anschau der Dialog Fenster deaktivieren, wird die Wahl des Datei Namen trotzdem angezeigt 
 frxZPLExport1.FileName := 'C:\Output\test.zpl';
 {Wir exportieren den Report}
 frxReport1.Export(frxZPLExport1);
end;

Wie Sie sehen können, ist das Erstellen und Drucken von Zebra-Etiketten in Delphi (in Windows-Anwendungen) und in Lazarus (Linux-Anwendungen) sehr einfach. Diese Methode wird in Millionen von Einzelhandelsgeschäften auf der ganzen Welt eingesetzt.

Fast Reports
  • 800-985-8986 (Englisch, die USA)
  • +4930568373928 (Deutsch)
  • +55 19 98147-8148 (Portugiesisch)
  • info@fast-report.com
  • 901 N Pitt Str #325 Alexandria VA 22314

© 1998-2024 Fast Reports Inc.
Trustpilot