我们在编程的时候经常用到Graphics对象进行文本的绘制,但是有时为了精确定位文本的绘制位置时而不能获取文本的绘制宽度,字体的高度可以用font.height属性获得,获取宽度是非常头痛的事情 ......
原来常用一个label控件(把autosize设置为true)来测量文本的长度,但是总感觉不爽 .......
后来,经过实测发现:
字号和象素的关系大约是1:1.4的关系。例如20号字体那么她的宽度是28象素。15号字体的宽度是21象素。
字号和毫米的关系大约是1:0.35的关系。例如20号字体打印宽度是7毫米。50号字体打印宽度是17.5毫米。
注意:实测中采用的是系统宋体!
补充:由于水晶报表的打印文档PrintDocument采用英寸的概念,1毫米=3.937个绘制单位