Skip to main content

PNG to ZPL

PNG is the best image you can bring to a thermal printer: lossless, sharp-edged, and — unlike JPEG — free of the compression noise that turns into speckle once a picture is reduced to black and white. LabelZoom scales your PNG to the label size and dpi you choose, resolves every pixel to a printed dot or a blank one, and wraps the result in a complete, print-ready ZPL label built around a ^GF graphic field.

Got a PDF instead? Use PDF to ZPL. Other images: JPEG, BMP, GIF, or any image.

Upload a label to convert

Drag and drop a PNG image here, or click to browse your computer.

Note on Watermarks: Free online conversions may include a LabelZoom watermark on rendered previews. Need to process high volumes directly from your WMS? Check out our REST API subscriptions

Transparent pixels become blank label — a logo on a transparent background prints clean.

Compressed ^GF output keeps the ZPL small and the printer fast.

Preview at printer resolution before you send a single label.

How to convert PNG to ZPL

  1. 1

    Upload your PNG above — a logo, a signature, artwork, or a label someone exported as an image. A ZIP of PNGs works too; each file becomes its own label.

  2. 2

    Click Quick Convert. Set the dpi and label size to match your printer: ZPL positions are in dots, so a label converted for 203 dpi prints at two-thirds size on a 300 dpi printer.

  3. 3

    Copy the ZPL into your template, download it, or send it straight to a connected printer. The preview shows exactly the dots the printer will burn.

Which image format converts to ZPL best?

Every format goes through the same pipeline — scale, threshold to black and white, encode as ^GF — but they arrive in different condition.

SourceEdges after black-and-white conversionTransparencyNotes
PNGCleanYesLossless; the best input for logos and line art
BMPCleanNoUncompressed; a 1-bit BMP is already printer dots
GIFCleanYes (1-bit)256-color palette; first frame of an animation is used
JPEGRinging becomes speckleNoLossy; fine for photos, poor for line art and barcodes
PDFCleann/aRendered at printer dpi from vectors; ideal for shipping labels
Start converting now

Frequently Asked Questions

Everything you need to know about turning PNG images into ZPL graphics.

What is ^GF, and why is the ZPL so much bigger than my PNG?
^GF is ZPL's Graphic Field: the image expressed as raw printer dots, one bit per dot, in hexadecimal. A 4 × 6 label at 203 dpi is 812 × 1218 dots — about 124 KB before compression, regardless of how simple the picture is. LabelZoom writes the field in ZPL's run-length compressed hex, so blank rows and long runs collapse to a few characters and a typical logo label comes out far smaller. The REST API can also emit Z64 (zlib + base64) if your printer firmware supports it.
How does the converter decide which pixels are black?
By luminance. Each pixel is compared against a threshold — dark pixels become printed dots, light ones stay blank — so anti-aliased edges and light grays are resolved to one side or the other. The REST API exposes the threshold as a darkness parameter and can dither grayscale artwork instead of thresholding it, which is what you want for photos and shaded logos.
Does PNG transparency work?
Yes. Transparent pixels are treated as background, so a logo with a transparent backdrop prints as the logo alone, not the logo in a black rectangle. Semi-transparent edges are resolved by the same threshold as everything else.
What size should my PNG be?
Ideally the label size at printer resolution: 812 × 1218 pixels for a 4 × 6 inch label at 203 dpi, or 1200 × 1800 at 300 dpi. The converter scales whatever you give it to the label size you choose, but scaling a small image up produces visible stair-stepping, and scaling a large one down can thin out fine lines. Export at the target size when you can.
Should I convert text and barcodes as an image?
Only when you have no choice. A barcode that has been rasterized, scaled and thresholded rarely keeps its bars at exact dot multiples, and scanners notice. If the label is yours to design, put text in ^A font fields and barcodes in ^B commands — our label designer does this for you — and reserve ^GF for logos, signatures and artwork.