Article View: es.comp.lenguajes.java
Article #29069Re: imprimir desde un applet
From: Alberto Soleto
Date: Mon, 02 Feb 1998 00:00
Date: Mon, 02 Feb 1998 00:00
58 lines
3570 bytes
3570 bytes
Jos� Manuel Rivera L�pez wrote: > Hola a todos, > > He de programar un applet que permita imprimir sobre una impresora i > acceder a disco local. �Alguien sabe como se hace?. Asumo que tendr� que > usar 1.1, JAR autentificado. > > Muchas gr�cias por adelantado. Hola, El tema de la impresi�n nos trae de cabeza a m�s de uno hoy en d�a. Hasta que java no aporte soluciones flexibles, tendremos que conformarnos con utilizar algunas triqui�uelas. Resumiendo, para imprimir, deber�s elegir una entre las arquitecturas posibles; a saber "Servidor de impresi�n sobre la m�quina servidor" (RMI � CORBA � Socket puro), "Impresi�n de Applet signed" o "Impresi�n utilizando la API netscape". (Seguro que hay alguna m�s o alguna derivaci�n de estas dos) Para acceder al disco del cliente, tendr�s que firmar tu Applet o darle los permisos de acceso de netscape. Te recuerdo que si utilizas la API netscape, s�lo podr�s hacer funcionar tu applet sobre Netscape. Para imprimir con un servidor de impresi�n, tendr�s que ser capaz de recuperar los datos de tu interfaz y pas�rselos al objeto servidor. Para las im�genes tienes los codificadores GIF. Para imprimir con una applet firmada, hay todo un rollo de certificados de certificados... que nunca he llegado a entender. Para imprimir utilizando la API netscape, tendr�s que darle a tu applet los privilegios de acceso a la m�quina local y compilarla con el fichero java40.jar que viene con Netscape 4.0x o en el patch jdk1.1. Despu�s, deber�s utilizar PrintJob. La ventaja de utilizar la API netscape es que se trata de una soluci�n con la que puedes acceder al disco y a la impresora con los mismos privilegios. La desventaja clara es que no hay la misma seguridad que una applet pura y dura. Puedes firmar tu applet tambi�n para aumentar el grado de seguridad. Si quieres alguna puntualizaci�n sobre alguno de los temas o c�digo de ejemplo, env�ame un mail con lo que necesites. Intentar� responderte lo m�s pronto posible. Yo he conseguido imprimir una applet en jdk 1.0.2 sobre netscape 4.02j2. Lo que he hecho ha sido darle a una segunda applet los permisos de acceso. Esta segunda applet se encuentra en la misma p�gina que la otra, y consta de un simple bot�n que imprime. Esta seguna applet utiliza jdk1.1.4. Cuando accionas el bot�n, la applet 2 crea un PrintJob, obtiene su contexto gr�fico y le pide a la applet 1 que se imprima en ese contexto. Ver�s aparecer una ventana con las opcciones de impresi�n. Despu�s, a nivel de c�digo, s�lo tienes que hacer un dispose() del contexto gr�fico y un end() del PrintJob para que la applet se imprima. Puedes imprimir en un fichero local, por lo que tambi�n tienes acceso a los ficheros, pero s�lo podr�s escribirlos en postscript y PCL5. Para la creaci�n y lectura de ficheros normales, mira en la documentaci�n de la API netscape para poder utilizar los privilegios adecuados. Espero haberte ayudado. Alberto Soleto.
Technical Details
Message-ID:
<34D62528.9F12607C@sun.fr>Path:
arc1-ca.pugleaf.net!unknown!not-for-mailReferences:
<34D607EA.F8F@campus.uoc.es>Show Full Headers
Complete Article Headers
X-Google-Language: SPANISH,ASCII X-Google-Thread: 1116f3,d4d8dfb8d7d9b701 X-Google-Attributes: gid1116f3,public From: Alberto Soleto <Alberto.Soleto@sun.fr> Subject: Re: imprimir desde un applet Date: 1998/02/02 Message-ID: <34D62528.9F12607C@sun.fr> X-Deja-AN: 321445114 Content-Transfer-Encoding: 8bit References: <34D607EA.F8F@campus.uoc.es> Content-Type: text/plain; charset=iso-8859-1 Organization: Sun Microsystems Mime-Version: 1.0 Newsgroups: es.comp.lenguajes.java