Java Swing到iText,反之亦然字体均衡
所以我又问了一次这个问题,但这次有更多的信息 两种字体使用相同的*.tff文件。如果你需要,我会把它上传到某个地方,放在这里下载 这是我的Java Swing字体代码:Java Swing到iText,反之亦然字体均衡,java,swing,fonts,itext,Java,Swing,Fonts,Itext,所以我又问了一次这个问题,但这次有更多的信息 两种字体使用相同的*.tff文件。如果你需要,我会把它上传到某个地方,放在这里下载 这是我的Java Swing字体代码: static Font loadFont(String fontName, float size) { try { Font font = Font.createFont(Font.TRUETYPE_FONT, Utils.class.getResourceAsSt
static Font loadFont(String fontName, float size)
{
try
{
Font font = Font.createFont(Font.TRUETYPE_FONT, Utils.class.getResourceAsStream(fontName+".ttf"));
font = font.deriveFont(size);
GraphicsEnvironment.getLocalGraphicsEnvironment().registerFont(font);
return font;
}
catch (FontFormatException | IOException e)
{
//TODO error message
return null;
}
}
我只是把它放在一个区域
这是我的iText字体代码:
public static BaseFont loadiTextFont(String fontName)
{
try
{
return BaseFont.createFont(Utils.class.getResource(fontName+".ttf").toString(), BaseFont.IDENTITY_H, false);
}
catch (DocumentException | IOException e)
{
//TODO error message
return null;
}
}
我只是在这一行中使用它:PdfContentByte.setFontAndSize(字体,大小)代码>
如果我希望Swing和iText的字体大小相等,我使用以下公式:
iTextFontSize=0.74*swingFontSize
这是一个像素单位dpi计算位的结果
这样做会使字体高度相等。但是,行长度不同,并且它们的差异不一致。有时摇摆行比下一行宽,有时正好相反
我知道宽度不是问题,我试着计算它应该是什么,它是什么,结果是匹配的
那么,还有什么能让字体彼此如此不同呢
如果有一个属性我可以更改,那么如果您向我展示了在swing或iText上更改它的代码,或者如果这是它的本质,那么这将是很好的(就像紧排一样,因为我必须在两种字体上都关闭它)
我相信Lowagie先生最清楚它可能是什么。“我对两种字体使用相同的..tff文件。”它有多大(以字节为单位)?我叫它什么?为了更快地获得更好的帮助,请发布一个.811052字节。它叫calibri.ttf,但我不知道为什么它很重要。。。你不需要SSCCE。您有字体设置代码。如果你有一个想法,你认为会有帮助,告诉我什么改变或添加到代码,我会尝试它,并报告回来。。。有点像社区头脑风暴。。。我自己会做的,但我对字体不太熟悉。。