1、    使用g.MeasureString()获得

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

string str;
str = "大";
Font f = new Font("SimSun", 7F, System.Drawing.FontStyle.Regular);
Graphics g = this.CreateGraphics();//单位为mm
g.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);本文转自黄聪博客园博客,原文链接:http://www.cnblogs.com/huangcong/p/4158700.html,如需转载请自行联系原作者

C#如何通过MeasureString、Graphics获取字符串的像素长度相关推荐

  1. c# 计算空格宽度像素_黄聪:C#如何通过MeasureString、Graphics获取字符串的像素长度...

    1.    使用g.MeasureString()获得 使用MeasureString测量出来的字符宽度,总是比实际宽度大一些,而且随着字符的长度增大,貌似实际宽度和测量宽度的差距也越来越大了.查了一 ...

  2. python根据不同字体字号获取字符串的像素长度和高度

    line = '希望有一天变成大牛' font = ImageFont.truetype(font_family, font_size, 0) width, height = font.getsize ...

  3. 获取字符串的真实长度

    这几天写程序要用到字符串的真实长度,可是MSsql 的len函数只能获取字的长度,无法获取真实的长度 也就是在网页里面所占的字符 因为英文"a"与中文 "的"所 ...

  4. python想获取字符串str的长度_如何使用python获取字符串长度?哪些方法?

    掌握多种python技巧,对于我们更好的灵活应用python是非常重要的,比如接下来给大家介绍的获取字节长度,那大家脑海里就该有印象了,有几种方法呢?一起来看下吧~ 1.使用len()函数 这是最直接 ...

  5. duilib获取字符串的像素长

    CDuiString m_test_string = _T("测试字符串")HDC m_hDc = m_pm.GetPaintDC();// 100 是xml中配置的字体的编号HF ...

  6. js获取字符串的字节长度

    //字符编码数值对应的存储长度:      //UCS-2编码(16进制) UTF-8 字节流(二进制)     //0000 - 007F       0xxxxxxx (1字节)      //0 ...

  7. JS获取字符串实际长度!

    今天又添加一个小东西!一个程序员经常要用到的字符串长度检测方法,由于JS原先的长度中文跟英文一样一个字符为1个长度.所以这里就得需要大家自己判断并获取字符串的实际长度了. 核心代码: var jmz ...

  8. java中.length得到结果_Java length()方法:获取字符串的长度

    Java String中的 length() 方法用于获取字符串的长度,并以 in t型变量返回该字符串的长度. 语法: length(); 示例 使用 length() 函数获取字符串 strCom ...

  9. php:获取字符串的长度

    获取字符串的长度 php中有一个神奇的函数,可以直接获取字符串的长度,这个函数就是strlen(). 例子如下: $str = 'hello'; $len = strlen($str); echo $ ...

最新文章

  1. 基于OpenCasCade的程序发布问题
  2. 2021年了,该拥有自己的深度学习框架了
  3. 美国研发出百万兆级计算机 Summit,“最强超算”竞争加剧
  4. 矛与盾:二进制漏洞攻防思想对抗
  5. java 快排非递归_C++ 中快排的递归和非递归实现
  6. 普林斯顿微积分读本:第 2 章 三角学回顾
  7. dw自动滚动图片_3分钟搞定图片懒加载
  8. python运行是哪个键_python – 如何使用回车键调用按钮命令
  9. Python与MySQL连接
  10. 推荐算法是今日头条的核心竞争力吗?
  11. 两篇 Spring 总结(一)
  12. 开源项目贡献者_扩大项目贡献者基础的5种方法
  13. 【英语学习】【医学】Unit 09 The Respiratory System
  14. 【论文翻译】卷积神经网络图像风格转移 Image StyleTransfer Using Convolutional Neural Networks
  15. 五年级上册用计算机探索规律思维导图,五年级上册数学第一单元思维导图 包括小数乘整数小数乘小数积的...
  16. 电脑快捷键大全 Alt
  17. 解决chrome/IE浏览器被桔梗导航劫持的问题
  18. 2_Gui_Tkinter(python标准库)
  19. Dev-c++怎么设置背景色
  20. TeamViewer被发现用于(检测为)商业用途解决方案(绝对有效)

热门文章

  1. vue 3 学习笔记 (八)——provide 和 inject 用法及原理
  2. C++模拟化学物质合成程序《化学家》V1.0.5
  3. vm怎么修改虚拟机设置选项高级文件位置配置
  4. PreferenceManager.getDefaultSharedPreferences(SettingsActivity.this);
  5. 解决电脑80端口被占用问题!亲测有用!!!
  6. 校招内卷实况:985211的秋招,从春天开始
  7. LDAP基础安装与简单入门使用
  8. android gridview滑动卡,ViewPager嵌套GridView引发的一系列UI卡顿不顺畅的问题
  9. C#高级篇(二)---LINQ、反射、线程
  10. JavaBeans规范