Library "RtfLabel" - Textformatierung / Hyperlinks / Anker

Siehe auch:
Allgemein 
Absatzformatierung 

Alle Formatierungszeichen stehen in geschweiften Klammern {...} - diese dürfen im Text sonst nicht vorkommen! Im Klammerbereich sind keine Leerzeichen erlaubt. Der Formatierungsbereich ist auf den jeweiligen Textabsatz beschränkt - Beispiel:

richtig:
RtfLabel1.Text = "{b}Dieser Text ist fett.{b} " & CRLF & "{b}Dieser Text auch.{b} "
falsch:
RtfLabel1.Text = "{b}Dieser Text ist fett. " & CRLF & "Dieser Text auch.{b} "

 

Überblick

Bold: {b} - Text fett - Zeichen muss paarweise vorhanden sein.

Italic: {i} - Text kursiv - Zeichen muss paarweise vorhanden sein.

TextColor: {tc0} ... {tc9} - Schriftfarbe für Textbereiche - Zeichen müssen paarweise vorhanden sein.

Small: {s} - small text size - kleine Schriftgröße - Zeichen muss paarweise vorhanden sein.

Hyperlink: {h/EventText}AnzeigeText{h} - Link

Anchor: {a/Bezeichnung} - Anker

Textformatierung

Bold: {b} - Text fett - Zeichen muss paarweise vorhanden sein. Beispiel:

RtfLabel1.Text = "Dieses {b}Wort{b} ist fett. "

Italic: {i} - Text kursiv - Zeichen muss paarweise vorhanden sein. Beispiel:

RtfLabel1.Text = "Dieses {i}Wort{i} ist kursiv. "

TextColor: {tc0} ... {tc9} - Schriftfarbe für Textbereiche - Zeichen müssen paarweise vorhanden sein. Die Zahl 0 bis 9 ist der Index der dem Label zugewiesenen Textfarben - Beispiel:

RtfLabel1.TextColor = Colors.Black      'Standard-Schriftfarbe
 
RtfLabel1.SetTextColors(0, Colors.Red)  'Farbe für ColorId 0
RtfLabel1.SetTextColors(1, Colors.Blue) 'Farbe für ColorId 1
'...
 
RtfLabel1.Text = "Das {tc0}Wort{tc0} ist rot, dieses {tc1}{b}blau{b}{tc1}, der Rest ist schwarz. "

Small: {s} - small text size - kleine Schriftgröße - Zeichen muss paarweise vorhanden sein. Beispiel:

RtfLabel1.TextSize = 20       'Standard-Schriftgröße
RtfLabel1.TextSizeSmall = 0.8 'Faktor für kleine Schrift
 
RtfLabel1.Text = "Dieses {s}Wort{s} ist kleiner als der Rest . "
'Schriftgröße: 20 * 0.8 = 16
 
Wurde die Schriftgröße für den Absatz festgelegt, bezieht sich der Faktor auf diese Größe: ({pts = ParagraphTextSize)
RtfLabel1.Text = "{pts/1.5}Dieses {s}Wort{s} ist kleiner als der Rest . "
'Schriftgröße: 20 * 1.5 * 0.8 = 24

 

Hyperlink

Hyperlinks können an beliebiger Stelle eingefügt werden - auch als Wortteil oder mehrere Wörter umfassend. Die Struktur ist: {h/EventText}AnzeigeText{h}. Die Einstellungen gelten für alle Hyperlinks im Text:

RtfLabel1.LinkFormat = 1 '1=unterstrichen | 2=farbig | 3=beides
RtfLabel1.LinkTextColor = Colors.Magenta 'nur für LinkFormat > 1
RtfLabel1.LinkPressedColor = Colors.Yellow 'Hintergrundfarbe wenn gedrückt
RtfLabel1.LinkPressedCornerRadius = 0 'Eckenradius 0=keiner)
 
RtfLabel1.Text = "Text mit {h/MeinLink1}Hyperlink{h} und so weiter. "
RtfLabel1.Text = "Text {h/MeinLink2}mit Hyperlink{h} und so weiter. "
RtfLabel1.Text = "Text mit Hyper{h/MeinLink3}link{h} und so weiter. "
 
Nach "{h/..." steht der Text, der im Ereignis LinkClick zur Verfügung gestellt wird:
Sub RtfLabel1_LinkClick(LinkEventText As String)
    Log("LinkClick: " & LinkEventText)
End Sub
 
Der EventText darf keine Leerzeichen enthalten!

Anchor

Anker können an beliebiger Stelle eingefügt werden. Sie dienen als Sprungmarken in längeren Texten. Die Struktur ist: {a/Bezeichnung}. "Bezeichnung" kann beliebiger Text ohne Leerzeichen sein.

RtfLabel1.Text = "... Das ist {a/MeinAnker}ein Text mit Anker. "
 
Mit GoToAnchor die Textstelle in den sichtbaren Bereich bringen:
RtfLabel1.GoToAnchor("MeinAnker")

(nach oben)