因为项目的需要,要实现竖排文字。只用Label控件是无法实现这个效果的,于是去找了下实现竖排文字的方法。以下就是实现代码,只要重绘文字就行。
复制内容到剪贴板 程序代码
Graphics g = e.Graphics;
//设置旋转中心点
g.TranslateTransform(this.ClientRectangle.Width/2,this.ClientRectangle.Height/2);
//设置旋转角度
g.RotateTransform(270);
//画文字
g.DrawString(text, base.Font, new SolidBrush(base.ForeColor),-this.ClientRectangle.Width / 2,-this.ClientRectangle.Height/2);
g.ResetTransform();
还有另一种更简单的,只一句代码,但是这个只能旋转90度
复制内容到剪贴板 程序代码
g.DrawString(text, base.Font, new SolidBrush(base.ForeColor), 0, 0,new StringFormat(StringFormatFlags.DirectionVertical));
我用了第一种的代码做了一个竖排文字的控件,重载了OnPaint事件,把代码写在OnPaint里面。
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。