【问题标题】:HTML table in PDF using iText使用 iText 的 PDF 中的 HTML 表格
【发布时间】:2011-10-23 03:48:23
【问题描述】:

我正在使用 Java 中的 HTMLWorker 解析一些 html 代码,然后使用 iText 将其插入 PDF。我通过调用 new Document(PageSize.A4, 40, 40, 40, 40); 创建文档,它应该在所有边上指定边距 40px,但是当我插入包含比页面更宽的表格的已解析 html 代码时,右边距不起作用并且表格到达页面的右边框......所有边距都可以,除了正确的..有什么建议吗?

相关代码:

Document document = new Document(PageSize.A4, 40, 40, 40, 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));

【问题讨论】:

    标签: java html-parsing itext


    【解决方案1】:

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

    试试这个代码,看看问题是否仍然存在。表格不应超出页边距。与 HTMLWorker 一起使用的表格的宽度始终为其容器的 100%。

    Document document = new Document(PageSize.A4, 40, 40, 40, 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();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-03-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多