DPL vs ZPL : langages Datamax et Zebra et conversion
Votre étiquette Datamax fonctionnait depuis des années, mais la Zebra de remplacement l’ignore ou imprime les commandes comme du texte. DPL et ZPL décrivent des étiquettes similaires avec des instructions différentes. Voici comment identifier le langage et aborder la conversion de Datamax vers Zebra.

Qu’est-ce que ZPL ?
ZPL signifie Zebra Programming Language. Les formats ZPL II commencent généralement par ^XA et finissent par ^XZ, avec ^FO pour la position et ^FD pour les données. Ces langages décrivent le contenu, sans déterminer papier, connexion ou résolution. USB et Ethernet peuvent transporter le même langage. Remplacer le câble ne traduit pas les instructions et n’adapte pas le dessin au nouvel appareil.
Qu’est-ce que DPL ?
DPL signifie Datamax Programming Language, le langage d’étiquettes associé à Datamax et Datamax-O’Neil. Honeywell a acquis Datamax-O’Neil en 2015 et publie la documentation DPL des appareils compatibles. DPL décrit texte, codes-barres et graphiques sur les étiquettes et reçus ; ici, « codes DPL » désigne les instructions de l’imprimante.
Les principales différences
DPL utilise des caractères de contrôle et des enregistrements à champs positionnels ; ZPL utilise notamment ^FO et ^FD. Ces instructions ne sont pas interchangeables. Une liaison USB ou réseau transporte le travail sans traduire le langage, et les mêmes nombres ne représentent pas forcément les mêmes positions physiques.
La compatibilité dépend du modèle, du firmware et du mode actif. Certains appareils proposent une émulation : vérifiez la configuration avant de convertir. Le passage de Datamax à Honeywell ne signifie pas que toute Honeywell accepte toutes les commandes DPL, ni qu’une Zebra comprend automatiquement un travail Datamax.
| Caractéristique | DPL | ZPL / ZPL II |
|---|---|---|
| Nom complet | Datamax Programming Language | Zebra Programming Language (ZPL / ZPL II) |
| Fabricant | Datamax / Datamax-O’Neil → Honeywell | Zebra Technologies |
| Syntaxe / exemple de commande | <STX>L … E | ^FO30,30^A0N,24,16^FDHELLO^FS |
| Statut | Langage Datamax documenté pour certains appareils | Famille documentée par Zebra ; prise en charge ZPL II selon le modèle |
| Usage courant | Étiquettes sur Datamax et appareils compatibles DPL | Étiquettes sur Zebra et appareils avec émulation ZPL |
| Début du fichier | Souvent <STX>L pour entrer en mode format ; réglages possibles avant | Format d’étiquette : ^XA … ^XZ (préfixes habituels) |
Comment identifier votre langage
Ouvrez une copie dans un éditeur affichant les caractères de contrôle. DPL entre souvent en mode format avec <STX>L et imprime le format avec E. STX est l’octet de contrôle 0x02, pas les cinq caractères visibles <STX>. Des commandes système peuvent précéder le format. En ZPL, recherchez ^XA … ^XZ et des champs comme ^FO et ^FD.
Repérez les enregistrements à positions fixes après le début DPL, sans vous fier seulement à .dpl, .prn ou .txt. Consultez rapport de configuration, utilitaire et manuel du modèle pour connaître les langages et l’émulation active. Vérifiez aussi ce qu’envoie le logiciel ou le pilote : langage du fichier et mode de l’imprimante sont deux questions distinctes.
Si le code est imprimé comme du texte, le langage ou le circuit d’impression peut être incorrect. Un éditeur de texte ou un pilote peut aussi dessiner les commandes comme du texte ordinaire au lieu de les transmettre comme instructions directes.
L’imprimante imprime du code ou des caractères illisibles : diagnostic
Comment convertir DPL en ZPL
Conservez le fichier DPL et une impression correcte de référence. Vérifiez d’abord si votre logiciel exporte directement du ZPL. Sinon, ouvrez le convertisseur, collez ou importez une étiquette complète et comparez le ZPL généré et son aperçu avec la référence. Téléchargez le résultat après avoir vérifié tous les champs.
Le convertisseur actuel traduit une partie des enregistrements de texte, codes-barres et formes simples. Il approxime les polices, ignore la quantité Q et de nombreux réglages et ne reproduit pas un programme complet ou les ressources téléchargées. Il suppose des coordonnées simplifiées en points sans interpréter tous les modes DPL d’unités et de position. L’absence d’avertissements ne garantit pas la fidélité.
Ouvrir le convertisseur DPL vers ZPLL’outil affiche le ZPL généré ; ce n’est pas un émulateur Datamax complet. Il accepte le véritable STX ou la notation visible <STX> et attend des enregistrements séparés par des sauts de ligne. Si le fichier utilise seulement des retours chariot, normalisez une copie en CRLF ou LF avant de la coller, en conservant l’original.
Vérifier avant d’imprimer un lot
Comparez dimensions, positions, rotations, accents, polices et logos. Il faut rapprocher les unités DPL des points ZPL ; changer les DPI de l’aperçu ne redimensionne pas toutes les coordonnées. Vérifiez la symbologie et les données décodées des codes-barres. Reconstruisez les éléments non pris en charge dans l’éditeur ZPL si nécessaire.
Imprimez une étiquette sur l’appareil cible avec le support réel. Mesurez-la, scannez ses codes et vérifiez la quantité. Les graphiques stockés, les réglages et la logique de données variables peuvent nécessiter un travail séparé. Ces contrôles ne constituent pas une affirmation de tests sur votre matériel.
Questions fréquentes
ZPL est-il meilleur que DPL ?
Aucun n’est meilleur dans tous les cas. Les deux décrivent des étiquettes ; l’essentiel est de produire les commandes acceptées par l’appareil cible. La conversion aide à passer de Datamax à un flux exigeant du ZPL.
Peut-on convertir DPL en ZPL ?
Oui, pour les enregistrements pris en charge. Utilisez le résultat comme point de départ et vérifiez coordonnées, unités, polices, codes-barres et ressources omises. Renommer un fichier DPL ne le convertit pas.
Comment savoir quel langage utilise mon imprimante ?
Consultez le manuel du modèle exact, le rapport de configuration et l’utilitaire du fabricant pour connaître les langages et l’émulation active. Vérifiez aussi le fichier et la sortie du logiciel : une imprimante peut accepter plusieurs langages.
Pourquoi mon imprimante imprime-t-elle le code comme du texte ?
En général, le travail est arrivé à l'imprimante sous forme de texte brut au lieu de commandes directes : souvent envoyé depuis un éditeur de texte ou via un mauvais pilote ou port. Envoyez le DPL (ou le ZPL converti) en flux brut vers une imprimante réglée sur ce langage.
Guides associés
Références officielles
À propos de l'auteur
Eduard Diaz
Eduard Diaz est technicien IT (développement) chez S-IE, un partenaire officiel Zebra avec plus de 20 ans de services d'identification et d'étiquetage. Il développe et maintient EditorZPL pour faciliter le travail avec le ZPL et les imprimantes d'étiquettes Zebra.
s-ie.cat