【发布时间】:2012-08-16 21:29:36
【问题描述】:
我使用 Java 和 iTextPdf 创建了一个表格,其中列出了一堆单元格。我不太清楚如何更改这些单元格内文本的字体。这是为我的孩子准备的,所以我正在尝试使用 Comic Sans MS。一切编译和运行都很好,但我得到了一个通用字体(可能是 Helvetica 或类似的字体)。
有人知道如何生成这样的字体吗?谢谢!
这是我写的缩小版:
import com.itextpdf.text.FontFactory;
import com.itextpdf.text.pdf.FontSelector;
public static PdfPTable createTable() {
FontSelector selector = new FontSelector();
selector.addFont(FontFactory.getFont("Comic Sans MS"));
PdfPTable table = new PdfPTable(3);
PdfPCell cell;
Phrase ph;
ph = selector.process("My Title");
cell = new PdfPCell(ph);
table.addCell(cell);
return table;
【问题讨论】:
-
可能是您的
FontFactory不知道“Comic Sans MS”字体。FontFactory.getRegisteredFonts()应该返回 FontFactory 知道如何呈现的所有字体名称的列表。 -
谢谢。你是对的。遍历 getRegisteredFonts() 返回的所有字体,没有提到 Comic Sans MS。通过查看他们的文档,我几乎已经知道了这一点。然而,Comic Sans MS 在我的系统字体文件夹中。有没有办法利用我系统上的字体,或者我是否仅限于 FontFactory 中的嵌入字体?谢谢!