9

Is it possible to convert EPL and ZPL (thermal printer languages) to common format (it could be vector grapic file like SVG)?

It will be great if I could convert from commont format to ZPL or EPL.

Jacek
  • 11,661
  • 23
  • 69
  • 123
  • 2
    I am currently implementing the other direction: from SVG to EPL. This gives a nicer abstraction and can be reused with different printer languages. Please see: https://github.com/dittodhole/dotnet-System.Svg.Render.EPL –  May 15 '16 at 16:31
  • How are you going to solve the coordinate mapping problem when converting a precise printer commands to any code on higher language like SVG? Such conversions can break barcodes, at least, so that they will not be recognized by scanners. Take a look on that problem with PostScript at [bugs.ghostscript.com](https://bugs.ghostscript.com/show_bug.cgi?id=696758#c17) due to its "pixel covering" rule and [the solution in PostScript too](https://bwipp.terryburton.co.uk/). I faced with unrecognizable Code-128 barcodes printed from PDF via Ghostscript due to that rule, then used TSPL to avoid it. – Aleksey F. Oct 17 '21 at 22:10

3 Answers3

8

If you do any amount of work with Zebra thermal printers, get a design tool. The FREE ZebraDesigner2 software will do. This way you can export your printer based on whatever printer driver you have selected (EPL/ZPL/CPCL). If you need to export code for non-Zebra printers (Sato, Datamax, Intermec) look at NiceLabel

Once you have ZebraDesigner installed and driver selected, create a new port mapped to a location on your hard drive with write privileges. Then print the label and the driver will create a txt file with the printer code.

Use the printer code in your application as needed.

enter image description here

Elton Saunders
  • 1,238
  • 1
  • 12
  • 23
0

Not really, but I have sent WordPad docs (not WORD or .txt) to the printer and let the print driver do the work. I think I even was able to change a plain old .txt file extension to .rtf and gotten it to print sending it to the printer (copy file to UNC share path of printer). Not sure that is exactly what you were asking but I hope it helps. Sometimes you just gotta play with these zebras and see what they will do.

Yosem
  • 4,685
  • 3
  • 22
  • 29
0

If you are using linux, you can install rastertoezpl CUPS Printer Driver, so you can print any raster image (jpg, png, bmp etc., possible non image filetypes too) via thermal transfer printer.

Quick installation guide (possible I've omitted something):

tar xzf rastertoezpl-1.0.6.tar.gz
cd rastertoezpl-1.0.6
sudo aptitude install libcupsppdc1-dev libcupsimage2-dev libcupsfilters-dev libcups2-dev cups-ppdc cups checkinstall gcc checkinstall
sudo ./configure
sudo checkinstall
    press '10' (Required) -> cups, cups-ppdc, libcups2, libcupsimage2, libcupsppdc1, libcupsfilters1

Then you have to setup the printer in localhost:631/printers/

Verbose installation guide for Ubuntu (russian)

Works fine for me, now I'm looking for .ezp -> raster converter...

Mikhail
  • 71
  • 8