Как определить как переносятся строки при отрисовке много строчного текста?
Текст отрисовывается:
var _numberLines = GetNumOfLines($"{_property.Текст}", (int)(PicBoxWidth - 6), _font);
var _offcet = _font.Height * _numberLines;
g.DrawString($"{_property.Текст}", _font, Brushes.Black, new RectangleF(5, 0, PicBoxWidth - 6, _offcet), new StringFormat(StringFormatFlags.LineLimit));
где число строк определяется:
private int GetNumOfLines(string multiPageString, int wrapWidth, Font fnt)
{
var sfFmt = new StringFormat(StringFormatFlags.LineLimit);
using(var g = Graphics.FromImage(New Bitmap(1, 1)))
{
var iHeight = g.MeasureString(multiPageString, fnt, wrapWidth, sfFmt).Height;
var iOneLineHeight = g.MeasureString("Z", fnt, wrapWidth, sfFmt).Height;
return (int)(iHeight / iOneLineHeight)
}
}
Есть у кого мысли?