我正在开发一个表格导出界面,以导出为 HTML、PDF 和 RTF。我为此使用 iText,因为它允许对这三种类型进行非常相似的处理。
HTML 导出的简单示例:
final Document document = new Document(PageSize.A4, 50, 50, 50, 50);
HtmlWriter writer = HtmlWriter.getInstance(document, outputStream);
Table actTable = new Table(colCount);
final Cell c = new Cell(cellString);
c.setColspan(colSpan);
c.setHeader(isHeader);
actTable.addCell(c);
writer.add(actTable);
到目前为止,基本版本正在运行,我现在想为元素设置样式。
在前一个导出类中,我使用了一个嵌入式样式表:
String cssFileContent = IOUtils.toString(new FileInputStream("style.css"));
final StringBuilder sb = new StringBuilder();
sb.append("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01//EN\">\n");
sb.append("<meta http-equiv='Content-Type' content='text/html;charset=ISO-8859-1'>\n");
sb.append("<html xmlns=\"http://www.w3.org/1999/xhtml\">\n");
sb.append("<head>\n<title>");
sb.append(title);
sb.append("</title>\n");
sb.append("<style media='screen' type='text/css'>\n");
sb.append(cssFileContent); // embed the stylesheet
sb.append("</style>");
sb.append("<div id=\"header\"></div>\n");
sb.append("</head>\n");
sb.append("<body>\n");
...
现在我正在尝试使用 iText 添加样式元素,但无法弄清楚如何做到这一点。请帮忙!
我的第二个问题:如何防止 iTextdiv
为每个单元格创建标签?
<tr>
<td border="0.5" width="0">
<div>testA0,0
</div>
</td>
</tr>