DevAlejandre DevAlejandre Agenda gratis

Zebra · ZPL

Zebra ZPL: 7 errores comunes y cómo evitarlos

Antes de mandar a la ZT4xx: valida medidas, fuentes, QR, logos y variables. Aquí tienes los errores más frecuentes, con fixes concretos y ejemplos ZPL.

#Zebra #ZPL #Etiquetas

Tip rápido: define siempre el tamaño del medio y la resolución esperada antes de posicionar nada. Eso elimina 80% de los “se me cortó la etiqueta”.

1) Medidas y DPI

Define ancho/alto del material y resolución del equipo. Ejemplo: etiqueta 100×50 mm a 203 DPI (8 dpmm).

^XA
^MNY              ; Media handling (Tear-Off/Peel según tu equipo)
^PR5              ; Velocidad de impresión
^JMA              ; Derivado de calibración si aplica
^PW812            ; Print Width en dots (100 mm * 8 dpmm = 800 + margen; usa 812)
^LL406            ; Label Length en dots (50 mm * 8 = 400 + margen)
^XZ

Fórmula: dots = mm × dpmm. Para 300 DPI, usa 12 dpmm.

2) Fuentes disponibles

Usa fuentes nativas (A,B,0, etc.) o carga bitmap. Evita referenciar TTF que no existen en la impresora.

^FO20,20^A0N,30,30^FDProducto:^FS
^FO20,60^A0N,40,40^FDZX-445 Caja 12 pzas^FS

3) QR legible

Tamaño recomendado: mínimo 20–22 mm por lado en 203 DPI. Usa corrección de errores media/alta.

^FO560,20
^BQN,2,7          ; ^BQN, orientación (2=N), corrección (1-4), tamaño módulo (1-10)
^FDQA,OT-2025-000123|CANT=12|LOTE=AB45^FS

4) Logos bien posicionados (GRF)

Convierte tu PNG a GRF y súbelo a la impresora. Luego solo lo llamas por nombre.

  1. Convierte a GRF con una utilidad de Zebra (o web). Guarda como E:LOGO.GRF.
  2. Imprime con ^XG y posiciona con ^FO.
^FO20,330^XGE:LOGO.GRF,1,1^FS

5) Variables “hardcodeadas”

Evita cadenas fijas dentro del ZPL. Usa placeholders para sustituir desde tu sistema/PLC/Sheets.

^FO20,110^A0N,40,40^FD@PRODUCTO@^FS
^FO20,160^A0N,30,30^FDLOTE: @LOTE@^FS
^FO20,200^A0N,30,30^FDFECH: @FECHA@^FS

Si generas ZPL desde Google Sheets/Apps Script o n8n, sustituye @PRODUCTO@, @LOTE@ y @FECHA@ al vuelo antes de mandar al socket/driver.

6) Sin vista previa (usa Labelary)

Valida antes de imprimir. Con Labelary puedes renderizar por API. Ejemplo con curl (203 DPI, 100×50 mm):

curl -o preview.png \
  -H "Accept: image/png" \
  --data-binary "@etiqueta.zpl" \
  "http://api.labelary.com/v1/printers/8dpmm/labels/100x50/0/"

Si trabajas en Windows, puedes pegar el ZPL directo en su visor web y ajustar offsets hasta que quede perfecto.

7) Sin control de versiones

Versiona plantillas por cliente/orden y fecha. Agrega un ^FX con versión impresa para auditoría.

^FX v.2025-06-01 | Cliente ACME | OT-2025-000123

Plantilla ZPL mínima (100×50 mm @ 203 DPI)

^XA
^PW812^LL406
^CI28                ; UTF-8 si tu modelo lo soporta
^FO20,20^A0N,40,40^FD@PRODUCTO@^FS
^FO20,70^BY2,2,60^BCN,60,Y,N,N
^FD@UPC@^FS
^FO20,150^A0N,28,28^FDLOTE: @LOTE@^FS
^FO20,190^A0N,28,28^FDFECH: @FECHA@^FS
^FO560,20^BQN,2,7^FDQA,@QR@^FS
^FO20,330^XGE:LOGO.GRF,1,1^FS
^XZ

Checklist de validación (rápido)

¿Quieres que deje tus etiquetas listas con variables y vista previa?

Creo la plantilla ZPL, cargo logos, preparo sustitución de datos y un flujo de validación con Labelary. Ideal para PyME e industria en Querétaro.


← Volver al blog
Publicado: 3 octubre 2025 · Lectura 5–7 min