printing - software - zebra printer support
Zebra ImpresiĆ³n con CUPS sin impresiĆ³n ZPL o EPL (6)
Soy un chico de PC, así que no conozco bien CUPS, pero he usado zpl y epl en PC y descubrí que realmente les gusta obtener los archivos de impresión en bruto. Siempre hago un comando de tipo: filecopy "c: / zplfile.txt" "/ computername / printershare". También he usado el WordPad, si solo quiero hacer algo de texto. Pero para las etiquetas y los códigos de barras, vería si hay una forma de enviar la raw zpl o epl al puerto de la impresora. Espero que esto ayude.
Tengo un Zebra GK420d conectado a OS X vía CUPS. Sin embargo, cuando envío archivos escritos en ZPL o EPL, solo se imprimen en texto plano.
¿Tengo que cambiar al modo en la impresora?
Puede crear una cola CUPS sin procesar con lpadmin. Aquí está la línea de comando que utilicé:
lpadmin -p Zebra -E -v usb://Zebra%20Technologies/ZTC%20LP%202824%20Plus?serial=XXXXXX -m raw
También puede configurar una cola sin procesar usando el administrador web de CUPS en
http://127.0.0.1:631/
Debería evitar cualquier filtrado. Imprima usando un filtro RAW, como se configura en la interfaz CUPS, o de forma predeterminada en su instrucción lpadmin
. No socket://ip.addr.ess:9100
cómo se conectó la impresora, pero si es IP, lo más probable es que su destino sea socket://ip.addr.ess:9100
.
Contrariamente a lo que otros dijeron, no es necesario agregar especialmente una cola sin formato.
En su lugar, puede enviar archivos sin formato a cualquier cola utilizando -o raw
interruptor sin formato:
lpr -P CupsPrinterName -o raw path/to/label.zpl
El nombre de la impresora se puede encontrar sobre ese enlace en CUPS:
http://localhost:631/printers/
Esto también funciona en otras plataformas que usan CUPS, como Linux.
Esta es una respuesta un poco más completa ya que parece que estoy volviendo a esta pregunta cada dos años. Para imprimir con una impresora Zebra u otras impresoras de código de barras en Linux desde la línea de comandos, siga estos pasos:
Enumere todos los destinos de la impresora y encuentre la impresora que quiere usar:
$ lpinfo -v
network https
serial serial:/dev/ttyS0?baud=115200
serial serial:/dev/ttyS1?baud=115200
network lpd
direct hp
direct usb://GODEX/G500?serial=162203C6
network smb
...
Agregar nueva cola:
$ lpadmin -p godex -E -v usb://GODEX/G500?serial=162203C6 -m raw -o usb-unidir-default=true
Si la impresión es lenta (tarda mucho en comenzar), asegúrese de haber agregado -o usb-unidir-default = true.
Verificar colas disponibles:
$ lpstat -v
device for godex: usb://GODEX/G500?serial=162203C6
Crear una etiqueta (archivo de texto):
Cree un archivo de acuerdo con los requisitos de su impresora en EPL (Zebra), ZPL (Zebra), EZPL (Godex).
Advertencia, ciertas versiones de CUPS pueden tener un problema con los archivos sin procesar si tienen menos de 512 bytes de longitud; los archivos más largos se imprimirán, mientras que los más cortos se imprimirán una vez y luego se detendrán durante unos minutos (parece que hay un tiempo de espera integrado). Una solución alternativa es agregar comentarios para ampliarlo en un límite de 512 bytes.
Ejemplo de archivo Zebra (test.epl):
N
A20,20,0,2,1,1,N,"text"
B20,40,0,1,1,1,30,N,"aaaa-bbbb-cccc"
P1
Ejemplo de archivo Godex (test.ezpl):
;set portrait orientation
^XSET,ROTATION,0
;set height 20mm
^Q20,1
;set width 64mm
^W64
;start label
^L
;AA=print out text with smallest font, x=20dots, y=20dots, magnificationx=0, magnificationy=0, gap=1dot, rotationInverse=0 (no)
AA,20,20,0,0,1,0,Some sample text
;BQ=code128, x=20dots,y=40dots,narrow_bar_width=1,wide_bar_width:2,height=30dots,rotation=0deg,readable=0(no)
BQ,20,40,1,2,30,0,0,1234-1243-43214-432141
;end label
E
Empujar a la impresora:
$ lpr -P godex test.ezpl
Gracias. Lo he visto un poco más. Parece que al usar tazas no puede enviar comandos ZPL sin formato a la impresora. Al igual que lo que hice fue crear la impresora en copas como un zócalo e inicié un oyente netcat en 9100 y luego emití algún tipo de comando a la impresora
nc -l localhost 9100
zpl_mine="^XA ~SD10 ^PW 850 ^MM T ^MN W ^JUS ^XZ,";echo $zpl_mine | nc localhost 9100 -w 1
y esto no envía la información a la impresora, pero he visto en algunos foros que debes usar alguna forma de lenguaje como C para analizar la información