1

getFontMetrics()Java アプレットで を呼び出すと、5000 ミリ秒から 22000 ミリ秒かかって返されます。後続の呼び出しにかかる時間はごくわずかです (0 ~ 16 ミリ秒)

最低限のグラフィックス ドライバーを搭載したマシンで実行していることは認めざるを得ません (グラフィックス カードが壊れているため、Nvidia ドライバーを使用できません)。

これを引き起こしている可能性のあるアイデアはありますか?同じ問題を抱えたstackoveflowの他の例に出くわしましたが、満足のいく答えはないようです。これをEclipseで実行していますが、IE、Mozilla、およびChromeで実行すると同じ遅延が発生します。

要求された SSCCE:

import java.applet.Applet;
import java.awt.Font;
import java.awt.FontMetrics;
import java.awt.Graphics;
import java.awt.Graphics2D;

public class fontProblems extends Applet{
    Graphics2D g;
    FontMetrics fm;
    Font font=new Font("Roman", Font.BOLD, 36);
    public void paint(Graphics g2){
        g = (Graphics2D) g2;
        fm = g.getFontMetrics(font);
    }
}
4

1 に答える 1

1

ドキュメント ( http://docs.oracle.com/javase/7/docs/api/java/awt/Font.html ) によると、AWT コンポーネントは論理フォントのみを使用できます。フォントを「SansSerif」に変更すると、問題が解決しました。

于 2014-05-15T18:31:10.177 に答える