該方法主要完成文本繪制功能,最常用的是文本居中繪制。方法如下:
Font font = SystemFonts.DefaultFont;
Brush fontBrush = SystemBrushes.ControlText;
//SizeF sizeText = e.Graphics.MeasureString(nodeText, font);
//e.Graphics.DrawString(nodeText, font, fontBrush, (this.Width - sizeText.Width) / 2, (this.Height - sizeText.Height) / 2);
StringFormat sf = new StringFormat();
sf.Alignment = StringAlignment.Center;
sf.LineAlignment = StringAlignment.Center;
e.Graphics.DrawString(nodeText, font, fontBrush, this.ClientRectangle, sf);、
該實現方法的好處在於文字會隨繪制區域的變動自行調整(包括換行)。
也可通過上述注釋的方法那樣通過字體大小和位置計算后居中繪制,但是不會實現自動換行,且較繁瑣。