browser - seleccionar - imprimir sin cuadro de dialogo chrome
Imprimir directamente desde el navegador sin ventana emergente de impresiĆ³n (7)
No pude encontrar la solución para otros navegadores. Cuando publiqué esta pregunta, IE estaba en la más alta prioridad y con mucho gusto encontré uno para ello. Si tiene una solución para otros navegadores (firefox, safari, ópera), por favor, comparta aquí. Gracias.
VBSCRIPT es mucho más conveniente que crear un ActiveX en VB6 o C # / VB.NET:
<script language=''VBScript''>
Sub Print()
OLECMDID_PRINT = 6
OLECMDEXECOPT_DONTPROMPTUSER = 2
OLECMDEXECOPT_PROMPTUSER = 1
call WB.ExecWB(OLECMDID_PRINT, OLECMDEXECOPT_DONTPROMPTUSER,1)
End Sub
document.write "<object ID=''WB'' WIDTH=0 HEIGHT=0 CLASSID=''CLSID:8856F961-340A-11D0-A96B-00C04FD705A2''></object>"
</script>
Ahora, llamando:
<a href="javascript:window.print();">Print</a>
enviará impresión sin ventana de impresión emergente.
Esta pregunta ya tiene una respuesta aquí:
- Imprimir automáticamente la imagen del sitio web 9 respuestas
Como decía en el tema, tengo que crear una función para una aplicación basada en la web que permita a los usuarios enviar impresiones directamente sin solicitar ningún cuadro de diálogo, simplemente haga que la impresión, es decir, hacer clic e imprimir, ¡sea simple! pero no para mí :(.
Por favor, sugiera cuál sería la mejor opción y cómo debería escribirla (tecnología).
Sugerir por favor!
Gracias.
EDITAR: la impresión debe enviarse en la impresora predeterminada del usuario.
this.print (falso);
Intenté esto en Chrome, Firefox e IE. Funciona solo en Firefox e IE, usa la impresora predeterminada (con la configuración de impresión predeterminada) y solo funciona cuando renderizo un PDF (uso Foxit Reader con el Modo de lectura segura deshabilitado). Chrome muestra el diálogo de impresión, también los otros navegadores cuando renderizo una página HTML.
AttendStar creó un complemento gratuito que suprime el cuadro de diálogo de impresión y elimina todos los encabezados y pies de página de la mayoría de las versiones de Firefox.
https://addons.mozilla.org/en-US/firefox/addon/attendprint/
Con esa función, puede usar $ (''img''). Jqprint (); y jqprint para jquery solo imprimirá esa imagen llamada automáticamente desde su aplicación web.
Esto debería funcionar, lo intenté por mí mismo y funcionó para mí. Si pasa True en lugar de false, aparecerá el cuadro de diálogo de impresión.
this.print(false);
IE9 ya no admite la activación de Print () VBScript llamando a window.print () como lo hacen IE7 e IE8, y así window.print () ahora siempre activará el diálogo de impresión en IE9.
La solución es bastante simple. Solo necesita llamar a Print (), en lugar de window.print () en el evento onclick.
Describí la corrección con más detalle en una respuesta a otra pregunta, con un ejemplo de código de trabajo que muestra una sintaxis HTML ligeramente actualizada (tanto como sea posible mientras se prueba como código de trabajo).
Puede encontrar ese código de muestra aquí:
No creo que esto sea posible. El cuadro de diálogo que se muestra le permite al usuario seleccionar una impresora para imprimir. Entonces, digamos que su aplicación solo podría hacer clic e imprimir, y un usuario hace clic en su botón de impresión, pero tiene dos impresoras conectadas a la computadora. O, más probablemente, ese usuario esté trabajando en un edificio de oficinas con 25 impresoras. Sin ese cuadro de diálogo, ¿cómo sabe la computadora a qué impresora imprimir?
Para los navegadores IE, la "solución VBScript" funciona.
Pero como lo mencionó @purefusion en Bypass Printdialog en IE9 , Use Print () en lugar de window.print ()