我使用itextsharp动态写入pdf。我在pdf文档中创建一个表,其中包含数据库中的值。有人可以告诉我们如何修改表格中值的字体大小。
答案 0 :(得分:17)
试试这个:
Font fontH1 = new Font(Currier, 16, Font.NORMAL);
PdfPTable table = new PdfPTable(1);
table.AddCell(new PdfPCell(new Phrase(yourDatabaseValue,fontH1)));
答案 1 :(得分:2)
请尝试将字体设置为PdfPTable.DefaultCell property
示例:
pdfTable.DefaultCell.Phrase = new Phrase() { Font = fontNormal };
我之前已经回答过:Set font for all text from Pdfptable with Itextsharp
答案 2 :(得分: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 这解决了编译问题。
答案 3 :(得分:0)
不应该使用创建文本时传递的Font对象来更改字体大小吗?
如果您尚未阅读,这本iText书籍非常出色,几乎可以回答您的任何问题:http://itextpdf.com/book/index.php