我正在尝试使用自定义字体,但没有收到任何错误,但未将其考虑在内。
Rectangle pageSize = basePdf.getPageSize(i);
PdfContentByte pdfContentByte = stamper.getOverContent(i);
// Use custom font
if (!FontFactory.isRegistered(FUTURA_LIGHT)) {
FileHelper.copyFileFromAssetsToInternalStorage(mContext, FONT_PATH_IN_ASSETS);
FontFactory.register(mContext.getFilesDir() + "/" + FONT_PATH_IN_ASSETS, FUTURA_LIGHT);
}
Font myFont = FontFactory.getFont(FUTURA_LIGHT);
BaseFont font = myFont.getBaseFont();
pdfContentByte.saveState();
pdfContentByte.stroke();
pdfContentByte.restoreState();
// Start to add text
pdfContentByte.beginText();
pdfContentByte.setFontAndSize(font, 6);
if (fontColor != null) {
pdfContentByte.setColorFill(fontColor);
}
pdfContentByte.showTextAligned(PdfContentByte.ALIGN_CENTER, message, pageSize.getWidth() / 2, 40, 0);
pdfContentByte.endText();
我已经检查过,并且字体确实已注册,只是没有将其应用于PDF。
最佳答案
我是偶然发现的,我试图通过添加BaseFont.IDENTITY_H
来显示口音
这是我更改的行:
Font myFont = FontFactory.getFont(FUTURA_LIGHT, BaseFont.IDENTITY_H);