measurestring字符串的像素长度

图标

豆瓜

豆瓜网

豆瓜网专栏

首发
豆瓜 图标 2020-06-25 21:55:18

1、    使用g.MeasureString()获得

使用MeasureString测量出来的字符宽度,总是比实际宽度大一些,而且随着字符的长度增大,貌似实际宽度和测量宽度的差距也越来越大了。查了一下MSDN,找到了下面这个理由:MeasureString 方法旨在与个别字符串一起使用,它在字符串前后包括少量额外的空格供突出的标志符号使用。

复制代码

string str;
str = "大";
Font f = new Font("SimSun", 7F, System.Drawing.FontStyle.Regular);
Graphics g = this.CreateGraphics();//单位为mmg.PageUnit = GraphicsUnit.Millimeter;
SizeF sim = g.MeasureString(str, f);

复制代码

 

2、使用TextRenderer.MeasureText获得,提供使用指定尺寸创建文本初始边框时,使用指定的设备上下文、字体和格式说明所绘制的指定文本的尺寸(以像素为单位)。

复制代码

private void MeasureText(PaintEventArgs e) 
{            string str;
            str = "大家好";
            Font f = new Font("SimSun", 7F, System.Drawing.FontStyle.Regular);
            Size sif = TextRenderer.MeasureText(e.Graphics, str, f, new Size(0, 0), TextFormatFlags.NoPadding);
            MessageBox.Show((sif.Width / pdi).ToString());
}private void print(object sender, PaintEventArgs e)
{
            MeasureText(e);
}


本文由豆瓜网专栏作家 豆瓜 投稿发布,并经过豆瓜网编辑审核。

转载此文章须经作者同意,并附上出处(豆瓜网)及本页链接。

若稿件文字、图片、视频等内容侵犯了您的权益,请联系本站进行 投诉处理

相关搜索

measurestring
图标 图标

豆瓜

豆瓜网

豆瓜网专栏

  • measurestring字符串的像素长度

    图标
    豆瓜 图标 · 今天 21:55:18 · 0浏览
  • css样式大全详解

    图标
    豆瓜 图标 · 今天 21:34:18 · 8浏览
  • directoryindex默认索引页面详解

    图标
    豆瓜 图标 · 今天 21:33:41 · 6浏览
  • 全部评论

    豆瓜

    豆瓜网

    豆瓜网专栏

  • measurestring字符串的像素长度
  • css样式大全详解
  • directoryindex默认索引页面详解
  • validaterequest指令作用详解
  • 批处理if命令
  • 我来说两句