我正在使用一个函数来调用要在一个区域内呈现的一段文本。
该功能的基本工作是:
Dim measureSize as Size
Do
myFont = new Font(myFont.Name, myFont.Size - 1, FontStyle.Regular, GraphicsUnit.Document)
'Initial font size is set insanely high for the moment, during testing.
'Low initial font size is not the problem.
measureSize = g.MeasureString(myString, myFont)
Loop until (measuredSize.width < desiredSize.width AND measuredSize.height < desiredSize.height)
问题在于,MeasureString在正在绘制的字符串周围添加了很多空白,并且最终的字体渲染得太小了。
我确定我记得有人可以摆弄一些参数以删除MeasureString方法中的所有填充,但是我的搜索目前没有任何作用。
有谁知道如何使用MeasureString来测量字符串的精确大小而没有任何边界?
最佳答案
有一个CodeProject的文章绕过此内容:http://www.codeproject.com/KB/GDI-plus/measurestring.aspx
关于.net - Graphics.MeasureString允许太多空白,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/798336/