【问题标题】:How to avoid java.net.UnknownHostException while parsing HTML content to generate Pdf file using iText如何在解析 HTML 内容以使用 iText 生成 Pdf 文件时避免 java.net.UnknownHostException
【发布时间】:2013-01-02 10:52:08
【问题描述】:

我想将一些 HTML 内容转换为 PDF 文件。我面临的问题是 HTML 内容有一些带有绝对图像 url 的 <img> 标签。因此

HTMLWorker.parse()

如果没有网络连接,方法会抛出以下异常。

ExceptionConverter: java.net.UnknownHostException: xyz.com

有没有办法在这种情况下避免这种异常并生成没有任何图像的pdf?

我正在使用 iText-5.0.5 库。

【问题讨论】:

  • 始终使用配置文件中的相对 URL 尝试图像路径。

标签: html pdf itext


【解决方案1】:

您应该实现您的 ImageProvider,当检索图像出现问题时返回 null,例如

public static class MyImageProvider implements ImageProvider {
    public Image getImage(String src, Map<String, String> h, ChainedProperties cprops, DocListener doc) {
        try {
            return Image.getInstance(IMAGE_URL); //create IMAGE_URL from src parameter
        } catch (IOException e) {
            return null;
        }
    }    
}

那么你应该使用这个提供者的 HTMLWorker

 HashMap<String,Object> map = new HashMap<String, Object>();
 map.put(HTMLWorker.IMG_PROVIDER, new MyImageProvider());
 HTMLWorker.parseToList(new FileReader(HTML), null, map);

【讨论】:

    猜你喜欢
    • 2013-05-09
    • 1970-01-01
    • 1970-01-01
    • 2012-01-22
    • 2013-06-05
    • 2015-10-13
    • 1970-01-01
    • 1970-01-01
    • 2021-08-08
    相关资源
    最近更新 更多