如何使 PdfPTable 动态计算列宽

Posted

技术标签:

【中文标题】如何使 PdfPTable 动态计算列宽【英文标题】:How to make PdfPTable calculate column-width dynamically 【发布时间】:2011-12-02 23:43:49 【问题描述】:

我想创建一个包含不同长度字符串的列的 PdfPTable。我了解到每列的每个单元格/列的宽度都是相同的(默认),或者可以设置每列应占用的空间比例。

但是,我希望列的宽度与所需的一样宽,但不是更宽,具体取决于插入的数据。假设表格很容易放在页面上(没有中断!)。当然,我可以手动遍历所有数据并计算每列的最大字符串长度,并相应地设置表的属性,但我想知道 itext 本身是否已经提供了这样的通用选项。

【问题讨论】:

【参考方案1】:

iText 不是 html,因此它没有自动调整宽度的选项,而是面向页面,因此您必须以百分比或绝对值的形式确定宽度。

恐怕按照您的要求,您必须通过测量宽度来实现自己的扩展,正如您所说。见how to calculate the string with with iText。

【讨论】:

如何以%为单位设置宽度? @JakobAlexanderEichler 在PdfPTable 实例上使用setWidthPercentage(float widthPercentage) 方法

以上是关于如何使 PdfPTable 动态计算列宽的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 iText 剪辑 PdfPTable 中的单元格?

如何将动态列宽设置为 AG-Grid?

如何将过滤后的 jTable 的内容导出到 pdfpTable

如何动态改变报表的行高列宽

如何动态改变报表的行高列宽

如何使多个 html 表具有相同的列宽