我已经使用Java和iTextPdf创建了一个表格,其中列出了一堆单元格。我不太清楚如何更改这些单元格内文本的字体。这对我的孩子来说很重要,所以我正在尝试使用Comic SansMS。一切都编译和运行良好,但我得到了一个通用字体(可能是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
,然后将其用作
String filename = "Comic Sans MS.ttf";
FontFactory.register(filename, filename);
Font font = FontFactory.getFont(filename, BaseFont.CP1252, BaseFont.EMBEDDED);
这也将在PDF文件中嵌入字体,因此即使目标PDF阅读器没有安装此字体,它也可以工作。