|
二、对齐文本 这本例中,我们初始化StringFormat 对象,并设置它的Alignment和LineAlignmen 属性,其中Alignmen 属性指定每行文本在矩形中水平位置,LineAlignment属性指定文本块在矩形中垂直位置,本例我们设置水平、垂直居中。 完整代码如下: Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim g As Graphics = PictureBox1.CreateGraphics Dim mText As String = "欢迎访问巧巧读书网" Dim mBrush As New SolidBrush(Color.Red) Dim mFont As New Font("宋体", 16) ''创建字符格式化对象 Dim mStringFormat As New StringFormat ''创建矩形 Dim Rect As New Rectangle(0, 0, 250, 120) ''设置StringFormat对象 mStringFormat.Alignment = StringAlignment.Center mStringFormat.LineAlignment = StringAlignment.Center ''绘制文本 g.DrawString(mText, mFont, mBrush, RectangleF.op_Implicit(Rect), mStringFormat) ''绘制矩形 Dim mPen As New Pen(Color.Black) g.DrawRectangle(mPen, Rect) End Sub http://www.qqread.com/book/myvbnet/my0047.html 运行后,效果如下图二所示:
三、设置制表位 我们是使用StringFormat 对象的SetTabStops 方法在指定的位置设置制表位。 下面示例,我们在每间隔70设置一个制表位,共设置三个。详细代码如下所示: Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim g As Graphics = PictureBox1.CreateGraphics Dim mText As String mText = mText + "张三" + ControlChars.Tab + "95" + ControlChars.Tab + "80" + ControlChars.Tab + "91" + Chr(10) mText = mText + "李四" + ControlChars.Tab + "90" + ControlChars.Tab + "88" + ControlChars.Tab + "92" + Chr(10) mText = mText + "王五" + ControlChars.Tab + "10" + ControlChars.Tab + "89" + ControlChars.Tab + "100" + Chr(10) |