Saltar al contenido

HTML / Javascript One Click Print (sin cuadros de diálogo)

Posteriormente a consultar especialistas en esta materia, programadores de deferentes áreas y profesores dimos con la solución al dilema y la plasmamos en este post.

Solución:

Terminé implementando una aplicación personalizada que funciona de manera muy similar al Nexus Mod Manager. Escribí una aplicación C# que registra un esquema de URI de aplicación personalizado. Así es como funciona:

  1. El usuario hace clic en “Imprimir” en el sitio web.
  2. El sitio web vincula al usuario a “CustomURL://Print/ID
  3. Windows inicia la aplicación a través del esquema uri personalizado.
  4. La aplicación se comunica con el servidor preconfigurado para confirmar la solicitud de impresión y, en mi caso, obtener el comando de impresión real.
  5. Luego, la aplicación usa la clase C# RawPrinterHelper para enviar comandos directamente a la impresora.

Este enfoque requería una descarga inicial por parte del usuario y un único mensaje de seguridad de Windows al iniciar la aplicación por primera vez. También implementé algo de magia de Javascript para que detecte si el trabajo de impresión se manejó o no. Si no fuera así, les pide que descarguen la aplicación.

Sé que esta es una respuesta tardía, pero aquí hay una solución que estoy usando. Solo lo he usado con IE y no lo he probado con ningún otro navegador.

Este golpe de impresión secundaria reemplaza efectivamente la función de impresión predeterminada.


Luego use la ventana de Javascript.print(); se vincula a un hipervínculo o un botón para ejecutar el comando de impresión.

Si desea imprimir automáticamente cuando se carga la página, coloque el código debajo cerca de la etiqueta.

 

Estoy escribiendo esta respuesta para el navegador Firefox.

  • Abrir archivo > Configuración de página

  • Deja todos los encabezados y pies de página en blanco

  • Establecer los márgenes a 0 (cero)

  • En la barra de direcciones de Firefox, escribe about:config

  • Buscar print.always_print_silent y haga doble clic en él

  • cambiarlo de false para true

    • Esto le permite omitir el cuadro emergente Imprimir que aparece, así como omitir el paso en el que debe hacer clic en Aceptar, imprimiendo automáticamente el comprobante del tamaño correcto.
  • Si print.always_print_silent no aparece

    • Haga clic derecho en un área en blanco de la ventana de preferencias

    • Seleccionar nuevo > Booleano

    • Introduzca “print.always_print_silent” como nombre (sin comillas)

    • Haga clic en Aceptar

    • Seleccione true por el valor

  • También es posible que desee comprobar lo que está en la lista para print.print_printer

    • Es posible que deba elegir Genérico/Solo texto (o cualquiera que sea el nombre de su impresora de recibos)

Al final de la post puedes encontrar las referencias de otros creadores, tú asimismo puedes mostrar el tuyo si dominas el tema.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *