Class TextBlockBox

All Implemented Interfaces:
Iterable<Box>

public class TextBlockBox extends TextBox
Ein mehrzeiliger Textblock.
Since:
0.41.0
Author:
Josef Friedrich
  • Constructor Details

    • TextBlockBox

      public TextBlockBox(Object content)
      Erzeugt einen mehrzeiligen Textblock.
      Parameters:
      content - Der Inhalt des Textblocks als Zeichenkette.
      Since:
      0.41.0
  • Method Details

    • content

      public TextBlockBox content(Object content)
      Setzt den Inhalt dieses TextBlockBox-Objekts
      Overrides:
      content in class TextBox
      Parameters:
      content - Der zu setzende Inhalt; kann beliebig typisiert sein und wird über String.valueOf(content) in Text umgewandelt
      Returns:
      diese Instanz zur Verkettung weiterer Methodenaufrufe (Fluent API)
      Since:
      0.45.0
    • width

      @API @Setter @ChainableMethod public TextBlockBox width(int width)
      Setzt die Breite des Textblocks.
      Overrides:
      width in class Box
      Parameters:
      width - Die Breite des Textblocks in Pixeln.
      Returns:
      Dieses Objekt für Methodenverkettung.
    • charsPerLine

      @API @Getter public int charsPerLine()
      Gibt die maximale Zeichenbreite pro Zeile des Textblocks.
      Returns:
      Die maximale Zeichenbreite pro Zeile.
    • charsPerLine

      @API @Setter @ChainableMethod public TextBlockBox charsPerLine(int charsPerLine)
      Setzt die maximale Zeichenbreite pro Zeile des Textblocks.
      Parameters:
      charsPerLine - Die maximale Zeichenbreite pro Zeile.
    • hAlign

      @API @Getter public HAlign 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:
      Dieses Objekt für Methodenverkettung.
    • lineSpacing

      @API @Getter public double lineSpacing()
      Gibt den Zeilenabstand.

      Der Zeilenabstand ist ein Faktor, der den Abstand zwischen den Zeilen relativ zum Standardabstand bestimmt. Ein Wert von 1 bedeutet den normalen Zeilenabstand, Werte größer als 1 erhöhen den Abstand, während Werte zwischen 0 und 1 den Abstand verringern. Zum Beispiel würde ein Wert von 1.5 den Zeilenabstand um 50% erhöhen, während ein Wert von 0.75 den Zeilenabstand um 25% verringern würde.

      Returns:
      Der Zeilenabstand.
    • lineSpacing

      @API @Setter @ChainableMethod public TextBlockBox lineSpacing(double lineSpacing)
      Setzt den Zeilenabstand.

      Der Zeilenabstand ist ein Faktor, der den Abstand zwischen den Zeilen relativ zum Standardabstand bestimmt. Ein Wert von 1 bedeutet den normalen Zeilenabstand, Werte größer als 1 erhöhen den Abstand, während Werte zwischen 0 und 1 den Abstand verringern. Zum Beispiel würde ein Wert von 1.5 den Zeilenabstand um 50% erhöhen, während ein Wert von 0.75 den Zeilenabstand um 25% verringern würde.

      Parameters:
      lineSpacing - Der Zeilenabstand.
      Returns:
      Dieses Objekt für Methodenverkettung.
    • lines

      Gibt die intern berechneten, umgebrochenen Textzeilen zurück.
      Returns:
      Eine Liste aus Layout-/Text-Paaren je Zeile.
      Since:
      0.45.0
    • linesText

      @API public String[] linesText()
      Gibt den Textinhalt der einzelnen Zeilen zurück.
      Returns:
      Jede Zeile ist ein Element des Arrays.
      Since:
      0.45.0
    • linesCount

      @API public int 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: Box
      Berechnet 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:
      calculateDimension in class Box