ZPL을 CPCL로 변환: 공장 라벨을 Zebra 모바일 프린터로 (QL, ZQ 시리즈)
Zebra 휴대용 프린터용 ZPL→CPCL 명령 대응, 단위와 구조의 차이, 변환 전후 예시, 배송·현장 라벨에서 확인할 점.
CPCL은 Zebra 휴대용 프린터 — 배송 기사의 벨트나 지게차에 장착하는 QL, ZQ 시리즈 — 의 언어입니다. 많은 ZQ 모델은 ZPL도 받지만 구형 QL과 일부 구성은 CPCL만 사용하며, CPCL 작업은 더 작고 Bluetooth로 더 빠릅니다. 공장의 ZPL 디자인을 배송 경로에서 재사용하려면 번역이 필요합니다.
명령 대응표
| 작업 | ZPL | CPCL |
|---|---|---|
| 시작 / 종료 | ^XA … ^XZ | ! 0 200 200 <높이> <매수> … PRINT |
| 라벨 크기 | ^PW ^LL | PW <폭>, 높이는 ! 헤더에 (도트) |
| 텍스트 | ^FO40,30 ^A0N,36,36 ^FDHello^FS | TEXT 4 0 40 30 Hello (폰트, 크기, x, y) |
| 확대 텍스트 | ^A0N,60,60 | TEXT 앞에 SETMAG 2 2 (정수 배율) |
| Code 128 | ^BY2 ^BCN,90,Y,N,N ^FDdata^FS | BARCODE 128 2 1 90 40 130 data (가독 문자는 BARCODE-TEXT) |
| QR 코드 | ^BQN,2,6 ^FDQA,data^FS | BARCODE QR 40 130 M 2 U 6 … MA,data … ENDQR |
| 박스 / 선 | ^GB300,2,2^FS | BOX x0 y0 x1 y1 2 / LINE x0 y0 x1 y1 2 |
| 매수 | ^PQ3 | ! 헤더의 마지막 숫자, 또는 PRINT 반복 |
| 농도 / 속도 | ^MD ^PR | TONE 15 SPEED 3 |
실제로 바뀌는 것
- 헤더: ! 줄은 가로·세로 해상도(203 dpi면 200 200), 라벨 높이, 매수를 처음에 고정합니다. ZPL은 인쇄 전 어디서든 크기를 선언합니다.
- 매개변수 순서: CPCL TEXT는 좌표 앞에 폰트와 크기를 두고 문자열을 따옴표 없이 마지막에 둡니다. 순서를 틀리면 텍스트가 (0,0)에 찍힙니다.
- 폰트: CPCL 폰트는 SETMAG 정수 배율의 번호 붙은 비트맵입니다. ZPL의 임의 ^A0 크기는 가장 가까운 배율로 반올림됩니다. 모바일 라벨은 작으므로 반올림이 2~3인치 폭을 넘지 않는지 확인하세요.
- 바코드 텍스트: CPCL은 바코드 앞에 BARCODE-TEXT가 선언된 경우에만 가독 라인을 인쇄합니다. ZPL의 Y 플래그는 이 명령 쌍으로 번역해야 합니다.
- 배터리와 용지: CPCL 작업은 Bluetooth로 배터리 프린터에 전송됩니다. 그래픽을 최소화하고 프린터 내장 로고를 우선하세요.
변환 전후
^XA ^PW576 ^LL400 ^FO20,20 ^A0N,30,30 ^FDSJD-4587-22^FS ^FO20,60 ^A0N,20,20 ^FDDestination: Madrid^FS ^FO20,110 ^BY2 ^BCN,80,Y,N,N ^FDSJD458722^FS ^PQ1 ^XZ
! 0 200 200 400 1 PW 576 TEXT 4 0 20 20 SJD-4587-22 TEXT 7 0 20 60 Destination: Madrid BARCODE-TEXT 7 0 5 BARCODE 128 2 1 80 20 110 SJD458722 BARCODE-TEXT OFF PRINT
EtikStudio의 방식
모바일 프린터 프로필을 선택하면 같은 디자인이 라벨 크기에서 계산한 헤더, 텍스트가 넘칠 경우 경고와 함께 SETMAG 값으로 반올림한 폰트, BARCODE-TEXT로 감싼 바코드 가독 문자를 포함한 CPCL로 내보내집니다. 모바일 앱에서 기사는 커넥터를 통해 QL/ZQ 프린터로 라벨을 보내고, 공장은 동일한 디자인에서 ZPL을 계속 인쇄합니다.
명령 예시는 이해를 돕기 위해 단순화했습니다. 정확한 문법은 프린터 모델과 펌웨어에 따라 다르므로 항상 대상 프린터에서 테스트하세요.