1

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

HTMLWorker.parse()

如果没有网络连接,方法将引发以下异常。

ExceptionConverter: java.net.UnknownHostException: xyz.com

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

我正在使用 iText-5.0.5 库。

4

1 回答 1

0

你应该实现你的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-01-02T11:35:57.110 回答