C# 如何从字符串计算浮点值

C# 如何从字符串计算浮点值,c#,drawing,calculation,C#,Drawing,Calculation,我不知道如何从字符串计算浮点值 float x = 300.0F; Dictionary<short, string> stringDict = new Dictionary<short, string>(); Dictionary<short, string> whiteSpace = new Dictionary<short, string>(); string row1 = new String(' ', 67); whiteSpace.A

我不知道如何从字符串计算浮点值

float x = 300.0F;
Dictionary<short, string> stringDict = new Dictionary<short, string>();
Dictionary<short, string> whiteSpace = new Dictionary<short, string>();

string row1 = new String(' ', 67);
whiteSpace.Add(1, row1);
stringDict.Add(1, rtBox.Substring(12, 31).Replace("\n", " "));

graphicsObj.DrawString(whiteSpace[i] + stringDict[i], drawFont, drawBrush, x, y, drawFormat);
如何计算此浮点值,以便省略图形空白

编辑1:下面的代码不起作用,它没有在x轴上移动图形

for (short i = 1; i <= 28; i++)
{
     SizeF rowSize = graphicsObj.MeasureString(whiteSpace[i], drawFont);
     float widthRow = rowSize.Width;
     graphicsObj.DrawString(stringDict[i], drawFont, drawBrush, x + widthRow, y, drawFormat);
      y += 15.0F;
}

如果您想计算字符串的大小,可以尝试使用MeasureString,但是,根据问题,这对只有空格的字符串不起作用。作为一种解决方法,您可以尝试在空字符串的末尾添加一个字符,或者简单地用另一个字符替换空白以获得度量值,例如:

string row1 = new String(' ', 66) + "#";
SizeF rowSize = graphicsObj.MeasureString(row1, drawFront);
float width = rowSize.Width;
float height = rowSize.Height;

您能否共享示例输入值和预期输出?Hello@ChetanRanpariya-输入是字符串行1您有一个字符串,其中包含67个连续空格字符。。。你希望得到什么输出?@ChetanRanpariya这就是问题所在,我想省略绘制这67个空格字符的步骤,我想计算我必须在这67个字符的基础上移动多少图形,所以我需要将这个值添加到x,即floatx+rowSize,操作数+不能应用于类型SizeF和floatCheck更新,你可以从SizeF中得到宽度或高度。我会接受这个答案,但是它对空间字符不起作用。完美的,我做了变通,我想用备注更新我的问题,你的解决方案对其他字符有效,但被拒绝了。无论如何,非常感谢您的帮助,一切都很完美:
string row1 = new String(' ', 66) + "#";
SizeF rowSize = graphicsObj.MeasureString(row1, drawFront);
float width = rowSize.Width;
float height = rowSize.Height;