Spis treści

Zebra lp2824


To taka słodka mała drukarka termiczna

https://github.com/cod3monk/zpl

programowanie w ZPL https://www.zebra.com/us/en/support-downloads/knowledge-articles/zpl-command-information-and-details.html

Instalacja

Pod CUPS przeklikać przez interfejs webowy. Powinien zostać wykryty jeden z kilku sterowników. Zebra obsługuje dwa protokoły, EPL2 oraz ZPL.

Konfiguracja

ZAPOMNIJ O KONFIGURACJI DO ZPL, BO TO NIE JEST WERSJA PLUS TEJ DRUKARKI ARGH!!!!

Zmiana trybu – ZPL to nowszy język, posiada dostęp do generowania kodów. Domyślnie drukarka przychodzi w trybie EPL2, starszego języka.

Defaults 203 dpi

Dostępny papier Zostanie utworzony plik .ppd który jest sterownikiem(?) konfiguracją drukarki. Dla wygody możemy wywalić etykiety podane w calach i podać normalne jednostki.

#!/bin/python3
"""#!/bin/python3
"""generate_page_sizes.py
MIT, 2020 not7cd
usage:
  echo "56x42\n38x69\n40x28\n32x20" | ./generate_page_sizes.py
"""
import sys

for line in sys.stdin:
    w, h = (int(n) for n in line.split("x"))
    pw, ph = (round(n*2.83446712) for n in (w, h))
    print(
        '*PageSize w{pw}h{ph}/{w}x{h}mm: "<</PageSize[{pw} {ph}]/ImagingBBox null>>setpagedevice"'
        .format(pw=pw, ph=ph, w=w, h=h)
    )

Paste inside /etc/cups/ppd/Zebra_LP2824.ppd

*PageSize w159h119/56x42mm: "<</PageSize[159 119]/ImagingBBox null>>setpagedevice"
*PageSize w108h196/38x69mm: "<</PageSize[108 196]/ImagingBBox null>>setpagedevice"
*PageSize w113h79/40x28mm: "<</PageSize[113 79]/ImagingBBox null>>setpagedevice"
*PageSize w91h57/32x20mm: "<</PageSize[91 57]/ImagingBBox null>>setpagedevice"

Komunikacja

lp -h 192.168.88.119:631 -d Zebra_LP2824 -o raw example.epl

Wysyłanie ustawień przy pomocy SGD nie za bardzo działa pod linuksem https://unix.stackexchange.com/questions/383792/how-to-send-sgd-commands-to-usb-printer

EPL2

example.epl https://support.zebra.com/cpws/docs/eltron/common/epl2_samp.htm

N
q812
S2
A50,0,0,1,1,1,N,"Example 1 0123456789"
A50,50,0,2,1,1,N,"Example 2 0123456789"
A50,100,0,3,1,1,N,"Example 3 0123456789"
A50,150,0,4,1,1,N,"Example 4 0123456789"
A50,200,0,5,1,1,N,"EXAMPLE 5 0123456789"
A50,300,0,3,2,2,R,"Example 6 0123456789"
LO25,600,750,20
B50,800,0,3,3,7,200,B,"998152-001"
P1

Więcej o samym EPL2 https://www.zebra.com/us/en/support-downloads/knowledge-articles/ait/epl2-command-information-and-details.html

ZPL

Najpierw trzeba przestawić frajera na tryb ZPL. Nie za bardzo wiem jak się dobrać do interfejsu. Możliwe, że trzeba strzelić tę komendę przez klienta windowsowego i zapomnieć o sprawie.

! U1 setvar "device.languages" "zpl"

Szufladki

https://gist.github.com/not7cd/592f8989c1cc0f1ee22b94ffd186664c

wygeneruj plik z labelkami które chcesz, 40 znaków maks, label per line\

cat labels.txt | python szufladki.py | lp -d Zebra_LP2824 -o raw