我在我的.net应用程序中使用iText 7.0.4.0生成pdf。但是当文本很长时,内部表就会溢出。
外面的表有10列带有绿色边框的列,按照下面的图片,它看起来已经很好了。每个外部表单元格都包含一个表,内部有一个单元格。但是当段落文本较大时,内部表单元格就会溢出。
我在大型Forms建筑产品中使用iText。因此,我已经用简单的场景重新创建了问题,下面给出了代码。请注意,实际使用中的列数不是固定的。
有人可以告诉我实现这一目标的正确方法吗?
这是C#代码
private Table OuterTable()
{
var columns = GetTableColumnWidth(10);
var outerTable = new Table(columns, true);
outerTable.SetWidthPercent(100);
for (int index = 0; index < columns.Length; index++)
{
Cell outerTableCell = new Cell();
Table innerTable = new Table(new float[] { 100 });
innerTable.SetWidthPercent(100);
Cell innerTableCell = new Cell();
Paragraph paragraph = new Paragraph("ABCDEFGHIJKL").AddStyle(_fieldValueStyle);
innerTableCell.Add(paragraph);
innerTable.AddCell(innerTableCell);
outerTableCell.Add(innerTable);
outerTable.AddCell(outerTableCell);
innerTableCell.SetBorder(new SolidBorder(Color.RED, 2));
innerTableCell.SetBorderRight(new SolidBorder(Color.BLUE, 2));
outerTableCell.SetBorder(new SolidBorder(Color.GREEN, 2));
}
return outerTable;
}