如何在PdfPTable中更改字体大小?

16
我正在使用itextsharp在pdf上进行动态编写。我正在创建一个包含来自数据库的值的pdf文档中的表格。请问如何修改表格中值的字体大小?
4个回答

27

试试这个:

Font fontH1 = new Font(Currier, 16, Font.NORMAL);

PdfPTable table = new PdfPTable(1);

table.AddCell(new PdfPCell(new Phrase(yourDatabaseValue,fontH1)));

嗨,我发现文本中有一条水平线。这意味着什么? - Aada

2

Font = Font.Normal 出现了隐式将 int 转换为 Font 的错误。 - Aada
在我的示例中,@Vids中的fontNormal是一个Font对象,例如new Font(.......); 就像这样。 - HatSoft

1

@Pabloker 我不确定,但使用你的解决方案时出现了错误。 我无法确定使用哪种字体(com.itextpdf.text.Font或com.lowagie.text.Font或java.awt.Font或org.apache.poi.ss.usermodel.Font)。 无论我使用哪个,当我尝试将其放入单元格中时,都会出现错误,提示不存在这样的构造函数。 很抱歉,但我是iText的新手。

幸运的是,我已经找到了下面的代码,它对我有用。

BaseFont bf = BaseFont.createFont(
                        BaseFont.TIMES_ROMAN,
                        BaseFont.CP1252,
                        BaseFont.EMBEDDED);
                Font font = new Font(bf, 12);
                PdfPCell pdfCell = new PdfPCell(new Phrase(sCellVal,font));

请注意所使用的字体类型为com.itextpdf.text.Font,而基础字体类型为com.itextpdf.text.pdf.BaseFont。 这解决了编译问题。

0

你不应该使用创建文本时传递的Font对象来更改字体大小吗?

如果你还没有阅读过,这本iText书非常出色,几乎可以回答你所有的问题:http://itextpdf.com/book/index.php


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接