Class TextBlockBox
- Since:
- 0.41.0
- Author:
- Josef Friedrich
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final recordEine Zeile des Textblocks. -
Field Summary
Fields inherited from class pi.graphics.boxes.Box
childs, definedHeight, definedWidth, disabled, height, measureDimensionTwice, parent, supportsDefinedDimension, width, x, y -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidBerechnet rekursiv die Abmessung (die Höhe und Breite) der eigenen Box.intGibt die maximale Zeichenbreite pro Zeile des Textblocks.charsPerLine(int charsPerLine) Setzt die maximale Zeichenbreite pro Zeile des Textblocks.Setzt den Inhalt des Textblocks.hAlign()Gibt die horizontale Ausrichtung der einzelnen Textzeilen.Setzt die horizontale Ausrichtung der einzelnen Textzeilen.lines()Gibt die intern berechneten, umgebrochenen Textzeilen zurück.intGibt die Anzahl der Zeilen in diesem Textblock zurück.doubleGibt den Zeilenabstand.lineSpacing(double lineSpacing) Setzt den Zeilenabstand.String[]Gibt den Textinhalt der einzelnen Zeilen zurück.width(int width) Setzt die Breite des Textblocks.Methods inherited from class pi.graphics.boxes.TextBox
color, color, color, content, content, font, font, font, fontSize, fontStyle, fontStyle, fontStyleMethods inherited from class pi.graphics.boxes.LeafBox
calculateAnchors, numberOfChildsMethods inherited from class pi.graphics.boxes.Box
anchor, debug, disable, disabled, enable, hasDefiniedDimension, hasOnlyDefiniedHeight, hasOnlyDefiniedWidth, height, height, heightMeter, iterator, measure, measureAnchors, measureDimension, remeasure, render, round, toggle, toString, width, widthMeter, x, x, x, y, y, yMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface java.lang.Iterable
forEach, spliterator
-
Constructor Details
-
TextBlockBox
Erzeugt einen mehrzeiligen Textblock.- Parameters:
content- Der Inhalt des Textblocks. Es können mehrere Eingabewerte angegeben werden. Jeder Eingabewert wird in eine eigene Zeile gesetzt.- Since:
- 0.41.0
-
-
Method Details
-
content
Setzt den Inhalt des Textblocks.- Parameters:
content- Der Inhalt des Textblocks. Es können mehrere Eingabewerte angegeben werden. Jeder Eingabewert wird in eine eigene Zeile gesetzt.- Returns:
- Eine Referenz auf die eigene Instanz der Box, damit nach dem
Erbauer/Builder-Entwurfsmuster die Eigenschaften der Box durch
aneinander gekettete Setter festgelegt werden können, z.B.
box.x(..).y(..). - Since:
- 0.45.0
-
width
Setzt die Breite des Textblocks. -
charsPerLine
Gibt die maximale Zeichenbreite pro Zeile des Textblocks.- Returns:
- Die maximale Zeichenbreite pro Zeile.
-
charsPerLine
Setzt die maximale Zeichenbreite pro Zeile des Textblocks.- Parameters:
charsPerLine- Die maximale Zeichenbreite pro Zeile.- Returns:
- Eine Referenz auf die eigene Instanz der Box, damit nach dem
Erbauer/Builder-Entwurfsmuster die Eigenschaften der Box durch
aneinander gekettete Setter festgelegt werden können, z.B.
box.x(..).y(..).
-
hAlign
Gibt die horizontale Ausrichtung der einzelnen Textzeilen.- Returns:
- Die horizontale Ausrichtung.
-
hAlign
Setzt die horizontale Ausrichtung der einzelnen Textzeilen.- Parameters:
hAlign- Die gewünschte horizontale Ausrichtung.- Returns:
- Eine Referenz auf die eigene Instanz der Box, damit nach dem
Erbauer/Builder-Entwurfsmuster die Eigenschaften der Box durch
aneinander gekettete Setter festgelegt werden können, z.B.
box.x(..).y(..).
-
lineSpacing
Gibt den Zeilenabstand.Der Zeilenabstand ist ein Faktor, der den Abstand zwischen den Zeilen relativ zum Standardabstand bestimmt. Ein Wert von
1bedeutet den normalen Zeilenabstand, Werte größer als1erhöhen den Abstand, während Werte zwischen0und1den Abstand verringern. Zum Beispiel würde ein Wert von1.5den Zeilenabstand um50%erhöhen, während ein Wert von0.75den Zeilenabstand um25%verringern würde.- Returns:
- Der Zeilenabstand.
-
lineSpacing
Setzt den Zeilenabstand.Der Zeilenabstand ist ein Faktor, der den Abstand zwischen den Zeilen relativ zum Standardabstand bestimmt. Ein Wert von
1bedeutet den normalen Zeilenabstand, Werte größer als1erhöhen den Abstand, während Werte zwischen0und1den Abstand verringern. Zum Beispiel würde ein Wert von1.5den Zeilenabstand um50%erhöhen, während ein Wert von0.75den Zeilenabstand um25%verringern würde.- Parameters:
lineSpacing- Der Zeilenabstand.- Returns:
- Eine Referenz auf die eigene Instanz der Box, damit nach dem
Erbauer/Builder-Entwurfsmuster die Eigenschaften der Box durch
aneinander gekettete Setter festgelegt werden können, z.B.
box.x(..).y(..).
-
lines
Gibt die intern berechneten, umgebrochenen Textzeilen zurück.- Returns:
- Eine Liste aus Layout-/Text-Paaren je Zeile.
- Since:
- 0.45.0
-
linesText
Gibt den Textinhalt der einzelnen Zeilen zurück.- Returns:
- Jede Zeile ist ein Element des Arrays.
- Since:
- 0.45.0
-
linesCount
Gibt die Anzahl der Zeilen in diesem Textblock zurück.- Returns:
- Die Anzahl der Zeilen.
- Since:
- 0.45.0
-
calculateDimension
protected void calculateDimension()Description copied from class:BoxBerechnet rekursiv die Abmessung (die Höhe und Breite) der eigenen Box.Single-Child-Code-Beispiel
protected void calculateDimension() { width = child.width + 2 * margin; height = child.height + 2 * margin; }Multiple-Child-Code-Beispiel
protected void calculateDimension() { int maxWidth = 0; for (Box child : childs) { if (child.width > maxWidth) { maxWidth = child.width; } height += child.height; } width = maxWidth; }- Specified by:
calculateDimensionin classBox
-