用Graphics.MeasureString得到的宽度比实际的要宽
使用下边帖子的办法会得到比较正确的宽度,但是开始比实际的宽
http://kb.csdn.net/.net/Articles/200509/b6b34174-bb5a-4d9c-8625-08a5b75056d1.html有没有其他办法?
使用下边帖子的办法会得到比较正确的宽度,但是开始比实际的宽
http://kb.csdn.net/.net/Articles/200509/b6b34174-bb5a-4d9c-8625-08a5b75056d1.html有没有其他办法?
解决方案 »
- |ZYCWPF| 为什么在WPF中MediaElement可以播放MMS://但是在Silverlight却播放不了,那Silverlight要怎么播
- 请教个问题,winform程序,调用PPT程序,如何退出PPT
- 为什么我的C#连接了一次后就怎么也连接不上?付代码
- linq 的 or查询 (表达式树)
- VS2008 treeview
- 小弟问个问题,请问(T)obj、Convert、Parse、as、ToString() 区别,以及各个对比之下的性能?
- ●取第一块硬盘物理序列号时出错!!●
- 登录界面使用完后关闭该界面的问题
- 如何从数据库完整得到一个二进制储存的文件信息
- 当提交一个按扭时,如何使int 变量递增加1?谢谢
- 进程之间怎么通信????
- 多线程的读写同步问题,就是读写锁的问题!
{
Graphics g = e.Graphics;
string text = "Hello, world... Showing MeasureString and MeasureDisplayStringWidth"; PointF pf = new PointF(10f, 10f);
StringFormat format = new StringFormat();// StringFormat.GenericTypographic;
SizeF sf = g.MeasureString(text, this.Font, pf, format); g.DrawRectangle(SystemPens.ActiveCaption,
(int)pf.X, (int)pf.Y, (int)sf.Width, (int)sf.Height); g.DrawString(text, this.Font, SystemBrushes.ActiveCaptionText, pf, format);
}
1.例子中返回的值不太对
2.那个什么Ranges的函数返回的值没有充分利用。
你的第一个回帖中的源代码至少有两个不完善的地方,从而使你
认为自己的代码是work的。把字符串后面的空格去掉,然后你再运行看看。