您好,欢迎来到[编程问答]网站首页   源码下载   电子书籍   软件下载   专题
当前位置:首页 >> 编程问答 >> .NET >> C# DrawString 怎么设置字间距和行间距

C# DrawString 怎么设置字间距和行间距

来源:网络整理     时间:2016/5/7 22:34:43     关键词:drawstring

关于网友提出的“C# DrawString 怎么设置字间距和行间距”问题疑问,本网通过在网上对“C# DrawString 怎么设置字间距和行间距”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:

问题:C# DrawString 怎么设置字间距和行间距
描述:

我自己写了一个 方法
//自动换行文字
        private Image drawString(Image image,string text,RectangleF rectF,Font font,Brush brush) {
            if (text != string.Empty && text != "" && text != null && image!=null) {
                Graphics g = Graphics.FromImage(image);
                g.SmoothingMode = SmoothingMode.HighQuality;
                g.CompositingQuality = CompositingQuality.HighQuality;
                g.InterpolationMode = InterpolationMode.High;
                g.DrawString(text, font, brush, rectF);
                g.Dispose();
            }            
            return image;
        }
怎么才能设置 字间距和行间距?


解决方案1:


[DllImport("gdi32.dll")]
public static extern int SetTextCharacterExtra(IntPtr hdc, int nCharExtra);
private Image drawString(Image image,string text,RectangleF rectF,Font font,Brush brush,int nCharExtra) 
{
    if (text != string.Empty && text != "" && text != null && image!=null) 
    {
       Graphics g = Graphics.FromImage(image);
       IntPtr hdc = g.GetHdc();
       SetTextCharacterExtra(hdc, nCharExtra);
       g.ReleaseHdc(hdc);
       g.SmoothingMode = SmoothingMode.HighQuality;
       g.CompositingQuality = CompositingQuality.HighQuality;
       g.InterpolationMode = InterpolationMode.High;
       g.DrawString(text, font, brush, rectF);
       g.Dispose();
   }            
   return image;
}
解决方案2:


//gdi32.dll
原型:int SetTextCharacterExtra(HDC hdc, int nCharExtra);
解决方案3:


//设置字符间隔
[DllImport("gdi32.dll")]
public static extern int SetTextCharacterExtra(IntPtr hdc, int nCharExtra);  

以上介绍了“C# DrawString 怎么设置字间距和行间距”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/963560.html

相关图片

相关文章