Convertire un file doc in un pdf con Java



La soluzione per convertire in maniera semplice un file .doc in un file .pdf è utilizzare due librerie:

POI di apache (http://www.apache.org/dyn/closer.cgi/poi/release/)

e iText (http://www.lowagie.com/iText/download.html)

POI permette di gestire i documenti office (doc, ppt, xls ecc…)  mentre iText permette di create pdf costruendoli mediante oggetti Java.

Purtroppo la  soluzione che utilizzo io fa perdere al pdf la formattazione come i colori, centratura testo ecc… però permette almeno di estrarre il testo semplice e inserirlo in un pdf crudo ma sempre un pdf.

Vediamo l’esempio:

import org.apache.poi.hwpf.extractor.*;
import org.apache.poi.hwpf.*;
import com.lowagie.text.*;
import com.lowagie.text.pdf.*;
public static void doc2pdf(File in, File out) throws IOException, DocumentException {
FileInputStream fis = new FileInputStream(in.getAbsolutePath());
FileOutputStream fos = new FileOutputStream(out);
HWPFDocument doc = new HWPFDocument(fis);
WordExtractor poi = new WordExtractor(doc);
String[] paragrafi = poi.getParagraphText();
Document d = new Document();
PdfWriter.getInstance(d, fos);
d.open();
d.newPage();
for(String paragrafo : paragrafi) {
d.add(new Paragraph(paragrafo));
}
d.close();
fos.close();
fis.close();
}

Se qualcuno ha voglia di approfondire e cercare di portare nel pdf anche le formattazioni ben venga!

Annunci sponsorizzati:
Condividi su Facebook Condividi su Twitter!
Pinterest