Impressão de relatórios em Java

6 respostas
rfpsatin

Pessoal, qual a melhor saída p/ impressão de relatórios em Java?

pensei em formatar tudo em HTML e boa + isso vai ficar lento em matricial.

Há alguma outra solução? tipo, componente …

6 Respostas

massardi

Voce pode usar JReport de uma olha no tópico do forum

http://www.guj.com.br/forum/viewtopic.php?t=6086&highlight=relatorio

B

Fugindo, e muito, do assunto: massardi, acho que nossas avatares têm algo em comum

Plud

“rfpsatin”:
Pessoal, qual a melhor saída p/ impressão de relatórios em Java?

pensei em formatar tudo em HTML e boa + isso vai ficar lento em matricial.

Há alguma outra solução? tipo, componente …

Você pode usar o JFreeReport ou o FOP da apache, ambos tem saida em PDF, eu uso o FOP e o resultado tem sido satisfatório.

B

Na Java Magazine desse mes tem um tutorial sobre o FOP.

rfpsatin

legal pessoa, obrigado pela dica. Dei uma olhada ontem na matéria e assim q começar a usar e surgirem as dúvidas (FOP) torno a perguntar + rs…

abraço

carioca

Envia tudo como parametro ou imprime desta classe mesma.
Quando lc. é um repossitorio onde guardo funcoes pre definidas.

import java.awt.*;
import java.text.DecimalFormat;

class impressao{
	
	private PrintJob pj;
	private Toolkit tk;
	private Frame fr;
	private Graphics[] g;
	private DecimalFormat dig = new DecimalFormat("00");
	
	public impressao(){
		
		fr = new Frame("Impressão de identicação"); 
		fr.pack(); 
		
		g = new Graphics[50];
		tk = fr.getToolkit(); 
		pj = tk.getPrintJob(fr, "print1", null);
	}
	
	public void imprimi(String[] linhas, int cont_linhas, int folha, String cabe){
		
		int i = folha - 1;
		
		if (pj!=null) { 
			
			
			g[i] = pj.getGraphics(); 
			
			g[i].setFont(new Font("Arial",Font.BOLD, 18));
			g[i].drawString( cabe, 35, 75);
			g[i].setFont(new Font("Arial",Font.PLAIN, 12));
			
			
			g[i].setColor(Color.black);
			g[i].setFont(new Font("Courier",Font.PLAIN, 10));
			
			for(int j=0;j<cont_linhas;j++){
				
				g[i].drawString( linhas[ j ] , 35, ( 110 + (j * 15) ) );
			}
			
			g[i].setFont(new Font("Arial",Font.BOLD, 10));
			g[i].drawString("Folha: " + dig.format(folha) + "                          Data: " + lc.getData() + "                           Hora: " + lc.getHora(), 79,  780 );
			
			g[i].dispose();
		} 
	}
	
	public void finaliza(){
		
		pj.end();
	}
}
Criado 22 de outubro de 2003
Ultima resposta 24 de out. de 2003
Respostas 6
Participantes 5