我正在尝试在我的 pdf 中插入一个复选框字符,如下所示:
Phrase phrase = new Phrase("\u2610 somemoretext", somefont);
字符串的“somemoretext”部分正在正确显示,而复选框字符则没有。我是否必须使用特定的东西作为这个角色的字体,或者我还能做错什么?
您必须使用包含这些字符的字体和编码。最好的办法是使用 IDENTITY_H 进行编码,因为这允许您访问给定字体中的每个字符:
Font font = FontFactory.getFont(f.getName(),BaseFont.IDENTITY_H);
但是您仍然必须使用正确的字体。这个链接也可以证明对你有帮助
编辑:
我还看到不同Font
的 s 使用不同的转换代码/序列:
使用不同字体的相应字符。例如在 Wingdings.ttf 你有 0x6F 和 0x70
var font = FontFactory.GetFont(@"C:\Windows\Fonts\wingding.ttf", BaseFont.CP1252, true, 12);
Phrase phrase = new Phrase("\xFC somemoretext", font);
灵感来自 https://stackoverflow.com/a/5044017/1021364
人物图
检查:FB
打勾:FC
签入复选框:FD
勾选复选框:FE
空复选框:6F