13

我正在使用 itextsharp 在 pdf 上动态书写。我正在 pdf 文档中创建一个表,其中包含数据库中的值。有人可以告诉如何修改表中值的字体大小。

4

4 回答 4

24

尝试这个:

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

PdfPTable table = new PdfPTable(1);

table.AddCell(new PdfPCell(new Phrase(yourDatabaseValue,fontH1)));
于 2012-07-23T19:41:51.893 回答
2

请尝试将字体设置为PdfPTable.DefaultCell property

例子:

pdfTable.DefaultCell.Phrase = new Phrase() { Font = fontNormal };

我之前已经回答过这个问题:使用 Itextsharp 为 Pdfptable 中的所有文本设置字体

于 2012-07-23T19:36:57.197 回答
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 类型 basefont 是com.itextpdf.text.pdf.BaseFont 这解决了编译问题。

于 2013-07-19T11:45:36.317 回答
0

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

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

于 2012-07-23T19:35:54.927 回答