printing - print - imprimir directamente en la impresora javascript
Imprimir una página en diferentes impresoras en una aplicación web (1)
Quiero escribir una aplicación web que pueda procesar una presentación de los usuarios que, cuando se envía, se envía a las impresoras de su sistema local: una parte del pedido irá a la impresora láser B & W y otra a otra impresora para otro proceso.
Idealmente, esto se podrá ejecutar en cualquiera de los sistemas principales: Linux, OSX o Windows.
Puede ser una aplicación o extensión de Chrome o Firefox empaquetada, pero no puedo decir si hay suficiente acceso a las impresoras del sistema. (Puedo ver todas las impresoras disponibles para mi instalación actual de Chrome, pero ¿están disponibles para una extensión?). No puedo ver el código en ninguna demostración o biblioteca.
He visto referencias a NPAPI, pero no puedo decir si eso es lo que necesito tampoco; de ser así, ¿tendría que escribir una aplicación para cada una de las principales plataformas o cada tipo de impresora?
En Firefox es posible imprimir desde una extensión. Usando solo javascript, eso es (puedes jugar con C ++ si quieres). Las extensiones son esencialmente el navegador: todo lo que el navegador puede hacer, una extensión también puede hacerlo.
Sin embargo, no hay mucha documentación sobre el uso de la impresora. Para ser precisos, no hay ninguno que yo sepa. Sin embargo, el navegador es de código abierto y la IU es en su mayoría Javascript, por lo que puede leer el código.
printUtils.js
sería un buen punto de partida para comprobar cómo podría funcionar esto. También hay un componente que implementa nsIPrinterEnumerator
. Consulte la sección de información de Firefox-addon para obtener una recopilación de "Primeros pasos" y recursos de documentación sobre el desarrollo de complementos en general.
No creo que la API de extensión de Chrome proporcione formas de controlar la impresión de la manera que lo necesitaría.
La API del complemento NPAPI
no proporciona suficiente control sobre la impresión. Básicamente, tiene un búfer para dibujar, pero no hay forma de controlar la configuración de impresión o iniciar la impresión usted mismo. Podría hacer trampa, por supuesto, y hacer que su complemento imprima directamente algo a través del sistema operativo omitiendo el navegador, como por ejemplo, los lectores de PDF. Sin embargo, debe tenerse en cuenta que los complementos NPAPI son el pasado ... No desarrolle nuevos, si es posible.