Eva*_*eld 0 java user-interface swing java-2d font-size
我想在我的网格中为我的图形标记我的哈希标记,但是当我使用偶数字体大小1时,这是大的方法!有没有办法让字体大小小于1?我错过了我编码的方法吗?
这是生成网格并尝试在哈希上添加标签的代码.
for (double k = myStart1; k <= myEnd1; k = k + (myEnd1 - myStart1) / 8) {
g2.setColor(Color.BLACK);
g2.draw(new Line2D.Double(k, (max - min) / 60, k, -(max - min) / 60));
String labelx=String.valueOf(k);
Float xCo=Float.parseFloat(Double.toString(k));
g2.setFont(new Font("SansSerif",Font.PLAIN,1));
g2.drawString(labelx, xCo, 0);
}
Run Code Online (Sandbox Code Playgroud)
这是x ^ 2生成的图表的屏幕截图.
正如我敢肯定你已经注意到,字体构造函数采用int的size参数-有效地渲染不可能字体的建设(使用此方法,至少),其具有size0和1之间.
但是,我确实发现该类的deriveFont方法Font特别有趣:
public font deriveFont(float size)
通过复制当前Font对象并对其应用新大小来创建新的Font对象.
参数:size - 新Font的大小.
该deriveFont方法声称构造一个具有给定大小的新Font,它将a float作为参数 - 因此,可能会执行以下操作:
Font theFont = new Font("SansSerif",Font.PLAIN,1);
theFont = theFont.deriveFont(0.5);
g2.setFont(theFont);
Run Code Online (Sandbox Code Playgroud)
导致大小为0.5的字体.
现在,我还没有自己测试过 - 设置一个图形程序需要时间,所以你比我更好地尝试它.但只是把它扔出去作为一种可能性.
| 归档时间: |
|
| 查看次数: |
885 次 |
| 最近记录: |