次のようなコードがある場合:
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 テキスト レンダリング手法を使用することもできます。
ありがとう!