テキストを固定幅に折り返すと、MeasureString がテキスト文字列に対して誤った高さを返すのはなぜですか?
var labelFont = new Font("Courier New", 11, FontStyle.Bold);
StringFormat format = StringFormat.GenericTypographic;
format.FormatFlags |= StringFormatFlags.MeasureTrailingSpaces;
var size = g.MeasureString("This is a very very very very very very very very very long string", labelFont, 300, format);
size.Height
間違った値を与えます。実際の高さのようなものを取得するには、返された高さの約 1/3 を取得する必要があることがわかりました。
背景画像に文字列を描画しようとしています。そのため、次のテキスト文字列の原点の y 値を知るために、ラップされたテキストの高さを知る必要があります。
このコードは、ASP.NET Web アプリケーション内で使用されています。