Tools/Convert/Image to ZPL

PDF to ZPL Converter

Turn a shipping label PDF into ZPL your thermal printer can print. Each page becomes one label, at 203 or 300 dpi, with a preview of the first label before you send it.

Choose a file

PDF works too: each page becomes one label at its own size — a 4×6 page becomes a 4×6 label. If the label sits in a corner of a Letter or A4 page, tick "find and crop the 4×6 label". Image to ZPL converter →

Settings

Advanced options

Thermal printers print 1-bit black and white. Dithering helps photos; plain logos are sharper with a threshold.

Choose a file — the result appears below.

Result

Printer preview

Graphic size:

Download the TSPL file (label.tspl) Binary file; send it straight to the printer (in BITMAP a 0 bit prints black).

ZPL output

How to convert a label PDF to ZPL

  1. Choose the PDF. Carrier labels from eBay, USPS, UPS or FedEx usually come as a 4×6 PDF; up to 5 MB is accepted.
  2. Pick the printer resolution. 203 dpi is the common desktop and shipping printer; 300 dpi printers need the 300 setting or the label prints at two-thirds size.
  3. Leave the page field empty to convert every page — each page becomes its own label, wrapped in ^XA…^XZ — or enter a page number to convert just that one.
  4. Press Convert. The preview shows the first label exactly as the printer will draw it, in 1-bit black and white.
  5. Copy the ZPL and send it to the printer the way you already do, or save it as a .zpl file.

When this is the right tool

When a label arrives as a PDF but the printer, the printing path or the app in between only understands ZPL — for example a ZPL-only printer, a raw port 9100 queue, or a warehouse system that forwards ZPL. The page is rasterised into a ^GF graphic, so the result prints the PDF as an image: barcodes keep the PDF's own resolution. If the carrier can send ZPL directly, ask for that instead — native barcodes scan more reliably than an image of a barcode.

Common problems

  • The label prints at two-thirds size. — The ZPL was made for 203 dpi and the printer is 300 dpi. Convert again with the 300 dpi setting.
  • My PDF is a Letter or A4 page with the label in one corner. — Tick the crop box: the page is scanned, the largest block closest to a 4×6 shape is taken as the label, redrawn from the PDF itself at your printer's resolution and turned upright if needed; the instruction text is left out. The region is found heuristically and the cropped box is shown on screen — if it is wrong, download the label as 4×6 from the carrier.
  • The barcode does not scan after conversion. — The barcode is an image at the PDF's resolution. Convert at the printer's real resolution, keep dithering off, and check the result with a scanner before a large run.
  • Only one page came out. — A page number was entered. Clear the page field to convert every page of the PDF.

Save your labels to your account and print them with DirectPrint — free account. Create free account

Do the same job from code

Same engine, same result: REST API, command line, or an AI assistant over MCP. Anonymous calls work; an API key raises the quota.

RESTcurl -X POST "https://api.labelixa.com/v1/graphics" -F [email protected]
MCPclaude mcp add --transport http labelixa https://api.labelixa.com/mcp # image_to_zpl

API reference · MCP setup