Início > JAVA > Gerando arquivos PDF e RTF com Java

Gerando arquivos PDF e RTF com Java

Tive a necessidade de gerar arquivos RTF e PDF em uma aplicação JAVA, então sai em busca de um componente para simplificar minha vida, acabei encontrando o Itext, que faz exatamente o que eu quero. O site do mesmo é http://itextpdf.com/ e os arquivos “jar” podem ser baixados aqui.

Utilizei a versão 2.1.7 pois a versão mais recente (5) não suporta ainda a criação de arquivos rtf.

Os criados de itext pularam da versao 2 para a 5 somente para seguir o padrão adotado na nomeclatura do Java.

A seguir, estão os códigos para geração de PDF e RTF, bem simplificados. Para os utilizar, basta chamar o método createPDF e createRTF respectivamente, além é claro, de baixar os jars do iText e colocar no classpath de sua aplicação.

  • Geração de PDF
import java.io.FileOutputStream;
import java.io.IOException;
import com.lowagie.text.Document;
import com.lowagie.text.DocumentException;
import com.lowagie.text.Paragraph;
import com.lowagie.text.pdf.PdfWriter;
/**
 * Responsible for pdf creation
 *
 * @author julianom
 *
 */
public class PdfCreator {
    /**
     * Create a pdf file
     *
     * @param fileName the name of the output file
     * @param sourceString the string that will be written in the pdf file
     */
    public static void createPdf(String fileName, String sourceString) {
	Document document = new Document();
	try {
	    PdfWriter.getInstance(document, new FileOutputStream(fileName + ".pdf"));
	    document.open();
	    document.add(new Paragraph(sourceString));
	} catch (DocumentException de) {
	    System.err.println(de.getMessage());
	} catch (IOException ioe) {
	    System.err.println(ioe.getMessage());
	}
	document.close();
    }
}
  • Geração de RTF
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import com.lowagie.text.Document;
import com.lowagie.text.DocumentException;
import com.lowagie.text.Paragraph;
import com.lowagie.text.rtf.RtfWriter2;

/**
 * This class is responsible for RTF creation
 *
 * @author julianom
 *
 */
public class RtfCreator {
    /**
     * Create a rtf file
     *
     * @param fileName the name of the output file
     * @param sourceString the string that will be written in the pdf file
     */
    public static void createRtf(String fileName, String sourceString) {
	try {
	    Document document = new Document();
	    RtfWriter2.getInstance(document, new FileOutputStream(fileName
		    + ".rtf"));
	    document.open();
	    document.add(new Paragraph(sourceString));
	    document.close();
	} catch (FileNotFoundException e) {
	    e.printStackTrace();
	    System.err.println("Problem at RtfCreator - createRtf");
	} catch (DocumentException e) {
	    e.printStackTrace();
	    System.err.println("Problem at RtfCreator - createRtf");
	}
    }
}

Enjoy!

Categorias:JAVA Tags:, , , ,
  1. maio 13, 2010 às 7:42 pm

    legal, juliano, simples e funcionou.

    Gostei😀

    abracos,

  1. No trackbacks yet.

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: