Siehe auch:
Allgemein
Textformatierung / Hyperlinks / Anker
Alle Formatierungszeichen stehen in geschweiften Klammern {...} - diese dürfen im Text sonst nicht vorkommen! Im Klammerbereich sind keine Leerzeichen erlaubt. Die Formatierung gilt nur für den jeweiligen Absatz und muss am Absatzbeginn stehen. Mehrere Angaben müssen direkt hintereinander stehen - die Reihenfolge ist beliebig. Beispiel:
RtfLabel1.Text = "{pts/1.5}{pi/1/0}{pri/1}Hier folgt der Text. " |
Die Formatierungsangaben können in Kurzform erfolgen oder durch beliebigen Text nach "/" und vor einzufügendem Doppelpunkt ergänzt: (Beispiel Absatz-Schriftgröße 150% der Standard-Schriftgröße)
{pts/1.5} | |
{pts/RelativeTextSize:1.5} | |
{pts/RelativníVelikostPísma:1.5} ' oder was auch immer |
ParagraphTextSize: {pts/Value:1.5} - relative Schriftgröße für den Absatz
Value: | Zahl 0.1 bis 2 |
ParagraphTextColor: {ptc/ColorId:1} - Textfarbe für den Absatz. ColorId ist der Farb-Index
ColorId: | Zahl 0 bis 9 |
PragraphCenter: {pc} - Absatztext zentriert ausgeben (nicht, wenn Bild und Text in einem Absatz)
ParagraphDistanceTop: {pdt/Distance:0.5} - Abstand zum Vorabsatz - Wert relativ zur Standard-Zeilenhöhe
Distance: | Zahl 0.1 bis 2 |
ParagraphRightIndent: {pri/IndentLevel:2} - rechter Texteinzug
IndentLevel: | Zahl 1 bis 9 |
ParagraphIndent: {pi/IndentLevel:1/OnlyFirstLine:0} - linker Texteinzug
IndentLevel: | Zahl 1 bis 9 | |
OnlyFirstLine: | Zahl 0 oder 1 |
ParagraphBulletIndent: {pbi/IndentLevel:2/MinWidth:x/OnlyFirstLine:0/BulletChars:1./CharsFormat:0/CharsColorId:0} - linker Texteinzug mit Aufzählungszeichen (beliebiger Text)
IndentLevel: | Zahl 1 bis 9 | |
MinWidth: | String zur Berechnung der Mindestbreite der letzten Ebene | |
OnlyFirstLine: | Zahl 0 oder 1 | |
BulletChars: | String | |
CharsFormat: | Zahl 0 bis 3 | |
CharsColorId: | Zahl 0 bis 9 (oder -1 für Standard-Textfarbe) |
ParagraphFrame: {pf/IndentLevel:1/RightIndentLevel:1/FrameColorId:2/BorderWidth:0.3} - farbige Fläche unter dem Absatztext
IndentLevel: | Zahl 0 bis 9 | |
RightIndentLevel: | Zahl 0 bis 9 | |
FrameColorId: | Zahl 0 bis 9 | |
BorderWidth: | Zahl 0 bis 0.9 - Wert relativ zur Standard-Zeilenhöhe |
ParagraphImage: {pimage/Name:PfeilLinks/Width:22/Height:22} - Bild
Name: | String - Groß-/Kleinschreibung wird nicht beachtet | |
Width / Height: | Zahl - Angaben in Pixel |
ParagraphEndContinuousText: {pect} - bei Bildanzeige mit Fließtext diesen Absatz unter dem Bild ausgeben
ParagraphTextSize: {pts/Value}
Relative Schriftgröße für den Absatz (Value 0.1 bis 2)
RtfLabel1.TextSize = 16 'Standard-Schriftgröße | |
RtfLabel1.Text = "{pts/1.5}Dieser Absatztext hat die 1,5-fache Schriftgröße. " 'Schriftgröße: 16 * 1.5 = 24 |
ParagraphTextColor: {ptc/ColorId}
Textfarbe für den Absatz. ColorId ist der Index der dem Label zugewiesenen Textfarben (wie bei Textformatierung {tc0}...):
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 = "{ptc/1}Der Absatztext wird in blauer Farbe ausgegeben. " | |
![]() |
PragraphCenter: {pc}
Absatztext zentriert ausgeben (nicht, wenn Bild und Text in einem Absatz)
RtfLabel1.Text = "{pc}Der Absatztext wird zentriert ausgegeben." | |
![]() |
ParagraphDistanceTop: {pdt/Distance}
Abstand zum Vorabsatz. Distance wird als Wert relativ zur Standard-Zeilenhöhe angegeben: (Wert 0.1 bis 2)
RtfLabel1.TextSize = 16 'Standard-Schriftgröße | |
RtfLabel1.Text = "{pdt/0.5}Der Textabstand zum Vorabsatz beträgt 1/2 Zeilenhöhe. " |
ParagraphRightIndent: {pri/IndentLevel}
Rechter Texteinzug. Die Breite des Einzuges wird generell festgelegt:
RtfLabel1.IndentWidth = "XXX" 'Einzugsbreite pro Ebene - so breit, wie der String "XXX" in der eingestellten Standard-Schriftgröße | |
IndentLevel gibt an, um wie viel Ebenen eingerückt wird: (Wert 1 bis 9) | |
RtfLabel1.Text = "{pri/2}Der Texteinzug rechts beträgt 2 Ebenen. " |
ParagraphIndent: {pi/IndentLevel/OnlyFirstLine}
Linker Texteinzug. IndentLevel wie bei ParagraphRightIndent. Mit OnlyFirstLine wird angegeben, ob nur die erste Zeile oder alle Zeilen im Absatz eingerückt werden:
RtfLabel1.Text = "{pi/1/0}Das ist ein Texteinzug mit Level = 1 und OnlyFirstLine = 0 - alle Zeilen sind eingerückt. " | |
![]() |
|
RtfLabel1.Text = "{pi/1/1}Das ist ein Texteinzug mit Level = 1 und OnlyFirstLine = 1 - nur die erste Zeile ist eingerückt. " | |
![]() |
|
RtfLabel1.Text = "{pi/2/1}Das ist ein Texteinzug mit Level = 2 und OnlyFirstLine = 1 - nur die erste Zeile ist voll eingerückt - die weiteren eine Ebene weiter links. " | |
![]() |
ParagraphBulletIndent: {pbi/IndentLevel/MinWidth/OnlyFirstLine/BulletChars/CharsFormat/CharsColorId}
Linker Texteinzug mit Aufzählungszeichen oder beliebigem vorangestellten Text.
IndentLevel - wie bei PragraphRightIndent und ParagraphIndent (Wert 1 bis 9) | |
MinWidth - Text zur Berechnung der minimalen Breite der letzten Einzugsebene. Ist das Ergebnis kleiner als das Ergebnis aus RtfLabel1.IndentWidth, dann wird IndentWidth verwendet (siehe Beispiel unten). Ein Zeichen muss mindestens angegeben werden. | |
OnlyFirstLine - wie bei ParagraphIndent | |
BulletChars - Aufzählungszeichen wie "●", "○", "1.)", "a" etc. - (keine Leerzeichen!). Sonderfälle: statt "●" Chr(9679) kann "(+)" und statt "○" Chr(9675) kann "(-)" angegeben werden. Leerzeichen müssen als "_" angegeben sein. Der Text von BulletChars wird immer eine Ebene links vom Texteinzug ausgegeben - bei IndentLevel=1 also ganz links. | |
CharsFormat - 0=nichts | 1=Fett | 2=Kursiv | 3=FettKursiv | |
CharsColorId - Index der dem Label zugewiesenen Textfarben (wie bei Textformatierung {tc0}... und ParagraphTextColor) "-1" wenn die Standard- bzw. Absatzschriftfarbe verwendet werden soll. | |
Beispiele: | |
RtfLabel.TextSize = 14 ' Standard-Schriftgröße | |
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.SetTextColors(2, Colors.Magenta) 'Farbe für ColorId 2 | |
RtfLabel1.IndentWidth = "XXX" 'Einzugsbreite pro Ebene so breit, wie der String in der eingestellten Standard-Schriftgröße | |
Lange Schreibweise: (Text vor ":" ist beliebig) | |
RtfLabel1.Text = "{pbi/Level:1/MinWidth:x/OnlyFirstLine:0/Chars:(+)/Format:0/ColorId:-1}Hier folgt der Text, der eingezogen dargestellt wird. " | |
Kurze Schreibweise: | |
RtfLabel1.Text = "{pbi/1/x/0/(+)/0/-1}Hier folgt der Text, der eingezogen dargestellt wird. " | |
![]() |
|
RtfLabel1.Text = "{pbi/2/x/0/(-)/0/-1}Hier folgt der Text, der eingezogen dargestellt wird. " | |
![]() |
|
RtfLabel1.Text = "{pbi/1/x/1/(+)/0/-1}Hier folgt der Text, der nur in der ersten Zeile eingezogen ist. " | |
![]() |
|
RtfLabel1.Text = "{pbi/2/x/1/(-)/0/-1}Hier folgt der Text, der nur in der ersten Zeile voll eingezogen ist. " | |
![]() |
|
RtfLabel1.Text = "{pbi/1/x/0/1.)/1/1}Hier folgt der Text, der eingezogen dargestellt wird. " | |
![]() |
|
Wenn der Text von BulletChars in einem Absatz zu breit ist, dann kann die Mindestbreite für die letzte Ebene festgelegt werden, ohne den Standardeinzug zu vergrößern: (das breiteste Wort einer Aufzählung wird zur Berechnung angegeben - hier "Magenta" + Abstand "XX") | |
Text = "{pbi/2/MagentaXX/0/Magenta/1/2}Hier folgt der Text zur Farbe {b}Magenta{b} und deren ... " & CRLF & CRLF | |
Text = Text & "{pbi/2/MagentaXX/0/Blau/1/1}Hier folgt der Text zur Farbe {b}Blau{b} und deren Bedeutung ..." & CRLF & CRLF | |
RtfLabel1.Text = Text | |
![]() |
|
Die etwas ungewöhnliche Art der Angabe zur Einzugsbreite hat den Vorteil, dass die Maße unabhängig von der letztlich verwendeten Schriftart und Schriftgröße immer stimmen. |
ParagraphFrame: {pf/IndentLevel/RightIndentLevel/FrameColorId/BorderWidth}
Farbige Fläche unter dem Absatztext. Die Höhe des Frame wird von der Gesamt-Texthöhe des Absatzes bestimmt.
IndentLevel - wie bei ParagraphIndent und PragraphRightIndent - unabhängig von der dortigen Einstellung. Wenn der Text z.B. zwei Ebenen eingezogen ist, kann der Frame auch ohne Einzug dargestellt werden. | |
FrameColorId - ist der Index der dem Label zugewiesenen Farben für Frames: (Wert 0 bis 9) | |
RtfLabel1.SetFrameColors(0, Colors.Yellow) 'Farbe für FrameColorId 0 | |
RtfLabel1.SetFrameColors(1, Colors.LightGray) 'Farbe für FrameColorId 1 | |
'... | |
BorderWidth - zusätzlicher Rand um den Frame - Wert 0 - 0.9 (relativ zur Standard-Zeilenhöhe) | |
RtfLabel1.Text = "{pf/1/1/1/0.5}{pi/2/0}{pri/2}Das ist ein Text mit Frame, als Gestaltungselement. " | |
![]() |
ParagraphImage: {pimage/Name/Width/Height}
Bilder können nur am Absatzbeginn stehen (auch nach anderen Absatzformatierungen) und müssen dort definiert werden - Bilder im Text sind nicht möglich.
Name - ist die Angabe zum Bild, die beim Zuweisen festgelegt wurde: | |
RtfLabel1.SetImages("PfeilL", LoadBitmap(File.DirAssets,"PfeilLinks.bmp")) | |
RtfLabel1.SetImages("PfeilR", LoadBitmap(File.DirAssets,"PfeilRechts.bmp")) | |
oder der Dateiname im Ordner "File.DirAssets" (Erkennungszeichen ist der "." in Name). Die Groß-/Kleinschreibung wird nicht beachtet. | |
Width / Height - Breite und Höhe in Pixel(!) - keine Angabe "dip" - das wird automatisch beachtet. | |
RtfLabel1.Text = "{pimage/PfeilL/22/22}Hier folgt der Text zum Bild..." | |
oder: | |
RtfLabel1.Text = "{pimage/PfeilLinks.bmp/22/22}Hier folgt der Text zum Bild..." | |
![]() |
|
Der Abstand zum Text und zu ggf. weiteren Bildern im Absatz, wird generell festgelegt: | |
RtfLabel1.ImagesBorder = 6dip 'Rand rechts und unten | |
Sollen Bilder zentriert angezeigt werden, dann müssen sie allein im Absatz stehen: | |
RtfLabel1.Text = "{pc}{pimage/PfeilL/22/22}{pimage/PfeilR/22/22}" & CRLF & "Hier folgt der Text zu den Bildern..." | |
![]() |
ParagraphEndContinuousText: {pect}
Bei Bildanzeige mit Fließtext diesen Absatz unter dem Bild ausgeben.
RtfLabel1.Text = "{pimage/PfeilLinks.bmp/22/22}Mein Pfeil!" & CRLF & "Der nächste Absatz gehört nicht zum Bild. " | |
![]() |
|
Um die Textausgabe unter dem Bild zu erzwingen, kann der Fließtext mit {pect} abgebrochen werden: | |
RtfLabel1.Text = "{pimage/PfeilLinks.bmp/22/22}Mein Pfeil!" & CRLF & "{pect}Der nächste Absatz gehört nicht zum Bild. " | |
![]() |
|
Im Beispiel würde auch das Einfügen einer Leerzeile reichen - bei längerem Fließtext ist allerdings nicht vorhersehbar, wo er endet, da das von der Labelbreite abhängt. |