C# 使用FormattedText对象,如何确定实际显示了多少文本?
如果我有这样的代码:C# 使用FormattedText对象,如何确定实际显示了多少文本?,c#,wpf,windows,text-formatting,C#,Wpf,Windows,Text Formatting,如果我有这样的代码: FormattedText text = new FormattedText(sTheBook, System.Globalization.CultureInfo.CurrentUICulture, System.Windows.FlowDirection.LeftToRight, new Typeface("Times New Roman"), 13, Brushes.Black); text.MaxTextWidth
FormattedText text = new FormattedText(sTheBook,
System.Globalization.CultureInfo.CurrentUICulture,
System.Windows.FlowDirection.LeftToRight,
new Typeface("Times New Roman"),
13, Brushes.Black);
text.MaxTextWidth = 300;
text.MaxTextHeight = 600;
text.TextAlignment = TextAlignment.Justify;
dc.DrawText(text, new Point(10, 0));
…然后,如果它很长,屏幕上将只显示我传入的部分文本(通过sTheBook)。我需要知道显示了多少,以便以后可以显示其余的内容!我可以很容易地测量文本的数量,但通过一遍又一遍地渲染和重新渲染文本来进行搜索,直到找到完全适合的文本,这似乎很愚蠢
如果WPF具有此功能,我愿意使用其他WPF文本呈现技术
谢谢 您可以通过查看宽度和高度属性来确定其大小。这将在应用断线后为您提供“所需大小”