【发布时间】:2014-11-13 16:04:28
【问题描述】:
以下是用于创建段落的代码。 dpa.getName() 将从另一段代码中获取 HTML 内容,这段代码由 HTML 标记组成,然后将其删除并传递给单元格。
PdfPTable table = new PdfPTable(new float[] {100});
table.setWidthPercentage(100);
//This code takes the HTML and converts it to a list of iText objects
//which can then be rendered on PDF
StringReader stream = new StringReader(Utilities.parseForHTMLWorker(dpa.getName()));
PdfPCell dpaCell = makeBodyCell("");
try {
ArrayList list = HTMLWorker.parseToList( stream, null);
for( int i = 0; i < list.size(); i++ ) {
Paragraph p = (Paragraph)list.get(i);
dpaCell.addElement(p);
}
} catch (IOException e) {
Logger.Log("InitialInterviewDetailsPrint", "render()", e.toString(), 1);
e.printStackTrace();
}
table.addCell(dpaCell);
list 变量获取Paragraph 的列表。这些段落足够大,至少有 10 个句子。即使页面底部有容纳 5 行的空间,所有内容也会移动到新页面。我不希望在页面底部留下这个空白区域,并且希望段落在两个页面中拆分其内容。
是否需要在段落上设置任何特定属性才能将它们放在同一页面上?
【问题讨论】:
标签: java pdf-generation itext