C# 如何在位图中找到绘制字符串的宽度
在位图中绘制字符串时,如何计算字符串的宽度和高度C# 如何在位图中找到绘制字符串的宽度,c#,winforms,C#,Winforms,在位图中绘制字符串时,如何计算字符串的宽度和高度 String s="how are you?"; Sraphic boxgraphic; Bitmap box; boxgrpahic=Graphic.fromimage(box); boxgraphic.DrawString(s, new Font("Arial", 10pt), new SolidBrush(Color.black), new Point(0,0)); 我有一个从pt到像素的转换表,但这不是一个公式 在另一个问题中,回答了这
String s="how are you?";
Sraphic boxgraphic;
Bitmap box;
boxgrpahic=Graphic.fromimage(box);
boxgraphic.DrawString(s, new Font("Arial", 10pt), new SolidBrush(Color.black), new Point(0,0));
我有一个从pt到像素的转换表,但这不是一个公式
在另一个问题中,回答了这个问题,但这是不可行的
点=像素*72/96
如何通过像素(公式)找到绘制字符串的宽度?在绘制字符串之前,使用其中一个重载获取字符串尺寸
boxgrpahic=graphic.fromimage(box);
var size = boxgraphic.MeasureString(s, new Font("Arial", 10pt));
var widthPixels = size.Width;
boxgraphic.DrawString(s, new Font("Arial", 10pt), new SolidBrush(Color.black), new point(0,0));
使用
graphic.MeasureString(s,新字体(“Arial”,10pt))
您还可以添加一个
StringFormat.genericyprographic
参数以提高精度。此代码看起来无效-位图
和图形
不是内置类型。你是说位图
和图形
?C#是区分大小写的,你知道……TrueType暗示会击败表格。使用Graphics.MeasureString()。是。。。我不注意那个。。。。