Leider gibt es keinen einfachen Weg, ohne eine vollständige Implementierung eines TextFormatter zu machen. MSDN-Artikel zu den Grundlagen eines Advanced TextFormatter :
Das Textlayout und die UI-Steuerelemente in WPF bieten Formatierungseigenschaften, mit denen Sie problemlos formatierten Text in Ihre Anwendung einfügen können. Diese Steuerelemente bieten eine Reihe von Eigenschaften für die Darstellung von Text, einschließlich Schriftart, Schriftgröße und Farbe. Unter normalen Umständen können diese Steuerelemente den Großteil der Textdarstellung in Ihrer Anwendung verarbeiten. Einige erweiterte Szenarien erfordern jedoch die Steuerung von Textspeicher sowie Textdarstellung. WPF bietet zu diesem Zweck eine erweiterbare Textformatierungsengine.
Haben Sie sich die Eigenschaft UIElement.Clip angesehen?
Bei nicht rechteckigem Textumbruch könnten Sie versuchen, eine TextBlock.Clip-Eigenschaft auf ein nicht-rechteckiges Geometry-Objekt zu setzen. Ich habe das nicht versucht; Entweder wird Text außerhalb der Clip-Region nicht gezeichnet, oder der Text wird so umschlossen, dass er in den Clip passt.
Charles Petzold erwähnt diese Technik .