繁体   English   中英

为什么setFont需要那么多时间?

[英]why does setFont take so much time?

我正在尝试以这种方式在屏幕上绘制文本:

    System.out.println(System.currentTimeMillis() + " 2.2 ");      //debug
    g.setFont(thisfont);
    System.out.println(System.currentTimeMillis() + " 2.2.1 ");    //debug
    g.drawString("hallo", x, y);
    System.out.println(System.currentTimeMillis() + " 2.2.2 ");    //debug
    g.drawString("hallo2", x, y2);
    System.out.println(System.currentTimeMillis() + " 2.2.3 ");    //debug

根据我的调试面板,在设置字体和绘制第一个drawString之间的时间就是问题(9秒)。 这是调试面板上的文本:

1406377881939 2.2 
1406377881939 2.2.1 
1406377890799 2.2.2  
1406377890800 2.2.3 

为什么要花这么长时间,我是在做错什么,还是setfont与drawString结合使用效果不好?

每次调用paint()时创建一个新的Font有点不经济(这种情况经常发生),您可以将其移到构造函数中。 并将字体更改为某些正统字体(Arial,Calibri等)

尝试g.setFont(new Font("Arial", Font.PLAIN, 8))

阅读更多...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM