java - 使用drawString()时如何将字体大小减小到0.0001f?

标签 java font-size graphics2d drawstring

我现在有一个关于 OpenStreetMaps 的作业,其中练习之一是在 map 上显示各自道路上的道路名称。

我现在的问题是,我们使用的坐标太小,即使是最小的 int 字体大小也比它应该的大一百倍。

我尝试过deriveFont()方法,但似乎没有任何效果。

g.setPaint(Color.black);
    for (DrawnString d : model.getRoads()){
        Point2D.Double p = d.getPosition();

        Font font = new Font("TimesRoman", Font.PLAIN, 1);
        font.deriveFont(0.0001f); //doesn't work!
        g.setFont(font);

        g.drawString(d.getText(), (float) p.x, (float) p.y);
    }

我的问题是,是否有办法将字体大小减小到像 0.0001f 这样的小尺寸?

最佳答案

deriveFont() 方法返回一个 font 类型的对象,该对象是具有更改参数的调用字体的副本。 因此,将该行更改为: font = font.deriveFont(0.001f); 一切都按预期工作(字体非常小)

关于java - 使用drawString()时如何将字体大小减小到0.0001f?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48886615/

相关文章:

Java 填字游戏应用程序 - 使用什么包?

java - 调整没有文字的照片大小.. 是否需要 RenderingHints?

java - 属性文件中的 boolean 值

java - MANIFEST.MF 属性返回 null

java - 接口(interface)实现和Java序列化

html - 为什么媒体查询在此示例中不更改字体大小?

java - 方形不在我的 Swing 应用程序中旋转

java - 使用 Mockito 模拟注入(inject) Spring Boot 组件

android - 如何在不更改按钮大小的情况下更改按钮字体大小(在 android 中)?

Silverlight 和整体字体大小