Java自定义字体失真

Java自定义字体失真,java,swing,fonts,label,Java,Swing,Fonts,Label,我正在编写一个应用程序,其中包含一个用于GUI字体的.ttf文件。加载字体似乎没有问题,但是当使用deriveFont()方法编辑字体大小时,字体似乎失真(例如,不在同一行,字母缺少部分,倾斜等) 为什么会这样?有路可走吗 加载字体的代码: InputStream is = getClass().getResourceAsStream("/fonts/lg.ttf"); GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEn

我正在编写一个应用程序,其中包含一个用于GUI字体的.ttf文件。加载字体似乎没有问题,但是当使用
deriveFont()
方法编辑字体大小时,字体似乎失真(例如,不在同一行,字母缺少部分,倾斜等)

为什么会这样?有路可走吗

加载字体的代码:

InputStream is = getClass().getResourceAsStream("/fonts/lg.ttf");
GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
leagueGothic =  Font.createFont(Font.TRUETYPE_FONT, is);
ge.registerFont(leagueGothic);
然后使用
deriveFont()


scale(int,char)
只是一种改变大小与应用程序窗口大小成比例的方法,它返回一个
int
在调用
deriveFont()
时,方法
scale(int,char)
“它返回一个
int
”它应该返回一个
float
,根据
size
参数的要求。

Hm它没有做到这一点,文本字体像往常一样失真。失真让我对
仿射转换
感到好奇;如果没有答案,很难说。
label.setFont(leagueGothic.deriveFont(Font.PLAIN, scale(50, 'x'));