当前位置:主页 > >

java中获取字符串宽度

时间:2020-06-22 23:30:28 | 栏目: | 点击:

在报表、pdf或者excel中输出,我们经常需要对字符串进行宽度的计算,字符串的宽度与字体、字体大小等有关,请看java是怎样获取字符串宽度的。

字体的大小需要用到java.awt.Font javaFont和sun.font.FontDesignMetrics类:

java.awt.Font javaFont = new java.awt.Font("宋体", java.awt.Font.BOLD, 12);
sun.font.FontDesignMetrics fm = sun.font.FontDesignMetrics.getMetrics(javaFont);
System.out.println("fm.getHeight()..."+fm.getHeight());
System.out.println("fm.charWidth('A')..."+fm.charWidth('A'));
System.out.println("fm.charWidth('中')..."+fm.charWidth('中'));
System.out.println("fm.stringWidth(\"宋A\")..."+fm.stringWidth("宋A"));
System.out.println("fm.stringWidth(\"中国\")..."+fm.stringWidth("中国"));

输出看下结果:

fm.getHeight()...15
fm.charWidth('A')...7
fm.charWidth('中')...13
fm.stringWidth("宋A")...20
fm.stringWidth("中国")...26

不同的字体、大小,对中文英文的宽度是不一样的。

您可能感兴趣的文章:

相关文章