ZPL을 EPL2로 변환: 구형 Zebra/Eltron 데스크톱 프린터용 명령 대응표
LP/TLP 시리즈 등 EPL 전용 프린터를 위한 ZPL→EPL2 매핑, EPL2에 없는 기능, 변환 전후 예시.
EPL2는 구형 Eltron 및 Zebra 데스크톱 프린터(LP 2844, TLP 2844, EPL 모드의 GK/GX)의 언어입니다. 여전히 입고 도크와 약국 곳곳에 있으며 ZPL을 읽지 못합니다. 본사가 ZPL로 디자인하고 지점에 LP 프린터만 있다면 누군가는 EPL2 — 더 단순하고 줄 지향적이며 기능이 적은 언어 — 를 만들어야 합니다.
명령 대응표
| 작업 | ZPL | EPL2 |
|---|---|---|
| 시작 / 종료 | ^XA … ^XZ | N (버퍼 지우기) … P1 (인쇄) |
| 라벨 크기 | ^PW812 ^LL609 | q812 Q609,24 |
| 텍스트 | ^FO40,30 ^A0N,36,36 ^FDHello^FS | A40,30,0,4,1,1,N,"Hello" |
| Code 128 | ^BY2 ^BCN,90,Y,N,N ^FDdata^FS | B40,130,0,1,2,4,90,B,"data" |
| QR / 2D | ^BQN,2,6 ^FDQA,data^FS | b40,130,Q,m2,s6,"data" |
| 선 / 박스 | ^GB300,2,2^FS | LO40,120,300,2 / X40,120,2,340,300 |
| 매수 | ^PQ5 | P5 |
| 농도 / 속도 | ^MD10 ^PR3 | D10 S3 |
| 방향 | ^FWN / ^FWR | ZT (위) / ZB (아래) |
EPL2가 할 수 없는 것
- 스케일러블 폰트 없음: EPL2에는 정수 배율의 고정 폰트 5종(1~5)만 있습니다. 36도트 ZPL 제목은 정확한 크기가 아니라 가장 가까운 폰트 4 또는 5의 ×1 또는 ×2가 됩니다.
- 제한적인 2D 지원: QR, Data Matrix, PDF417, MaxiCode, Aztec은 b 명령으로 가능하지만 옵션이 적고, GS1 DataMatrix는 FNC1을 수동으로 처리해야 합니다.
- RFID 없음, ^SN 일련화 명령 없음. 카운터는 라벨마다 소프트웨어가 생성해야 합니다.
- 그래픽은 비트맵(GW)뿐이며 라벨마다 보내거나 GK/GM으로 저장해야 합니다. 큰 로고는 프린터를 눈에 띄게 느리게 만듭니다.
- 반전(검정 바탕에 흰색)은 폰트와 선에 한정됩니다. 복잡한 객체의 ^FR 필드 반전은 대응물이 없습니다.
변환 전후
^XA ^PW812 ^LL609 ^FO40,30 ^A0N,36,36 ^FDSafety Harness^FS ^FO40,130 ^BY2 ^BCN,90,Y,N,N ^FD7501234567893^FS ^PQ1 ^XZ
N q812 Q609,24 A40,30,0,4,1,1,N,"Safety Harness" B40,130,0,1,2,4,90,B,"7501234567893" P1
마이그레이션 체크리스트
- 각 템플릿이 사용하는 ZPL 기능을 목록화한다. 위 목록의 항목은 번역이 아니라 디자인 결정이 필요하다.
- 텍스트 폭을 테스트한다. EPL2 폰트는 더 넓어 ZPL에서 맞던 제품명이 줄바꿈되거나 잘릴 수 있다.
- 두 출력을 모두 라이브러리에 보관한다 — EPL2 프린터는 언젠가 교체되고 ZPL 버전이 남는다.
EtikStudio의 방식
중립 디자인은 인쇄 메트릭으로 고른 가장 가까운 폰트 크기, EPL2 문법으로 재구축하고 GS1용 FNC1을 처리한 바코드, 인쇄 엔진이 라벨마다 전개하는 카운터와 함께 EPL2로 내보내집니다. EPL2에 기능이 없으면 에디터는 객체를 조용히 버리는 대신 인쇄 전에 경고합니다.
명령 예시는 이해를 돕기 위해 단순화했습니다. 정확한 문법은 프린터 모델과 펌웨어에 따라 다르므로 항상 대상 프린터에서 테스트하세요.