Convertir DPL a ZPL

Pega o importa tu código DPL de impresoras Datamax y obtén el ZPL equivalente al instante. Vista previa en tiempo real, descarga el ZPL y ábrelo en el editor visual.

Código DPL

Loading...

Conversor de DPL a ZPL: migra tus etiquetas Datamax al lenguaje Zebra

¿Qué es DPL y de dónde viene?

DPL (Datamax Programming Language) es el lenguaje de programación de etiquetas desarrollado por Datamax Corporation, empresa fundada en 1977 en Orlando, Florida, y especializada en impresoras industriales de etiquetas térmicas. A lo largo de los años noventa y dos mil, Datamax se consolidó como uno de los principales fabricantes mundiales de impresoras de etiquetas para logística, fabricación, sanidad y retail, compitiendo directamente con Zebra Technologies. En 2012, Honeywell International adquirió Datamax, que desde entonces opera bajo la marca Honeywell Datamax-O'Neil. Las series E-Class, M-Class, I-Class, W-Class y H-Class son las familias de impresoras más conocidas, todas ellas con DPL como lenguaje nativo.

DPL utiliza un formato de registro posicional muy compacto: cada campo de la etiqueta se define en una sola línea con 15 caracteres fijos que codifican la rotación, el tipo de elemento, los multiplicadores de tamaño, la altura del código de barras y la posición (columna y fila). A diferencia de otros lenguajes de etiquetas, las coordenadas en DPL se miden desde la esquina inferior izquierda de la etiqueta, mientras que ZPL las mide desde la esquina superior izquierda. Esta diferencia de origen de coordenadas es uno de los principales retos al convertir etiquetas DPL a ZPL.

Diferencias entre DPL y ZPL

Aunque DPL y ZPL persiguen el mismo objetivo —describir el contenido imprimible de una etiqueta térmica— tienen filosofías de diseño muy distintas. DPL es un lenguaje posicional y compacto: cada campo se define en una única línea de texto con longitud fija (15 caracteres antes de los datos), donde la posición de cada carácter determina el parámetro que representa. ZPL, en cambio, es un lenguaje orientado a comandos: usa secuencias como ^FO para fijar la posición, ^FD para el contenido, ^BC para un Code 128 o ^GB para una caja gráfica. Esta diferencia hace que el ZPL sea más legible y fácil de depurar a simple vista, mientras que DPL es más compacto.

Otra diferencia importante es el sistema de coordenadas: en DPL, la fila (row) se mide en puntos desde la parte inferior de la etiqueta, mientras que en ZPL la coordenada Y se mide desde la parte superior. Esto significa que al convertir, el conversor debe calcular la posición vertical de cada elemento restando la fila DPL a la altura total de la etiqueta. Además, ZPL ofrece un conjunto de funciones mucho más amplio: fuentes escalables, campos de datos variables, plantillas almacenadas en la impresora, impresión en color en modelos compatibles y una gestión avanzada de la memoria. DPL es suficiente para la mayoría de etiquetas estándar, pero ZPL permite un mayor control sobre cada detalle de la impresión.

¿Por qué migrar de DPL a ZPL?

El motivo más habitual para migrar de DPL a ZPL es el cambio de hardware: cuando una empresa sustituye sus impresoras Datamax por modelos modernos de Zebra (ZD200, ZD400, ZD600, ZT200, ZT400, ZT600), necesita convertir todas sus plantillas de etiquetas al formato ZPL que entienden de forma nativa las nuevas impresoras. Aunque algunos modelos Zebra admiten DPL en modo compatibilidad, este modo puede tener limitaciones en resolución, velocidad o funcionalidades avanzadas. Trabajar en ZPL nativo garantiza un aprovechamiento completo de las capacidades de la impresora.

Otro motivo frecuente es la integración con sistemas modernos. Las plataformas de gestión de almacenes (WMS), los ERP actuales y las soluciones de e-commerce suelen generar ZPL de forma nativa o incluyen librerías de generación de etiquetas ZPL. Si el sistema legacy de una empresa generaba DPL y se quiere integrar con herramientas más actuales, convertir las plantillas a ZPL es el camino más directo. Por último, ZPL cuenta con una comunidad y documentación mucho más amplia que DPL, lo que facilita el mantenimiento y la evolución de las plantillas a largo plazo.

Cómo funciona este conversor

El conversor lee el código DPL línea a línea e identifica dos tipos principales de contenido. Por un lado, los comandos de sistema: L (inicio de formato), E (fin e impresión), W (ancho de etiqueta en puntos), n (alto/longitud de etiqueta en puntos), y comandos de configuración de impresora (D para tamaño de punto, H para calor, S para velocidad) que se omiten en ZPL porque se gestionan de forma independiente. Por otro lado, los registros de campo: líneas de 15 caracteres fijos que codifican rotación, tipo (fuente 0–9 para texto, letra A–Z para código de barras o X para gráficos), multiplicadores de anchura y altura del módulo, altura del código de barras y coordenadas de posición.

Para cada registro de campo, el conversor calcula la posición ZPL invirtiendo el eje vertical (zpl_y = altura_etiqueta - fila_dpl - altura_elemento), mapea el tipo DPL al comando ZPL equivalente (por ejemplo, H→^BC para Code 128, A→^B3 para Code 39, I→^BE para EAN-13) y genera el bloque ZPL completo con ^FO, ^A0 o ^BY según el tipo. Todo el proceso ocurre en el navegador sin enviar ningún dato a servidores externos. Si el contenido supera el alto declarado de la etiqueta, el valor ^LL se amplía automáticamente con un aviso para que el resultado sea siempre imprimible.

Comandos DPL soportados

El conversor cubre los comandos DPL más habituales en entornos de producción: L (inicio de formato de etiqueta), E (fin e impresión), W (ancho en puntos), n (alto/longitud en puntos), D (tamaño de punto, omitido), H (calor, omitido), S (velocidad, omitido). Para los registros de campo, soporta texto con fuentes 0 a 7 (equivalentes aproximados en ZPL ^A0), los tipos de código de barras más comunes —H=Code 128, A/B/R=Code 39, I=EAN-13, L/U=UPC-A, D=EAN-8, F=2/5 Intercalado, C=Codabar, G=Code 93, Q=QR— y gráficos de tipo X con subtipo B (caja) y L/V (líneas horizontales y verticales). Las cuatro rotaciones (1=0°, 2=90°, 3=180°, 4=270°) se convierten correctamente a las orientaciones ZPL equivalentes.

Preguntas frecuentes

¿Qué es DPL y en qué se diferencia de ZPL?

DPL (Datamax Programming Language) es el lenguaje de impresión de etiquetas desarrollado por Datamax (ahora Honeywell Datamax-O'Neil) y utilizado en sus impresoras industriales. ZPL (Zebra Programming Language) es el equivalente de Zebra Technologies. Ambos describen el contenido de una etiqueta térmica, pero con sintaxis muy diferentes: DPL usa registros posicionales de 15 caracteres fijos con coordenadas desde la esquina inferior izquierda, mientras que ZPL usa comandos prefijados con ^ o ~ y coordenadas desde la esquina superior izquierda.

¿Qué impresoras Datamax usan DPL?

Las principales familias de impresoras Datamax-O'Neil que usan DPL como lenguaje nativo son: E-Class (E-4203, E-4204, E-4205, E-4206, E-4304, E-4305, E-4306), M-Class (M-4206, M-4208, M-4306, M-4308), I-Class (I-4206, I-4208, I-4212, I-4308, I-4310, I-4312), W-Class (W-6208, W-6308) y H-Class (H-4212, H-4310). Muchas de estas impresoras tienen años o décadas de uso en entornos industriales y su base instalada sigue siendo muy amplia.

¿Qué comandos DPL admite el conversor?

El conversor soporta: comandos de sistema L (inicio), E (fin/impresión), W (ancho), n (alto); registros de texto con fuentes 0–7 y los cuatro ángulos de rotación; códigos de barras H=Code 128, A/B/R=Code 39, I=EAN-13, L/U=UPC-A, D=EAN-8, F=2/5 Intercalado, C=Codabar, G=Code 93, Q=QR; y gráficos X con caja (B), línea horizontal (L) y línea vertical (V). Los comandos de configuración de impresora (D, H, S, I, P) se omiten sin error.

¿El ZPL generado funciona directamente en impresoras Zebra?

Sí, en la mayoría de casos. El ZPL generado sigue la sintaxis estándar de ZPL II y es compatible con toda la gama actual de impresoras Zebra (ZD200, ZD400, ZD600, ZT200, ZT400, ZT600 y toda la gama industrial). Antes de imprimir en producción, verifica la vista previa y ajusta si es necesario el DPI y el tamaño de etiqueta para que coincidan con tu impresora y el rollo que usas.

¿Por qué las posiciones de los elementos pueden aparecer desplazadas?

DPL mide la posición vertical (fila) desde la parte inferior de la etiqueta, mientras que ZPL la mide desde la parte superior. El conversor realiza la transformación automáticamente: zpl_y = altura_etiqueta - fila_dpl - altura_elemento. Si el alto de la etiqueta no está declarado en el DPL (sin comando n), el conversor no puede calcular esta inversión correctamente. Asegúrate de incluir siempre los comandos W (ancho) y n (alto) en tu código DPL para obtener los mejores resultados.

¿El conversor funciona sin conexión a internet?

Sí. La conversión se realiza completamente en tu navegador, sin enviar ningún dato a servidores externos. Una vez cargada la página, puedes usar el conversor aunque pierdas la conexión a internet. Tus etiquetas DPL nunca salen de tu dispositivo.