Узнать высоту StiText с многострочным текстом в коде в событии GetValue
Добавлено: 23 май 2019, 10:12
Здравствуйте!
Есть ли возможность средствами StimulReport узнать высоту StiText с многострочным текстом в коде в событии GetValue, чтобы в случае большого текста разделить этот текст на несколько частей по высоте?
Пробую как-то так:
Но этот способ не работает.
Так же пробую через MeasureString
Но выдает приблизительное значение, но не точное.
Если у Вас в StimulReport специальные функции для определения высоты?
Есть ли возможность средствами StimulReport узнать высоту StiText с многострочным текстом в коде в событии GetValue, чтобы в случае большого текста разделить этот текст на несколько частей по высоте?
Пробую как-то так:
Код: Выделить всё
public static double GetHeigth(StiText t, string text)
{
StiComponent c = null;
StiContainer s = new StiContainer();
t.Text = text;
t.Render(ref c, s);
return c.Height;
}
Так же пробую через MeasureString
Код: Выделить всё
public static string GetHeigth(StiText t, string text)
{
const double milimetresPerInch = 25.4;
int w = Convert.ToInt32((t.Width * 10) / milimetresPerInch * StiReport.GlobalMeasureGraphics.DpiX);
SizeF f= StiReport.GlobalMeasureGraphics.MeasureString(
text, t.Font, w);
return (f.Height / StiReport.GlobalMeasureGraphics.DpiY * milimetresPerInch * 0.1).ToString();
}
Если у Вас в StimulReport специальные функции для определения высоты?