處理方案是將字符串轉成字符,逐個繪制。
/// <summary> /// 繪制任意間距文字 /// </summary> /// <param name= "text "> 文本 </param> /// <param name= "g "> 繪圖對象 </param> /// <param name= "startPoint "> 起始位置 </param> /// <param name= "font "> 字體 </param> /// <param name= "brush "> 畫刷 </param> /// <param name= "sepDist "> 間距 </param> private void DrawStringEx(string text, Graphics g, PointF startPoint, Font font, Brush brush, float sepDist) { PointF pf = startPoint; SizeF charSize; char[] ch = text.ToCharArray(); foreach (char c in ch) { charSize = g.MeasureString(c.ToString(), font); g.DrawString(c.ToString(), font, brush, pf); pf.X += (charSize.Width + sepDist); } }
更多: