Convertir doc en pdf à l'aide d'Apache POI

Je suis en train de convertir doc en pdf à l'aide d'Apache POI, mais le document pdf résultant contient seulement du texte, c'est de ne pas avoir tout le formatage comme des images, des tableaux d'alignement etc.

Comment puis-je convertir doc en pdf avec avoir tous le formatage comme des tableaux, des images, des alignements?

Voici mon code:

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.OutputStream;
import com.lowagie.text.Document;
import com.lowagie.text.DocumentException;
import com.lowagie.text.Paragraph;
import com.lowagie.text.pdf.PdfWriter;
import org.apache.poi.hwpf.HWPFDocument;
import org.apache.poi.hwpf.extractor.WordExtractor;
import org.apache.poi.hwpf.usermodel.Range;
import org.apache.poi.poifs.filesystem.POIFSFileSystem;
public class demo {
public static void main(String[] args) {
POIFSFileSystem fs = null;  
Document document = new Document();
try {  
System.out.println("Starting the test");  
fs = new POIFSFileSystem(new FileInputStream("Resume.doc"));  
HWPFDocument doc = new HWPFDocument(fs);  
WordExtractor we = new WordExtractor(doc);  
OutputStream file = new FileOutputStream(new File("test.pdf")); 
PdfWriter writer = PdfWriter.getInstance(document, file);  
Range range = doc.getRange();
document.open();  
writer.setPageEmpty(true);  
document.newPage();  
writer.setPageEmpty(true);  
String[] paragraphs = we.getParagraphText();  
for (int i = 0; i < paragraphs.length; i++) {  
org.apache.poi.hwpf.usermodel.Paragraph pr = range.getParagraph(i);
paragraphs[i] = paragraphs[i].replaceAll("\\cM?\r?\n", "");  
System.out.println("Length:" + paragraphs[i].length());  
System.out.println("Paragraph" + i + ": " + paragraphs[i].toString());  
//add the paragraph to the document  
document.add(new Paragraph(paragraphs[i]));  
}  
System.out.println("Document testing completed");  
} catch (Exception e) {  
System.out.println("Exception during test");  
e.printStackTrace();  
} finally {  
//close the document  
document.close();  
}  
}  
}
le document pdf résultant contient seulement du texte, c'est de ne pas avoir toute mise en forme tels que des images, des tableaux d'alignement - vous obtenez seulement le texte, car vous ne faites que de l'utilisation de la WordExtractor.getParagraphText de sortie. Si vous voulez extraire des styles, etc il ya beaucoup plus d'informations à prendre en compte. Jetez un oeil à la WordToHtmlConverter pour avoir une idée de la façon d'extraire toutes les données dont vous avez besoin.
Merci pour le lien , pouvez-vous me donner un exemple simple pour que. Encore Une Fois Merci.
Vous dites que votre tâche est de convertir doc en pdf avec avoir tous le formatage comme des tableaux, des images, des alignements. Pour faire une telle conversion complète, un exemple peut essentiellement être une autre conversion complète. Si vous voulez un exemple plus simple, les couper vers le bas de votre devoir de faire quelque chose de plus simple en fait. Je vais faire une réponse avec quelques explications.

OriginalL'auteur | 2013-07-24