首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

在不同的JDK或操作系统中,字符串宽度不一样的有关问题

2011-12-11 
在不同的JDK或操作系统中,字符串宽度不一样的问题对于下面这段程序:Graphics2Dg(Graphics2D)newjava.awt.

在不同的JDK或操作系统中,字符串宽度不一样的问题
对于下面这段程序:
Graphics2D   g   =   (   Graphics2D   )   new   java.awt.image.BufferedImage(   10,   10,   java.awt.image.BufferedImage.TYPE_INT_ARGB   ).getGraphics();
FontMetrics   fm   =   g.getFontMetrics(   new   Font(   "宋体 ",   0,   12   )   );
int   w   =   fm.stringWidth(   "hello   everyone!   大家好 "   );

在不同的JDK或操作系统中,算出来的宽度w有时不一样,请问应该如何修改上面的程序,才能始终得到同样的宽度呢?


[解决办法]
操作系统不一样,算出来的长度不一样很正确的啊~~除非你去改操作系统去,这个程序没关系.
[解决办法]
根显卡、分辨率什么的好像也有关系
[解决办法]
你应当作的是“修改上面的程序,才能始终得到类似的画面效果”,而不是掩耳盗铃般,只想得到一个相同的结果
[解决办法]
要保证有相同的宽度,需要PhysicalFontFile 中的字是一样宽的,换句话说,只要你使用同样的字体文件(也可以叫做字体库文件,大小就是一样的。)
[解决办法]
帮忙顶
[解决办法]
关注一下....
[解决办法]
up
[解决办法]
这个有点难。。

好好看看需求,看有没有什么地方可以改进改进

热点排行
Bad Request.