I want Java code to convert word file (doc file having text, images, tables etc. ) into pdf file.
我已经添加了所有必需的JAR文件,包括
导入时出错
1 2 3 |
不明白怎么回事。我添加了最新版本的
请给我正确的解决方案或代码。请逐步提及。因为我第一次这么做…
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | import com.lowagie.text.Document; import com.lowagie.text.Paragraph; import com.lowagie.text.pdf.PdfWriter; import java.io.File; import java.io.FileOutputStream; public class Doc2Pdf2 { /** * This method is used to convert the given file to a PDF format * * @param inputFile * - Name and the path of the file * @param outputFile * - Name and the path where the PDF file to be saved * @param isPictureFile */ private void createPdf(String inputFile, String outputFile, boolean isPictureFile) { Document pdfDocument = new Document(); String pdfFilePath = outputFile; try { FileOutputStream fileOutputStream = new FileOutputStream( pdfFilePath); PdfWriter writer = null; writer = PdfWriter.getInstance(pdfDocument, fileOutputStream); writer.open(); pdfDocument.open(); if (isPictureFile) { pdfDocument.add(com.lowagie.text.Image.getInstance(inputFile)); } else { File file = new File(inputFile); pdfDocument.add(new Paragraph(org.apache.commons.io.FileUtils .readFileToString(file))); } pdfDocument.close(); writer.close(); } catch (Exception exception) { System.out.println("Document Exception!" + exception); } } public static void main(String args[]) { PDFConversion pdfConversion = new PDFConversion(); pdfConversion.createPdf("C:/demo.doc","C:/demopdf.pdf", true); } } |
您使用的是高于5的IText版本(带有包
顺便说一句:你的问题标题与问题不匹配,因为iText不将Word文档转换为PDF格式。
您可以学习如何将数据写入PDF的教程。
生成PDF
创建PDF
创建PDF示例Hello程序
阅读文档文件最好是Apache Tika:
使用Java中的Apache TIKA查看文档文件:
我正在阅读文档文件中的内容并将其写入文本文件,但学习后,您可以将数据写入PDF。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 | public class Tikaconvrt { public static void main(String [] args) throws IOException, SAXException, TikaException { Tikaconvrt tc=new Tikaconvrt(); File Re_F = new File("/home/rahul/Documents/212/ANIR.docx"); String F_Name=Re_F.getName(); int eof=F_Name.lastIndexOf('.'); F_Name=F_Name.substring(0, eof); String s1 = tc.contentEx(Re_F); tc.files(s1, F_Name); } public String contentEx(File f) throws IOException, SAXException, TikaException { InputStream is = new FileInputStream(f); Parser ps = new AutoDetectParser(); BodyContentHandler bch = new BodyContentHandler(); Metadata metadata = new Metadata(); ps.parse(is, bch, metadata, new ParseContext()); return bch.toString(); } public void files(String st,String fname) throws IOException { FileWriter fw = new FileWriter("/home/rahul/Documents/txt/"+fname+".txt", true); BufferedWriter bufferWritter = new BufferedWriter(fw); bufferWritter.write(st +" "); bufferWritter.close(); } } |
您需要在Java构建路径中添加最新的JAR。检查您的项目构建路径并确保jar存在于其中。做一个干净的构建和发布,它应该工作。如果没有,那么您甚至可以尝试直接将JAR粘贴到项目部署位置(lib文件夹)。