Conversion de langages d'imprimante
Convertir DPL en ZPL : retirer les imprimantes Datamax-O'Neil au profit de Zebra
Comment les étiquettes DPL de Datamax, fondées sur des enregistrements, se traduisent en ZPL, les différences d'unités et de structure, un exemple commenté et une liste de contrôle pour remplacer les I-Class et M-Class héritées.
Les imprimantes Datamax-O'Neil (aujourd'hui chez Honeywell) ont fait tourner les entrepôts pendant deux décennies, et leurs travaux DPL dorment encore dans des programmes d'impression ERP écrits quand la I-Class était neuve. Quand ces imprimantes sont remplacées par des Zebra ZT, les flux DPL doivent devenir du ZPL. DPL est inhabituel : au lieu de commandes à paramètres nommés, il utilise des enregistrements numériques à largeur fixe, compacts à envoyer et pénibles à lire.
Équivalences de commandes
| Opération | DPL (Datamax-O'Neil) | ZPL (Zebra) |
|---|---|---|
| Début / fin | <STX>L … E (L ouvre le format, E l'imprime) | ^XA … ^XZ |
| Unités | <STX>n = pouces (1/100 in), <STX>m = métrique (1/10 mm) | points |
| Texte | Enregistrement : rotation, police, largeur×, hauteur×, taille, ligne, colonne, données → 1911A030050 0020Bonjour | ^FO40,30 ^A0N,36,36 ^FDBonjour^FS |
| Code 128 | Enregistrement : rotation, symbologie E, large, étroite, hauteur, ligne, colonne, données → 1E2209000650020données | ^BY2 ^BCN,90,Y,N,N ^FDdonnées^FS |
| Lignes / cadres | Enregistrement de type X avec l (ligne) ou b (cadre) et dimensions | ^GB300,2,2^FS |
| Copies | Q0005 dans le format | ^PQ5 |
| Noirceur / vitesse | Enregistrements H15 (chaleur) / P (vitesse) | ^MD10 ^PR4 |
Ce qui change réellement
- Unités : les positions DPL sont en centièmes de pouce (ou dixièmes de millimètre en mode métrique), pas en points. La ligne 0050 en mode pouces vaut 0,50 in = 101 points à 203 dpi. Chaque coordonnée doit être convertie, et le mode de l'imprimante (<STX>n ou <STX>m) doit être lu d'abord, sinon tout se retrouve au mauvais endroit.
- Ordre ligne/colonne : les enregistrements DPL placent la ligne (verticale) avant la colonne (horizontale) ; le ^FO de ZPL est x puis y. Les inverser est l'erreur de traduction la plus courante.
- Polices : les polices internes DPL 0–8 sont des bitmaps à multiplicateurs entiers ; la police 9 sélectionne des polices lissées (vectorielles) par un code tel que A03. Associez les bitmaps à ^A0 par hauteur mesurée.
- Codes-barres : DPL encode la symbologie par une seule lettre (A Code 39, B UPC-A, E Code 128, F EAN-13, …) avec des chiffres de barre large et étroite ; ZPL utilise des commandes ^B plus ^BY. La hauteur DPL est dans l'enregistrement ; la ligne lisible dépend de la casse de la lettre de symbologie, pas d'un indicateur.
- Graphiques : DPL télécharge les images avec <STX>I… ; convertissez-les une fois en ^GF ou en graphiques stockés ^DG.
Avant et après (simplifié)
<STX>n <STX>L D11 1911A030050 0020Safety Harness 1E2209000650020 7501234567893 Q0001 E
^XA ^PW812 ^LL609 ^FO40,101 ^A0N,36,36 ^FDSafety Harness^FS ^FO40,132 ^BY2 ^BCN,90,Y,N,N ^FD7501234567893^FS ^PQ1 ^XZ
Les lignes 0050 et 0065 en centièmes de pouce sont devenues 101 et 132 points ; la colonne 0020 est devenue x = 40. Les champs de l'enregistrement ont été dépliés en paramètres ZPL nommés.
Liste de contrôle de migration
- Capturer de vrais travaux DPL depuis le spool de l'ERP plutôt que d'anciens fichiers de conception — c'est le spool qui a réellement été imprimé.
- Confirmer le mode d'unités et la résolution de l'imprimante d'origine (I-Class 203 ou 300 dpi) avant de convertir les coordonnées.
- Vérifier chaque code-barres sur la Zebra : les chiffres de barre étroite DPL ne correspondent pas un pour un à ^BY.
- Identifier les champs d'enregistrement que l'ERP remplit dynamiquement ; ils deviennent les champs variables du nouveau modèle.
Comment EtikStudio procède
L'interpréteur DPL lit le mode d'unités, déplie chaque enregistrement en position, police, taille et données, et rend l'étiquette en millimètres. L'export vers un profil Zebra produit du ZPL aux coordonnées converties et aux codes-barres reconstruits ; les champs que l'ERP remplissait deviennent des variables reliées aux mêmes données.
Les exemples de commandes sont simplifiés pour la clarté ; la syntaxe exacte varie selon le modèle et le firmware. Testez toujours sur l'imprimante cible.