C#如何通过MeasureString、Graphics获取字符串的像素长度
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获取字符串的像素长度相关推荐
- c# 计算空格宽度像素_黄聪:C#如何通过MeasureString、Graphics获取字符串的像素长度...
1. 使用g.MeasureString()获得 使用MeasureString测量出来的字符宽度,总是比实际宽度大一些,而且随着字符的长度增大,貌似实际宽度和测量宽度的差距也越来越大了.查了一 ...
- python根据不同字体字号获取字符串的像素长度和高度
line = '希望有一天变成大牛' font = ImageFont.truetype(font_family, font_size, 0) width, height = font.getsize ...
- 获取字符串的真实长度
这几天写程序要用到字符串的真实长度,可是MSsql 的len函数只能获取字的长度,无法获取真实的长度 也就是在网页里面所占的字符 因为英文"a"与中文 "的"所 ...
- python想获取字符串str的长度_如何使用python获取字符串长度?哪些方法?
掌握多种python技巧,对于我们更好的灵活应用python是非常重要的,比如接下来给大家介绍的获取字节长度,那大家脑海里就该有印象了,有几种方法呢?一起来看下吧~ 1.使用len()函数 这是最直接 ...
- duilib获取字符串的像素长
CDuiString m_test_string = _T("测试字符串")HDC m_hDc = m_pm.GetPaintDC();// 100 是xml中配置的字体的编号HF ...
- js获取字符串的字节长度
//字符编码数值对应的存储长度: //UCS-2编码(16进制) UTF-8 字节流(二进制) //0000 - 007F 0xxxxxxx (1字节) //0 ...
- JS获取字符串实际长度!
今天又添加一个小东西!一个程序员经常要用到的字符串长度检测方法,由于JS原先的长度中文跟英文一样一个字符为1个长度.所以这里就得需要大家自己判断并获取字符串的实际长度了. 核心代码: var jmz ...
- java中.length得到结果_Java length()方法:获取字符串的长度
Java String中的 length() 方法用于获取字符串的长度,并以 in t型变量返回该字符串的长度. 语法: length(); 示例 使用 length() 函数获取字符串 strCom ...
- php:获取字符串的长度
获取字符串的长度 php中有一个神奇的函数,可以直接获取字符串的长度,这个函数就是strlen(). 例子如下: $str = 'hello'; $len = strlen($str); echo $ ...
最新文章
- 基于OpenCasCade的程序发布问题
- 2021年了,该拥有自己的深度学习框架了
- 美国研发出百万兆级计算机 Summit,“最强超算”竞争加剧
- 矛与盾:二进制漏洞攻防思想对抗
- java 快排非递归_C++ 中快排的递归和非递归实现
- 普林斯顿微积分读本:第 2 章 三角学回顾
- dw自动滚动图片_3分钟搞定图片懒加载
- python运行是哪个键_python – 如何使用回车键调用按钮命令
- Python与MySQL连接
- 推荐算法是今日头条的核心竞争力吗?
- 两篇 Spring 总结(一)
- 开源项目贡献者_扩大项目贡献者基础的5种方法
- 【英语学习】【医学】Unit 09 The Respiratory System
- 【论文翻译】卷积神经网络图像风格转移 Image StyleTransfer Using Convolutional Neural Networks
- 五年级上册用计算机探索规律思维导图,五年级上册数学第一单元思维导图 包括小数乘整数小数乘小数积的...
- 电脑快捷键大全 Alt
- 解决chrome/IE浏览器被桔梗导航劫持的问题
- 2_Gui_Tkinter(python标准库)
- Dev-c++怎么设置背景色
- TeamViewer被发现用于(检测为)商业用途解决方案(绝对有效)
热门文章
- vue 3 学习笔记 (八)——provide 和 inject 用法及原理
- C++模拟化学物质合成程序《化学家》V1.0.5
- vm怎么修改虚拟机设置选项高级文件位置配置
- PreferenceManager.getDefaultSharedPreferences(SettingsActivity.this);
- 解决电脑80端口被占用问题!亲测有用!!!
- 校招内卷实况:985211的秋招,从春天开始
- LDAP基础安装与简单入门使用
- android gridview滑动卡,ViewPager嵌套GridView引发的一系列UI卡顿不顺畅的问题
- C#高级篇(二)---LINQ、反射、线程
- JavaBeans规范