2010-10-25 81 views
3

我刚刚下载了xhtmlrenderer和iText jar文件。我可以使用这些罐子制作pdf文件。如何使用iText&飞碟将java页面的url转换为java中的pdf?

我确切需要的是: 如果我给一个有效的URL(例如“https://xhtmlrenderer.dev.java.net/news.html”)代替“inputFile”,我需要创建pdf。飞碟和iText可能吗?

如果是的话,请指导我做到这一点。

此外,当我试图运行下面的代码,我得到错误:流闭

import java.io.*; 
import com.lowagie.text.DocumentException; 
import org.xhtmlrenderer.pdf.ITextRenderer; 

public class FirstDoc { 

    public static void main(String[] args) 
      throws IOException, DocumentException { 
     String inputFile = "samples/sql.html"; 
     String url = new File(inputFile).toURI().toURL().toString(); 
     String outputFile = "firstdoc.pdf"; 
     OutputStream os = new FileOutputStream(outputFile); 

     ITextRenderer renderer = new ITextRenderer(); 
     renderer.setDocument(url); 
     renderer.layout(); 
     renderer.createPDF(os); 

     os.close(); 
    } 
} 
+0

您的代码包含'com.lowagie'。这是iText的一个古老版本。请使用'com.itextpdf' iText。 – 2016-04-10 06:55:12

回答

0

是......这是被请求的页面可能无法工作不当你请求的文件没有找到,

import java.io.*; 
import com.lowagie.text.DocumentException; 
import org.xhtmlrenderer.pdf.ITextRenderer; 

public class FirstDoc { 

public static void main(String[] args) 
     throws IOException, DocumentException { 
    String url= "http://xhtmlrenderer.java.net/news.html"; 

    String outputFile = "firstdoc.pdf"; 
    OutputStream os = new FileOutputStream(outputFile); 

    ITextRenderer renderer = new ITextRenderer(); 
    renderer.setDocument(url); 
    renderer.layout(); 
    renderer.createPDF(os); 

    os.close(); 
} 
} 

流关闭错误:XHTML,但这应该做的伎俩。 'samples'文件夹必须存在于您的工作区中的项目中或您正在运行应用程序的任何地方

+0

我的HTML在文本之间包含'&'。如何处理该 – 2013-07-03 11:00:22

+0

我建议你创建一个新的问题 – Edd 2013-07-03 11:16:45