Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

313
Vistas
Cambiar la página de códigos con ESC/POS en la impresora Birch

Estoy usando la herramienta QZ Tray para enviar datos sin procesar a la impresora térmica usando los comandos ESC/POS. Este es el código que estoy usando y funciona como se esperaba en la mayoría de las impresoras:

 data = [ "\x1b\x40", "\x1b\x74\x49", // ESC t 73 - switch to Windows-1251 text + "\r\n", "\x1B\x74\x48", // ESC t 72 - switch to Windows-1250 text + "\r\n", ]; let config = qz.configs.create('printer_name', { encoding: 'windows-1251' }); qz.print(config, print_data).catch(function(e) { console.error(e); });

Los problemas que tengo son con la impresora Birch CP-Q3. Esta impresora no parece ejecutar el comando ESC tn si n es mayor que 33. Así, no reconoce esas páginas de códigos. El comando ESC tn funciona bien si n es menor que 33.

Lo más extraño es que puedo cambiar la página de códigos a 73, por ejemplo, usando la herramienta de impresora, pero no se puede hacer usando los comandos ESC/POS. La autocomprobación de la impresora también contiene esas páginas de códigos.

¿Hay algún comando que deba ejecutar antes de cambiar la página de códigos o una configuración de impresora que pueda cambiar para que se puedan usar las páginas de códigos extendidas?

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Envié un correo electrónico al soporte de Birch-POS y dicen lo siguiente:

Sugiera al cliente que use el comando \x1F\x1B\x1F\xFF\x49 para establecer la página de códigos en Windows-1251.

Lo que coincide con el comentario de wireshark de OP, citando:

Usando wireshark logré obtener el siguiente volcado HEX al configurar la página de códigos 73 usando la herramienta de impresora: 1f 1b 1f ff 49 ...

Desafortunadamente, a JavaScript (específicamente, UTF-8) no le gustan ciertas secuencias de escape sobre x7F .

El código de trabajo debería verse así:

 var text = 'Привет мир'; // Use QZ's hex mode, which can workaround JavaScript not allowing certain hex values var data = [ { type: 'raw', format: 'command' flavor: 'hex', data: 'x1Fx1Bx1FxFFx49', // Instruct Birch POS: Windows-1251 // data: 'x1Fx1Bx1FxFFx48', // Instruct Birch POS: Windows-1250 }, text + '\r\n' ]; // Tell Java to use a strict 8-bit encoding var config = qz.configs.create('printer_name', { encoding: 'ISO-8859-1' }); qz.print(config, print_data).catch(function(e) { console.error(e); });
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda