package Gerador;
import forms.FormRelatorio;
import beans.PesquisaBean;
import beans.QuestaoBean;
import com.itextpdf.text.Document;
import com.itextpdf.text.DocumentException;
import com.itextpdf.text.Font;
import com.itextpdf.text.PageSize;
import com.itextpdf.text.Paragraph;
import com.itextpdf.text.pdf.PdfWriter;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.OutputStream;
import java.util.ArrayList;
import java.util.logging.Level;
import java.util.logging.Logger;
public class GeradorPDF {
Document doc = null;
OutputStream os = null;
public boolean gerarRelatorio (ArrayList<String> relatorio, String nomeQuestionario) throws DocumentException{
try {
doc = new Document(PageSize.A4, 72, 72, 72, 72);
os = new FileOutputStream("Relatorio " + nomeQuestionario + ".pdf");
PdfWriter.getInstance(doc, os);
doc.open();
Font fontTitulo = new Font(Font.FontFamily.COURIER, 20, Font.BOLD);
Font fontPergunta = new Font(Font.FontFamily.COURIER, 14, Font.BOLD);
Font fontResposta = new Font(Font.FontFamily.COURIER, 12, Font.NORMAL);
Paragraph titulo = new Paragraph(nomeQuestionario, fontTitulo);
doc.add(titulo);
for(String entidade : relatorio) {
if(entidade.contains("Pergunta: ")){
Paragraph pergunta = new Paragraph(entidade, fontPergunta);
doc.newPage();
doc.add(pergunta);
}else{
Paragraph resposta = new Paragraph(entidade, fontResposta);
doc.add(resposta);
}
}
doc.close();
} catch (FileNotFoundException ex) {
Logger.getLogger(FormRelatorio.class.getName()).log(Level.SEVERE, null, ex);
}
return true;
}
/**
*
* @param questionario
* @return
*/
public boolean gerarQuestionario (PesquisaBean pesquisa) throws DocumentException{
try {
doc = new Document(PageSize.A4, 72, 72, 72, 72);
os = new FileOutputStream(pesquisa.getNome() + ".pdf");
PdfWriter.getInstance(doc, os);
doc.open();
Font fontTitulo = new Font(Font.FontFamily.COURIER, 20, Font.BOLD);
Font fontPergunta = new Font(Font.FontFamily.COURIER, 14, Font.BOLD);
Font fontOpcao = new Font(Font.FontFamily.COURIER, 12, Font.NORMAL);
Paragraph titulo = new Paragraph(pesquisa.getNome(), fontTitulo);
doc.add(titulo);
for(QuestaoBean entidade : pesquisa.getNome()) {//Erro Aqui for(QuestaoBean entidade : pesquisa.getNome()) { required: array or java.lang.Iterable found String
Paragraph pergunta = new Paragraph(entidade.getDescricao(), fontPergunta);
doc.add(new Paragraph("\n"));
doc.add(new Paragraph("\n"));
doc.add(pergunta);
if(entidade.getTipo() == 1){
for(QuestaoBean entidadeOpcao :
entidade.getGrupoOpcoes().getOpcoes()){ // Erro Aqui entidade.getGrupoOpcoes().getOpcoes()){ symbol: method getOpcoes()
Paragraph opcao = new Paragraph(
"( ) " + entidadeOpcao.getDescricao()
, fontOpcao);
doc.add(opcao);
}
}else{
Paragraph espacoEmBranco = new Paragraph(
"___________________________________"
+ "________________________"
, fontOpcao);
doc.add(espacoEmBranco);
}
}
doc.close();
} catch (FileNotFoundException ex) {
Logger.getLogger(FormRelatorio.class.getName()).log(Level.SEVERE, null, ex);
}
return true;
}
}
Relatório usando itext
G
Criado 31 de outubro de 2013
Respostas 0
Participantes 1