Java - preferencias de impresion

   
Vista:

preferencias de impresion

Publicado por Camilo Andrés (62 intervenciones) el 20/05/2011 16:24:16
Buenos días, de nuevo por acá

he tenido algunos inconvenientes con una impresión automática de archivos y es lo siguiente, el codigo que tengo lee el archivo y lo manda a imprimir a la impresora predeterminada que tiene el equipo, hasta ahi funciona manda el archivo a imprimir a la impresora predeterminada y bien, los archivos que mando a imprimir son en formato PDF pero lo que sucede es que no toma las configuraciones del tamaño de la hoja que tiene la impresora, y no sale bien, pero si abrocualquier archivo y mando a imprimir con las configuraciones que muestra por defecto la impresora y dejo el archivo abierto, de ahi en adelante si toma esas configuraciones e imprime los archivos bien, pero si cierro el PDF ya no salen las impresiones bien.



De antemano agradezco su ayuda
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

preferencias de impresion

Publicado por Tom (910 intervenciones) el 20/05/2011 18:50:03
¿ Estás usando java.awt.print.PrinterJob ?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

preferencias de impresion

Publicado por Camilo Andrés (62 intervenciones) el 20/05/2011 21:05:54
Hola Tom, gracias por responder, no no lo uso estoy usando el siguiente código:

java.awt.Desktop desktop = java.awt.Desktop.getDesktop();
java.io.File fichero = new java.io.File("\\"+"\\192.168.160.19\\PRINTQUEUE\\"+nomarchJ+cons+".pdf");
if (desktop.isSupported(Desktop.Action.PRINT)){
try {
desktop.print(fichero);
} catch (IOException ex) {
Logger.getLogger(autoimpre.class.getName()).log(Level.SEVERE, null, ex);
}
}else{
System.out.print("El sistema no permite imprimir usando la clase Desktop");
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

preferencias de impresion

Publicado por Tom (910 intervenciones) el 21/05/2011 17:02:43
Pues échale un ojo, no parece demasiado compleja y te permite especificar algunas preferencias de impresión.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

preferencias de impresion

Publicado por Camilo Andrés (62 intervenciones) el 23/05/2011 07:20:08
Hola Tom, he estado mirando el PrinterJob, pero no he podido saber como asignarle un archivo pdf, lo que he encontrado es por graficas, ya he cuadrado que mande a imprimir a la impresora automaticamente, pero no le he podido indicar el archivo que me imprima, no se si me pudieras ayudar, ya que no encuentro como asignarselo.

Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

preferencias de impresion

Publicado por Tom (910 intervenciones) el 23/05/2011 11:58:51
Vaya, el otro día había encontrado un ejemplo bastante bueno ... pero no lo localizo ahora.
En principio, puedes usar un FileInputStream, como hacen aquí:

http://abeishbabu.blogspot.com/2009/06/printing-txt-file-directly-to-printer.html
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

preferencias de impresion

Publicado por Tom (910 intervenciones) el 23/05/2011 15:30:56
Mira, quizás javax.print sea tu mejor opción, te vale incluso el pequeño ejemplo que sale:

http://download.oracle.com/javase/1.4.2/docs/api/javax/print/PrintService.html
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

preferencias de impresion

Publicado por Camilo Andres (62 intervenciones) el 23/05/2011 23:18:26
Hola Tom, he buscado y encontré la forma de imprimi pdf pero me ocurre lo siguiente, los archivos que voy a imprimir contienen códigos de barras y son para unas etiquetas de 7 por 5 cm, y sucede que al imprimir parece que hace una conversion de pdf a imagen y al haer esa conversion se perden algunas barras por lo que el lector no puede leer el código, quisiera saber si es posible combinasr la función de configuración del tamaño de la impresión

paper.setImageableArea(15, 0, 183, 138);

con la forma que tenía en un principio para imprimir los pdf´s (Desktop) que es lo que tengo en la parte de arriba.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

preferencias de impresion

Publicado por Tom (910 intervenciones) el 24/05/2011 11:39:53
Pues es que nunca he tenido que hacer nada de eso, y menos en win.
Supongo que sí, que puedes ajustar las preferencias de impresión con lo que ya has probado de PrinterJob o PrintService e inmediatamente usar el servicio desktop para mandar el fichero ...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

preferencias de impresion

Publicado por Camilo Andrés (62 intervenciones) el 25/05/2011 17:47:13
Ya lo pude solucionar, lo que hice fue usar el codigo que puse al inicio usando Desktop pero antes de usar Desktop.print, use Desktop.open, y luego de que está abierto el archivo pdf ahi si toma las preferencias de impresion que le asigne por defecto a la impresora, y para cerrar el archivo lo que hice fue que temporicè para que despues de la funcion print espere un tiempo y despues matar el proceso del acrobat.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

preferencias de impresion

Publicado por Alejandro W. rednetcom@yahoo.com.ar (1 intervención) el 07/05/2013 14:58:54
Hola Camilo, podrías enviarme el código completo y el modo de usarlo? no soy programador, soy ingeniero y me dedico a dar soporte de redes, virtualización, etc y estoy necesitando un programa que al encontrar un archivo PDF en un directorio, lo imprima y lo elimine.
Veo que de la consulta inicial ya pasaron 2 años, de todos modos ojalá tenga suerte.

Gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

preferencias de impresion

Publicado por Ariel Vargas arielvarga@gmail.com (3 intervenciones) el 22/07/2015 19:14:35
Buenas Camilo tengo el mismo caso, como haces para que después de la impresión se cierre el acrobat? tengo el mismo problema y no logro solucionarlo, mi documento a imprimir también tiene código de barras y con otros metodos no me funciona pero de esta manera si me lo imprime bien solo que me abre el acrobat y eso no lo necesito y el usuario no lo quiere.
Podrías ayudarme.
tal vez tenga suerte.
Gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

preferencias de impresion

Publicado por Camilo Andrés (62 intervenciones) el 22/07/2015 20:23:22
Hola Ariel,

Para cerrar el acrobat lo que hago es cerrar el proceso del acrobat con un comando cmd
Windows: tskill AcroRd32
Linux: killall AcroRd32.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

preferencias de impresion

Publicado por Camilo Andrés (62 intervenciones) el 22/07/2015 20:26:07
Hola Alejandro,

El código que usé está en el foro, por si aún lo necesitas.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

preferencias de impresion

Publicado por Ariel Vargas arielvarga@gmail.com (3 intervenciones) el 22/07/2015 22:33:47
Muchas gracias por la respuesta, y disculpa el abuso, lo corres desde código java? como lo utilizas?
Yo lo corro desde un applet y me abre el acrobat pero necesito que no lo habrá pero en este metido de impresión siempre lo hace pero es el único que me funciona con el barCode por esa razón quiero cerrarlo de manera que el usuario lo vea como un proceso automático.

Muchas gracias nuevamente
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

preferencias de impresion

Publicado por Camilo Andrés camnal2000@hotmail.com (62 intervenciones) el 24/07/2015 22:11:39
Hola Ariel,

Sí, desde Java ejecuto el comando como si lo hiciera desde el cmd de windows para cerrar el acrobat, ahora no tengo el código presente pero es con una clase como esta:

Runtime.getRuntime().exec(String)

y en donde dice String le paso el comando que quiero ejecutar en el sistema, hay que tener en cuenta en que SO se va a ejecutar el comando para pasarle el correcto.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

preferencias de impresion

Publicado por Ariel Vargas (3 intervenciones) el 24/07/2015 23:02:36
Hola Camilo,

Perfecto, muchísimas, me funcionó a la perfección.

salidos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar