Benutzerdefinierte Textumbruch in WPF

8

Gibt es eine Möglichkeit, Text in einem nicht rechteckigen Container in WPF zu verpacken?

So wird es in Photoshop gemacht

    
viggity 20.09.2008, 16:41
quelle

2 Antworten

3

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.

    
user7116 20.09.2008, 22:39
quelle
1

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 .

    
Judah Himango 20.09.2008 21:53
quelle

Tags und Links