graphics.DrawString 对齐问题

CraxyMouse 2009-03-17 12:10:07
我要在一区域画一段字符串左对齐,中间对齐,右对齐都很实现,但我想实现撑满效果要一个字一个字画吗?
左对齐: |ABCDEF |
中间 : | ABCDEF |
右对齐: | ABCEF|
撑满 : | A B C D E F | -->这种对齐方式有什么好的方法实现!
...全文
628 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
水平方向右对齐,垂直方向居中对齐

StringFormat sf=new StringFormat();

sf.Alignment = StringAlignment.Far;
sf.LineAlignment = StringAlignment.Center ;
//以下两句为重点
Rectangle rect=this.ClientRectangle;
pe.Graphics.DrawString(this.Text, this.Font, brush, (RectangleF)rect , sf);
CraxyMouse 2009-03-17
  • 打赏
  • 举报
回复
没有查到!
readfuture 2009-03-17
  • 打赏
  • 举报
回复
graphics类
MSDN
readfuture 2009-03-17
  • 打赏
  • 举报
回复
graphics类
MSDN
cuisea 2009-03-17
  • 打赏
  • 举报
回复
DrawString()是把字符串当做一个整体来输出的,设置StringFormat.Alignment无法实现,要么一个一个输出,或者还有别的办法吧
suners 2009-03-17
  • 打赏
  • 举报
回复
不懂学习下随白看看就走人
wonder888888 2009-03-17
  • 打赏
  • 举报
回复
要注意的是字符的宽度,中文与英文的宽度是不同的
wonder888888 2009-03-17
  • 打赏
  • 举报
回复
可参考
http://download.csdn.net/source/1098370
zzxap 2009-03-17
  • 打赏
  • 举报
回复
StringFormat drawFormat = new StringFormat();
drawFormat.Alignment = StringAlignment.Far;
drawFormat.LineAlignment = StringAlignment.Center;
然后在drawstring里把drawFormat当作参数传进去
hhxxcj 2009-03-17
  • 打赏
  • 举报
回复
没搞过,支持,学习啦
jcyluck 2009-03-17
  • 打赏
  • 举报
回复
[Quote=引用楼主 dunao 的帖子:]
我要在一区域画一段字符串左对齐,中间对齐,右对齐都很实现,但我想实现撑满效果要一个字一个字画吗?
左对齐: |ABCDEF |
中间 : | ABCDEF |
右对齐: | ABCEF|
撑满 : | A B C D E F | -->这种对齐方式有什么好的方法实现!
[/Quote]

撑满效果要一个字一个字画吗?
graphics.DrawString()本身就是画字符串的,他在底层肯定是一个一个的画,但你在应用时使用整个字符串就行,如graphics.DrawString(“ A B C D E F ”,....)

中间对齐,右对齐都很实现?
不知道楼主是已实现还是很难实现,不过说一下我的一点体会,DrawString(),要注意的是字符的宽度,中文与英文的宽度是不同的(空格同英文),在计算字符个数时要把这两个区分来计算
jlj84237485 2009-03-17
  • 打赏
  • 举报
回复
帮顶一下
zgke 2009-03-17
  • 打赏
  • 举报
回复
你可以使用LABEL来做.
.AutoSize=false;
.Size =new (绘制大小)
.TextAlign = ContentAlignment.MiddleCenter; //设置这个
然后用.DrawToBitmap()获取图形再绘制到你要绘制的地方。


CraxyMouse 2009-03-17
  • 打赏
  • 举报
回复
有没有搞过的呀!!!
要一个字,一个字画吗?

111,126

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧