加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 使用iText的PDF格式的HTML表格

发布时间:2020-12-15 02:27:14 所属栏目:Java 来源:网络整理
导读:我正在使用 Java中的HTMLWorker解析一些HTML代码,然后使用iText将其插入PDF.我通过调用新文档创建文档(PageSize.A4,40,40);这应该在所有方面指定边距40px,但是当我插入包含比页面更宽的表格的解析的html代码时,右边距不起作用并且表格到达页面的右边界…除了
我正在使用 Java中的HTMLWorker解析一些HTML代码,然后使用iText将其插入PDF.我通过调用新文档创建文档(PageSize.A4,40,40);这应该在所有方面指定边距40px,但是当我插入包含比页面更宽的表格的解析的html代码时,右边距不起作用并且表格到达页面的右边界…除了正确的边缘之外所有边距都可以..任何建议?

相关代码:

Document document = new Document(PageSize.A4,40);

HashMap<String,Object> map = new HashMap<String,Object>();
map.put(HTMLWorker.FONT_PROVIDER,new MyFontFactory10());

HTMLWorker worker = new HTMLWorker(document);
worker.setProviders(map);

worker.parse(new StringReader(VARIABLE_CONTAINING_HTML_CODE));

解决方法

它应该工作.
您能否提供有关iText版本以及HTML代码外观的信息.
图像可以使表格扩展超出边距(顺便说一下,它不是像素).

尝试此代码,看看问题是否仍然存在.该表不应超出页边距.与HTMLWorker一起使用的表总是获得其容器的100%的宽度.

Document document = new Document(PageSize.A4,40);         
PdfWriter writer   = PdfWriter.getInstance(document,new FileOutputStream("c:/TEST.pdf"));
document.open();
HTMLWorker worker = new HTMLWorker(document);
String code = "<table border=1><tr><td>Test</td><td>Test</td></tr></table>"; 
worker.parse(new StringReader(code));
document.close();

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读