TradeSpecSizer.com
Unit system
Command Center
Instrument online

Thermal Label DPI & ZPL II Converter

Rescale label artwork between printer DPIs and transpile ZPL II label commands.

DPI Printhead Rescaler

Source printhead
Target printhead
in
in
Source @ 203 DPI812 × 1,218dots
Target @ 300 DPI1,200 × 1,800dots
AxisSource dotsTarget dotsInches
Width8121,2004.00
Height1,2181,8006.00

Roll & Ribbon Sizer

Core inner diameter
Roll outer diameter
in
in
labels
Labels per roll473labels
Roll media length241.7ft
Ribbon required73,658.3m
Matched ribbon roll450 mshort

Label Preview

1200 × 1800 dots @ 300 DPI
TRADESPECSIZER.COM0031234500000012344 × 6 in @ 300 DPI4 in · 1200 dots6 in · 1800 dots
8 ZPL commands · scale ×1.478No clipping

ZPL II Transpiler

10 commands rewritten
One-click templates
Transpiled output @ 300 DPI
^XA
^PW1200
^LL1800
^FO59,59^GB732,1138,3^FS
^FO89,89^A0N,42,42^FDGS1-128 PALLET LABEL^FS
^FO89,177^A0N,28,28^FDSSCC-18: 003123450000001234^FS
^FO89,251^BY3,2,120^BCN,120,Y,N,N^FD>;>80031234500000012345^FS
^FO89,502^A0N,24,24^FDSHIP TO: DISTRIBUTION CENTER 04^FS
^FO89,562^A0N,24,24^FDPO: 4500123456  QTY: 240 EA^FS
^FO89,650^GB712,2,2^FS
^FO89,695^A0N,22,22^FDGROSS WT: 182.4 KG   CASE COUNT: 12^FS
^XZ

Barcode Payload

Worked Formula

  1. Step 1Dots_target = round(Dots_src × DPI_target / DPI_src)Dots_target = round(812 × 300 / 203)Dots_target = 1,200 dots wide
  2. Step 2scale = DPI_target / DPI_srcscale = 300 / 203scale = ×1.478
  3. Step 3^PW = width × DPI_target^PW = 4 × 300^PW1,200
  4. Step 4L_roll = (π × (D² − d²)) / (4 × t)L_roll = (π × (5² − 1²)) / (4 × 0.0065)L_roll = 241.7 ft · 473 labels

DPI rescaling follows the Zebra ZPL II programming guide raster-scaling method; roll length uses the annular cross-section of the wound media.

Zebra ZPL II Programming Guide · thermal media roll geometry

Unscaled Overflow Check

Raster fitsThe 300 DPI head has enough dots to print the 203 DPI raster without clipping.

Rescale the artwork with the transpiler above before sending it to a lower-resolution printhead so no label content is cut off.