Controlando impressões com Java

4 respostas
prog.tiago

Bom dia meus amigos,

Estou pesquisando as classes de impressão do Java 6.
Encontrei algumas classes interessantes como a PrintService e a PrinterJob.

Com elas até consegui identificar quando acontece alguma modificação na fila de impressão, como por exemplo a chegada de documentos na fila, exclusão... etc.

O que eu queria agora é adquirir as informações dos arquivos que entram na fila de impressão.

Segue o código que eu montei para pesquisa. Ele tá um pouco feio, mas por enquanto é apenas para pesquisa mesmo.

package br.com.tiago.controleImpressao;

import java.awt.print.PrinterException;
import java.awt.print.PrinterJob;

import javax.print.PrintService;
import javax.print.PrintServiceLookup;
import javax.print.event.PrintServiceAttributeEvent;
import javax.print.event.PrintServiceAttributeListener;

public class ControleImpressao {
	
	public static void main(String[] args) {
		
		
		//Localiza a impressora padrão
		final PrintService impressoraPadrao = PrintServiceLookup
				.lookupDefaultPrintService();
		
		
		final PrinterJob pj = PrinterJob.getPrinterJob();
		try {
			pj.setPrintService(impressoraPadrao);
		} catch (PrinterException e) {
			e.printStackTrace();
		}
		
	
		impressoraPadrao
				.addPrintServiceAttributeListener(new PrintServiceAttributeListener() {

					@Override
					public void attributeUpdate(PrintServiceAttributeEvent psae) {
						try {
							pj.setPrintService(impressoraPadrao);
						} catch (PrinterException e) {
							e.printStackTrace();
						}
						System.out.println(pj.getJobName());

					}

				});

		for (;;) {
		}
	}

}

Sempre que um arquivo entra na fila de impressão, quando eu tento recuperar o nome do arquivo recebo a String Java Printing. Dá a impressão que o erro está no uso da classe PrinterJob. Alguém consegue me ajudar.

Desde já agradeço a colaboração.

Um forte abraço :wink:

4 Respostas

prog.tiago

Bom dia novamente,

Alguém conhece alguma biblioteca para impressão?

Abraços :smiley:

joaosouza

Um tempo atrás precisei mexer com isso também, eu utilizei como referência o link abaixo:

http://wiki.sintectus.com/bin/view/GrupoJava/SlidesImpressaoComApiJava

Acho q é um começo, no final do artigo tem outros links de referência…

Na revista Java Magazine 27 também tem um artigo sobre impressão com Java.

prog.tiago

Valeu joaoSouza. :smiley:

Pelo que percebi esse link me ajudará muito.

Qualquer outra dúvida ou descoberta volto a postar.

Um abraço

prog.tiago

Boa tarde João e amigos,

Consegui trabalhar com as APIs de impressão Java. :stuck_out_tongue:
Consegui criar trabalhos de impressão através do código Java e transmiti-la para a fila de impressão.

No entanto, o que eu quero é adquirir um trabalho de impressão da fila para o java.

Eu necessito capturar a impressão da fila do windows e tratar as suas propriedades, como nome do documento, qtde páginas no código Java.

Existe alguma api que permita a leitura desses arquivos nas filas do windows?

Obrigado!

Criado 28 de fevereiro de 2011
Ultima resposta 1 de mar. de 2011
Respostas 4
Participantes 2