Module javafx.graphics
Package javafx.scene.text

## Class Text

- java.lang.Object
- - javafx.scene.Node
  - - javafx.scene.shape.Shape
    - - javafx.scene.text.Text

- All Implemented Interfaces:
    `Styleable`, `EventTarget`

      @DefaultProperty("text")
      public class Text
      extends Shape

  The `Text` class defines a node that displays a text. Paragraphs are separated by `'\n'` and the text is wrapped on paragraph boundaries.

      import javafx.scene.text.*;

      Text t = new Text(10, 50, "This is a test");
      t.setFont(new Font(20));

      import javafx.scene.text.*;

      Text t = new Text();
      text.setFont(new Font(20));
      text.setText("First row\nSecond row");

      import javafx.scene.text.*;

      Text t = new Text();
      text.setFont(new Font(20));
      text.setWrappingWidth(200);
      text.setTextAlignment(TextAlignment.JUSTIFY)
      text.setText("The quick brown fox jumps over the lazy dog");

  Since:
    JavaFX 2.0

- - ### Property Summary

    Properties
    Type | Property | Description
    --- | --- | ---
    `ReadOnlyDoubleProperty` | `baselineOffset` | The 'alphabetic' (or roman) baseline offset from the Text node's layoutBounds.minY location.
    `ObjectProperty<TextBoundsType>` | `boundsType` | Determines how the bounds of the text node are calculated.
    `BooleanProperty` | `caretBias` | The type of caret bias in the content.
    `IntegerProperty` | `caretPosition` | The caret index in the content.
    `ReadOnlyObjectProperty<PathElement[]>` | `caretShape` | The shape of caret, in local coordinates.
    `ObjectProperty<Font>` | `font` | Defines the font of text.
    `ObjectProperty<FontSmoothingType>` | `fontSmoothingType` | Specifies a requested font smoothing type: gray or LCD.
    `DoubleProperty` | `lineSpacing` | Defines the vertical space in pixel between lines.
    `IntegerProperty` | `selectionEnd` | The end index of the selection in the content.
    `ObjectProperty<Paint>` | `selectionFill` | The fill color of selected text.
    `ReadOnlyObjectProperty<PathElement[]>` | `selectionShape` | The shape of the selection in local coordinates.
    `IntegerProperty` | `selectionStart` | The start index of the selection in the content.
    `BooleanProperty` | `strikethrough` | Defines if each line of text should have a line through it.
    `ObjectProperty<TextAlignment>` | `textAlignment` | Defines horizontal text alignment in the bounding box.
    `ObjectProperty<VPos>` | `textOrigin` | Defines the origin of text coordinate system in local coordinates.
    `StringProperty` | `text` | Defines text string that is to be displayed.
    `BooleanProperty` | `underline` | Defines if each line of text should have a line below it.
    `DoubleProperty` | `wrappingWidth` | Defines a width constraint for the text in user space coordinates.
    `DoubleProperty` | `x` | Defines the X coordinate of text origin.
    `DoubleProperty` | `y` | Defines the Y coordinate of text origin.

    - ### Properties inherited from class javafx.scene.shape.Shape

      `fill, smooth, strokeDashOffset, strokeLineCap, strokeLineJoin, strokeMiterLimit, stroke, strokeType, strokeWidth`

    - ### Properties inherited from class javafx.scene.Node

      `accessibleHelp, accessibleRoleDescription, accessibleRole, accessibleText, blendMode, boundsInLocal, boundsInParent, cacheHint, cache, clip, cursor, depthTest, disabled, disable, effectiveNodeOrientation, effect, eventDispatcher, focused, focusTraversable, hover, id, inputMethodRequests, layoutBounds, layoutX, layoutY, localToParentTransform, localToSceneTransform, managed, mouseTransparent, nodeOrientation, onContextMenuRequested, onDragDetected, onDragDone, onDragDropped, onDragEntered, onDragExited, onDragOver, onInputMethodTextChanged, onKeyPressed, onKeyReleased, onKeyTyped, onMouseClicked, onMouseDragEntered, onMouseDragExited, onMouseDragged, onMouseDragOver, onMouseDragReleased, onMouseEntered, onMouseExited, onMouseMoved, onMousePressed, onMouseReleased, onRotate, onRotationFinished, onRotationStarted, onScrollFinished, onScroll, onScrollStarted, onSwipeDown, onSwipeLeft, onSwipeRight, onSwipeUp, onTouchMoved, onTouchPressed, onTouchReleased, onTouchStationary, onZoomFinished, onZoom, onZoomStarted, opacity, parent, pickOnBounds, pressed, rotate, rotationAxis, scaleX, scaleY, scaleZ, scene, style, translateX, translateY, translateZ, viewOrder, visible`

  - ### Field Summary

    - ### Fields inherited from class javafx.scene.Node

      `BASELINE_OFFSET_SAME_AS_HEIGHT`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `Text()` | Creates an empty instance of Text.
    `Text​(double x, double y, String text)` | Creates an instance of Text on the given coordinates containing the given string.
    `Text​(String text)` | Creates an instance of Text containing the given string.

  - ### Method Summary

    Modifier and Type | Method | Description
    --- | --- | ---
    `ReadOnlyDoubleProperty` | `baselineOffsetProperty()` | The 'alphabetic' (or roman) baseline offset from the Text node's layoutBounds.minY location.
    `ObjectProperty<TextBoundsType>` | `boundsTypeProperty()` | Determines how the bounds of the text node are calculated.
    `BooleanProperty` | `caretBiasProperty()` | The type of caret bias in the content.
    `IntegerProperty` | `caretPositionProperty()` | The caret index in the content.
    `PathElement[]` | `caretShape​(int charIndex, boolean caretBias)` | Returns the shape for the caret at the given index and bias.
    `ReadOnlyObjectProperty<PathElement[]>` | `caretShapeProperty()` | The shape of caret, in local coordinates.
    `ObjectProperty<Font>` | `fontProperty()` | Defines the font of text.
    `ObjectProperty<FontSmoothingType>` | `fontSmoothingTypeProperty()` | Specifies a requested font smoothing type: gray or LCD.
    `double` | `getBaselineOffset()` | Gets the value of the property baselineOffset.
    `TextBoundsType` | `getBoundsType()` | Gets the value of the property boundsType.
    `int` | `getCaretPosition()` | Gets the value of the property caretPosition.
    `PathElement[]` | `getCaretShape()` | Gets the value of the property caretShape.
    `static List<CssMetaData<? extends Styleable,​?>>` | `getClassCssMetaData()` |
    `List<CssMetaData<? extends Styleable,​?>>` | `getCssMetaData()` | This method should delegate to `Node.getClassCssMetaData()` so that a Node's CssMetaData can be accessed without the need for reflection.
    `Font` | `getFont()` | Gets the value of the property font.
    `FontSmoothingType` | `getFontSmoothingType()` | Gets the value of the property fontSmoothingType.
    `double` | `getLineSpacing()` | Gets the value of the property lineSpacing.
    `int` | `getSelectionEnd()` | Gets the value of the property selectionEnd.
    `Paint` | `getSelectionFill()` | Gets the value of the property selectionFill.
    `PathElement[]` | `getSelectionShape()` | Gets the value of the property selectionShape.
    `int` | `getSelectionStart()` | Gets the value of the property selectionStart.
    `String` | `getText()` | Gets the value of the property text.
    `TextAlignment` | `getTextAlignment()` | Gets the value of the property textAlignment.
    `VPos` | `getTextOrigin()` | Gets the value of the property textOrigin.
    `double` | `getWrappingWidth()` | Gets the value of the property wrappingWidth.
    `double` | `getX()` | Gets the value of the property x.
    `double` | `getY()` | Gets the value of the property y.
    `HitInfo` | `hitTest​(Point2D point)` | Maps local point to index in the content.
    `boolean` | `isCaretBias()` | Gets the value of the property caretBias.
    `boolean` | `isStrikethrough()` | Gets the value of the property strikethrough.
    `boolean` | `isUnderline()` | Gets the value of the property underline.
    `DoubleProperty` | `lineSpacingProperty()` | Defines the vertical space in pixel between lines.
    `Object` | `queryAccessibleAttribute​(AccessibleAttribute attribute, Object... parameters)` | This method is called by the assistive technology to request the value for an attribute.
    `PathElement[]` | `rangeShape​(int start, int end)` | Returns the shape for the range of the text in local coordinates.
    `IntegerProperty` | `selectionEndProperty()` | The end index of the selection in the content.
    `ObjectProperty<Paint>` | `selectionFillProperty()` | The fill color of selected text.
    `ReadOnlyObjectProperty<PathElement[]>` | `selectionShapeProperty()` | The shape of the selection in local coordinates.
    `IntegerProperty` | `selectionStartProperty()` | The start index of the selection in the content.
    `void` | `setBoundsType​(TextBoundsType value)` | Sets the value of the property boundsType.
    `void` | `setCaretBias​(boolean value)` | Sets the value of the property caretBias.
    `void` | `setCaretPosition​(int value)` | Sets the value of the property caretPosition.
    `void` | `setFont​(Font value)` | Sets the value of the property font.
    `void` | `setFontSmoothingType​(FontSmoothingType value)` | Sets the value of the property fontSmoothingType.
    `void` | `setLineSpacing​(double spacing)` | Sets the value of the property lineSpacing.
    `void` | `setSelectionEnd​(int value)` | Sets the value of the property selectionEnd.
    `void` | `setSelectionFill​(Paint paint)` | Sets the value of the property selectionFill.
    `void` | `setSelectionStart​(int value)` | Sets the value of the property selectionStart.
    `void` | `setStrikethrough​(boolean value)` | Sets the value of the property strikethrough.
    `void` | `setText​(String value)` | Sets the value of the property text.
    `void` | `setTextAlignment​(TextAlignment value)` | Sets the value of the property textAlignment.
    `void` | `setTextOrigin​(VPos value)` | Sets the value of the property textOrigin.
    `void` | `setUnderline​(boolean value)` | Sets the value of the property underline.
    `void` | `setWrappingWidth​(double value)` | Sets the value of the property wrappingWidth.
    `void` | `setX​(double value)` | Sets the value of the property x.
    `void` | `setY​(double value)` | Sets the value of the property y.
    `BooleanProperty` | `strikethroughProperty()` | Defines if each line of text should have a line through it.
    `ObjectProperty<TextAlignment>` | `textAlignmentProperty()` | Defines horizontal text alignment in the bounding box.
    `ObjectProperty<VPos>` | `textOriginProperty()` | Defines the origin of text coordinate system in local coordinates.
    `StringProperty` | `textProperty()` | Defines text string that is to be displayed.
    `String` | `toString()` | Returns a string representation of this `Text` object.
    `BooleanProperty` | `underlineProperty()` | Defines if each line of text should have a line below it.
    `PathElement[]` | `underlineShape​(int start, int end)` | Returns the shape for the underline in local coordinates.
    `boolean` | `usesMirroring()` | Determines whether a node should be mirrored when node orientation is right-to-left.
    `DoubleProperty` | `wrappingWidthProperty()` | Defines a width constraint for the text in user space coordinates.
    `DoubleProperty` | `xProperty()` | Defines the X coordinate of text origin.
    `DoubleProperty` | `yProperty()` | Defines the Y coordinate of text origin.

    - ### Methods inherited from class javafx.scene.shape.Shape

      `fillProperty, getFill, getStroke, getStrokeDashArray, getStrokeDashOffset, getStrokeLineCap, getStrokeLineJoin, getStrokeMiterLimit, getStrokeType, getStrokeWidth, intersect, isSmooth, setFill, setSmooth, setStroke, setStrokeDashOffset, setStrokeLineCap, setStrokeLineJoin, setStrokeMiterLimit, setStrokeType, setStrokeWidth, smoothProperty, strokeDashOffsetProperty, strokeLineCapProperty, strokeLineJoinProperty, strokeMiterLimitProperty, strokeProperty, strokeTypeProperty, strokeWidthProperty, subtract, union`

    - ### Methods inherited from class javafx.scene.Node

      `accessibleHelpProperty, accessibleRoleDescriptionProperty, accessibleRoleProperty, accessibleTextProperty, addEventFilter, addEventHandler, applyCss, autosize, blendModeProperty, boundsInLocalProperty, boundsInParentProperty, buildEventDispatchChain, cacheHintProperty, cacheProperty, clipProperty, computeAreaInScreen, contains, contains, cursorProperty, depthTestProperty, disabledProperty, disableProperty, effectiveNodeOrientationProperty, effectProperty, eventDispatcherProperty, executeAccessibleAction, fireEvent, focusedProperty, focusTraversableProperty, getAccessibleHelp, getAccessibleRole, getAccessibleRoleDescription, getAccessibleText, getBlendMode, getBoundsInLocal, getBoundsInParent, getCacheHint, getClip, getContentBias, getCursor, getDepthTest, getEffect, getEffectiveNodeOrientation, getEventDispatcher, getId, getInitialCursor, getInitialFocusTraversable, getInputMethodRequests, getLayoutBounds, getLayoutX, getLayoutY, getLocalToParentTransform, getLocalToSceneTransform, getNodeOrientation, getOnContextMenuRequested, getOnDragDetected, getOnDragDone, getOnDragDropped, getOnDragEntered, getOnDragExited, getOnDragOver, getOnInputMethodTextChanged, getOnKeyPressed, getOnKeyReleased, getOnKeyTyped, getOnMouseClicked, getOnMouseDragEntered, getOnMouseDragExited, getOnMouseDragged, getOnMouseDragOver, getOnMouseDragReleased, getOnMouseEntered, getOnMouseExited, getOnMouseMoved, getOnMousePressed, getOnMouseReleased, getOnRotate, getOnRotationFinished, getOnRotationStarted, getOnScroll, getOnScrollFinished, getOnScrollStarted, getOnSwipeDown, getOnSwipeLeft, getOnSwipeRight, getOnSwipeUp, getOnTouchMoved, getOnTouchPressed, getOnTouchReleased, getOnTouchStationary, getOnZoom, getOnZoomFinished, getOnZoomStarted, getOpacity, getParent, getProperties, getPseudoClassStates, getRotate, getRotationAxis, getScaleX, getScaleY, getScaleZ, getScene, getStyle, getStyleableParent, getStyleClass, getTransforms, getTranslateX, getTranslateY, getTranslateZ, getTypeSelector, getUserData, getViewOrder, hasProperties, hoverProperty, idProperty, inputMethodRequestsProperty, intersects, intersects, isCache, isDisable, isDisabled, isFocused, isFocusTraversable, isHover, isManaged, isMouseTransparent, isPickOnBounds, isPressed, isResizable, isVisible, layoutBoundsProperty, layoutXProperty, layoutYProperty, localToParent, localToParent, localToParent, localToParent, localToParent, localToParentTransformProperty, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToSceneTransformProperty, localToScreen, localToScreen, localToScreen, localToScreen, localToScreen, lookup, lookupAll, managedProperty, maxHeight, maxWidth, minHeight, minWidth, mouseTransparentProperty, nodeOrientationProperty, notifyAccessibleAttributeChanged, onContextMenuRequestedProperty, onDragDetectedProperty, onDragDoneProperty, onDragDroppedProperty, onDragEnteredProperty, onDragExitedProperty, onDragOverProperty, onInputMethodTextChangedProperty, onKeyPressedProperty, onKeyReleasedProperty, onKeyTypedProperty, onMouseClickedProperty, onMouseDragEnteredProperty, onMouseDragExitedProperty, onMouseDraggedProperty, onMouseDragOverProperty, onMouseDragReleasedProperty, onMouseEnteredProperty, onMouseExitedProperty, onMouseMovedProperty, onMousePressedProperty, onMouseReleasedProperty, onRotateProperty, onRotationFinishedProperty, onRotationStartedProperty, onScrollFinishedProperty, onScrollProperty, onScrollStartedProperty, onSwipeDownProperty, onSwipeLeftProperty, onSwipeRightProperty, onSwipeUpProperty, onTouchMovedProperty, onTouchPressedProperty, onTouchReleasedProperty, onTouchStationaryProperty, onZoomFinishedProperty, onZoomProperty, onZoomStartedProperty, opacityProperty, parentProperty, parentToLocal, parentToLocal, parentToLocal, parentToLocal, parentToLocal, pickOnBoundsProperty, prefHeight, prefWidth, pressedProperty, pseudoClassStateChanged, relocate, removeEventFilter, removeEventHandler, requestFocus, resize, resizeRelocate, rotateProperty, rotationAxisProperty, scaleXProperty, scaleYProperty, scaleZProperty, sceneProperty, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, screenToLocal, screenToLocal, screenToLocal, setAccessibleHelp, setAccessibleRole, setAccessibleRoleDescription, setAccessibleText, setBlendMode, setCache, setCacheHint, setClip, setCursor, setDepthTest, setDisable, setDisabled, setEffect, setEventDispatcher, setEventHandler, setFocused, setFocusTraversable, setHover, setId, setInputMethodRequests, setLayoutX, setLayoutY, setManaged, setMouseTransparent, setNodeOrientation, setOnContextMenuRequested, setOnDragDetected, setOnDragDone, setOnDragDropped, setOnDragEntered, setOnDragExited, setOnDragOver, setOnInputMethodTextChanged, setOnKeyPressed, setOnKeyReleased, setOnKeyTyped, setOnMouseClicked, setOnMouseDragEntered, setOnMouseDragExited, setOnMouseDragged, setOnMouseDragOver, setOnMouseDragReleased, setOnMouseEntered, setOnMouseExited, setOnMouseMoved, setOnMousePressed, setOnMouseReleased, setOnRotate, setOnRotationFinished, setOnRotationStarted, setOnScroll, setOnScrollFinished, setOnScrollStarted, setOnSwipeDown, setOnSwipeLeft, setOnSwipeRight, setOnSwipeUp, setOnTouchMoved, setOnTouchPressed, setOnTouchReleased, setOnTouchStationary, setOnZoom, setOnZoomFinished, setOnZoomStarted, setOpacity, setPickOnBounds, setPressed, setRotate, setRotationAxis, setScaleX, setScaleY, setScaleZ, setStyle, setTranslateX, setTranslateY, setTranslateZ, setUserData, setViewOrder, setVisible, snapshot, snapshot, startDragAndDrop, startFullDrag, styleProperty, toBack, toFront, translateXProperty, translateYProperty, translateZProperty, viewOrderProperty, visibleProperty`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

    - ### Methods inherited from interface javafx.css.Styleable

      `getStyleableNode`

- - ### Property Detail

    - #### text

          public final StringProperty textProperty

      Defines text string that is to be displayed.
      Default value:
        empty string
      See Also:
        `getText()`, `setText(String)`

    - #### x

          public final DoubleProperty xProperty

      Defines the X coordinate of text origin.
      Default value:
        0
      See Also:
        `getX()`, `setX(double)`

    - #### y

          public final DoubleProperty yProperty

      Defines the Y coordinate of text origin.
      Default value:
        0
      See Also:
        `getY()`, `setY(double)`

    - #### font

          public final ObjectProperty<Font> fontProperty

      Defines the font of text.
      Default value:
        Font{}
      See Also:
        `getFont()`, `setFont(Font)`

    - #### textOrigin

          public final ObjectProperty<VPos> textOriginProperty

      Defines the origin of text coordinate system in local coordinates. Note: in case multiple rows are rendered `VPos.BASELINE` and `VPos.TOP` define the origin of the top row while `VPos.BOTTOM` defines the origin of the bottom row.
      Default value:
        VPos.BASELINE
      See Also:
        `getTextOrigin()`, `setTextOrigin(VPos)`

    - #### boundsType

          public final ObjectProperty<TextBoundsType> boundsTypeProperty

      Determines how the bounds of the text node are calculated. Logical bounds is a more appropriate default for text than the visual bounds. See `TextBoundsType` for more information.
      Default value:
        TextBoundsType.LOGICAL
      See Also:
        `getBoundsType()`, `setBoundsType(TextBoundsType)`

    - #### wrappingWidth

          public final DoubleProperty wrappingWidthProperty

      Defines a width constraint for the text in user space coordinates. The width is measured in pixels (and not glyph or character count). If the value is `> 0` text will be line wrapped as needed to satisfy this constraint.
      Default value:
        0
      See Also:
        `getWrappingWidth()`, `setWrappingWidth(double)`

    - #### underline

          public final BooleanProperty underlineProperty

      Defines if each line of text should have a line below it.
      Default value:
        false
      See Also:
        `isUnderline()`, `setUnderline(boolean)`

    - #### strikethrough

          public final BooleanProperty strikethroughProperty

      Defines if each line of text should have a line through it.
      Default value:
        false
      See Also:
        `isStrikethrough()`, `setStrikethrough(boolean)`

    - #### textAlignment

          public final ObjectProperty<TextAlignment> textAlignmentProperty

      Defines horizontal text alignment in the bounding box. The width of the bounding box is defined by the widest row. Note: In the case of a single line of text, where the width of the node is determined by the width of the text, the alignment setting has no effect.
      Default value:
        TextAlignment.LEFT
      See Also:
        `getTextAlignment()`, `setTextAlignment(TextAlignment)`

    - #### lineSpacing

          public final DoubleProperty lineSpacingProperty

      Defines the vertical space in pixel between lines.
      Default value:
        0
      Since:
        JavaFX 8.0
      See Also:
        `getLineSpacing()`, `setLineSpacing(double)`

    - #### baselineOffset

          public final ReadOnlyDoubleProperty baselineOffsetProperty

      The 'alphabetic' (or roman) baseline offset from the Text node's layoutBounds.minY location. The value typically corresponds to the max ascent of the font.
      See Also:
        `getBaselineOffset()`

    - #### fontSmoothingType

          public final ObjectProperty<FontSmoothingType> fontSmoothingTypeProperty

      Specifies a requested font smoothing type: gray or LCD. The width of the bounding box is defined by the widest row. Note: LCD mode doesn't apply in numerous cases, such as various compositing modes, where effects are applied and very large glyphs.
      Default value:
        FontSmoothingType.GRAY
      Since:
        JavaFX 2.1
      See Also:
        `getFontSmoothingType()`, `setFontSmoothingType(FontSmoothingType)`

    - #### selectionShape

          public final ReadOnlyObjectProperty<PathElement[]> selectionShapeProperty

      The shape of the selection in local coordinates.
      Since:
        9
      See Also:
        `getSelectionShape()`

    - #### selectionStart

          public final IntegerProperty selectionStartProperty

      The start index of the selection in the content. If the value is -1, the selection is unset.
      Default value:
        -1
      Since:
        9
      See Also:
        `getSelectionStart()`, `setSelectionStart(int)`

    - #### selectionEnd

          public final IntegerProperty selectionEndProperty

      The end index of the selection in the content. If the value is -1, the selection is unset.
      Default value:
        -1
      Since:
        9
      See Also:
        `getSelectionEnd()`, `setSelectionEnd(int)`

    - #### selectionFill

          public final ObjectProperty<Paint> selectionFillProperty

      The fill color of selected text.
      Since:
        9
      See Also:
        `getSelectionFill()`, `setSelectionFill(Paint)`

    - #### caretShape

          public final ReadOnlyObjectProperty<PathElement[]> caretShapeProperty

      The shape of caret, in local coordinates.
      Since:
        9
      See Also:
        `getCaretShape()`

    - #### caretPosition

          public final IntegerProperty caretPositionProperty

      The caret index in the content. If the value is -1, the caret is unset.
      Default value:
        -1
      Since:
        9
      See Also:
        `getCaretPosition()`, `setCaretPosition(int)`

    - #### caretBias

          public final BooleanProperty caretBiasProperty

      The type of caret bias in the content. If `true`, the bias is towards the leading character edge, otherwise, the bias is towards the trailing character edge.
      Default value:
        `true`
      Since:
        9
      See Also:
        `isCaretBias()`, `setCaretBias(boolean)`

  - ### Constructor Detail

    - #### Text

          public Text()

      Creates an empty instance of Text.

    - #### Text

          public Text​(String text)

      Creates an instance of Text containing the given string.
      Parameters:
        `text` - text to be contained in the instance

    - #### Text

          public Text​(double x,
                      double y,
                      String text)

      Creates an instance of Text on the given coordinates containing the given string.
      Parameters:
        `x` - the horizontal position of the text
        `y` - the vertical position of the text
        `text` - text to be contained in the instance

  - ### Method Detail

    - #### usesMirroring

          public boolean usesMirroring()

      Description copied from class: `Node`
      Determines whether a node should be mirrored when node orientation is right-to-left.

      When a node is mirrored, the origin is automatically moved to the top right corner causing the node to layout children and draw from right to left using a mirroring transformation. Some nodes may wish to draw from right to left without using a transformation. These nodes will will answer `false` and implement right-to-left orientation without using the automatic transformation.

      Overrides:
        `usesMirroring` in class `Node`
      Returns:
        true if this `Node` should be mirrored

    - #### setText

          public final void setText​(String value)

      Sets the value of the property text.
      Property description:
        Defines text string that is to be displayed.
      Default value:
        empty string

    - #### getText

          public final String getText()

      Gets the value of the property text.
      Property description:
        Defines text string that is to be displayed.
      Default value:
        empty string

    - #### textProperty

          public final StringProperty textProperty()

      Defines text string that is to be displayed.
      Default value:
        empty string
      See Also:
        `getText()`, `setText(String)`

    - #### setX

          public final void setX​(double value)

      Sets the value of the property x.
      Property description:
        Defines the X coordinate of text origin.
      Default value:
        0

    - #### getX

          public final double getX()

      Gets the value of the property x.
      Property description:
        Defines the X coordinate of text origin.
      Default value:
        0

    - #### xProperty

          public final DoubleProperty xProperty()

      Defines the X coordinate of text origin.
      Default value:
        0
      See Also:
        `getX()`, `setX(double)`

    - #### setY

          public final void setY​(double value)

      Sets the value of the property y.
      Property description:
        Defines the Y coordinate of text origin.
      Default value:
        0

    - #### getY

          public final double getY()

      Gets the value of the property y.
      Property description:
        Defines the Y coordinate of text origin.
      Default value:
        0

    - #### yProperty

          public final DoubleProperty yProperty()

      Defines the Y coordinate of text origin.
      Default value:
        0
      See Also:
        `getY()`, `setY(double)`

    - #### setFont

          public final void setFont​(Font value)

      Sets the value of the property font.
      Property description:
        Defines the font of text.
      Default value:
        Font{}

    - #### getFont

          public final Font getFont()

      Gets the value of the property font.
      Property description:
        Defines the font of text.
      Default value:
        Font{}

    - #### fontProperty

          public final ObjectProperty<Font> fontProperty()

      Defines the font of text.
      Default value:
        Font{}
      See Also:
        `getFont()`, `setFont(Font)`

    - #### setTextOrigin

          public final void setTextOrigin​(VPos value)

      Sets the value of the property textOrigin.
      Property description:
        Defines the origin of text coordinate system in local coordinates. Note: in case multiple rows are rendered `VPos.BASELINE` and `VPos.TOP` define the origin of the top row while `VPos.BOTTOM` defines the origin of the bottom row.
      Default value:
        VPos.BASELINE

    - #### getTextOrigin

          public final VPos getTextOrigin()

      Gets the value of the property textOrigin.
      Property description:
        Defines the origin of text coordinate system in local coordinates. Note: in case multiple rows are rendered `VPos.BASELINE` and `VPos.TOP` define the origin of the top row while `VPos.BOTTOM` defines the origin of the bottom row.
      Default value:
        VPos.BASELINE

    - #### textOriginProperty

          public final ObjectProperty<VPos> textOriginProperty()

      Defines the origin of text coordinate system in local coordinates. Note: in case multiple rows are rendered `VPos.BASELINE` and `VPos.TOP` define the origin of the top row while `VPos.BOTTOM` defines the origin of the bottom row.
      Default value:
        VPos.BASELINE
      See Also:
        `getTextOrigin()`, `setTextOrigin(VPos)`

    - #### setBoundsType

          public final void setBoundsType​(TextBoundsType value)

      Sets the value of the property boundsType.
      Property description:
        Determines how the bounds of the text node are calculated. Logical bounds is a more appropriate default for text than the visual bounds. See `TextBoundsType` for more information.
      Default value:
        TextBoundsType.LOGICAL

    - #### getBoundsType

          public final TextBoundsType getBoundsType()

      Gets the value of the property boundsType.
      Property description:
        Determines how the bounds of the text node are calculated. Logical bounds is a more appropriate default for text than the visual bounds. See `TextBoundsType` for more information.
      Default value:
        TextBoundsType.LOGICAL

    - #### boundsTypeProperty

          public final ObjectProperty<TextBoundsType> boundsTypeProperty()

      Determines how the bounds of the text node are calculated. Logical bounds is a more appropriate default for text than the visual bounds. See `TextBoundsType` for more information.
      Default value:
        TextBoundsType.LOGICAL
      See Also:
        `getBoundsType()`, `setBoundsType(TextBoundsType)`

    - #### setWrappingWidth

          public final void setWrappingWidth​(double value)

      Sets the value of the property wrappingWidth.
      Property description:
        Defines a width constraint for the text in user space coordinates. The width is measured in pixels (and not glyph or character count). If the value is `> 0` text will be line wrapped as needed to satisfy this constraint.
      Default value:
        0

    - #### getWrappingWidth

          public final double getWrappingWidth()

      Gets the value of the property wrappingWidth.
      Property description:
        Defines a width constraint for the text in user space coordinates. The width is measured in pixels (and not glyph or character count). If the value is `> 0` text will be line wrapped as needed to satisfy this constraint.
      Default value:
        0

    - #### wrappingWidthProperty

          public final DoubleProperty wrappingWidthProperty()

      Defines a width constraint for the text in user space coordinates. The width is measured in pixels (and not glyph or character count). If the value is `> 0` text will be line wrapped as needed to satisfy this constraint.
      Default value:
        0
      See Also:
        `getWrappingWidth()`, `setWrappingWidth(double)`

    - #### setUnderline

          public final void setUnderline​(boolean value)

      Sets the value of the property underline.
      Property description:
        Defines if each line of text should have a line below it.
      Default value:
        false

    - #### isUnderline

          public final boolean isUnderline()

      Gets the value of the property underline.
      Property description:
        Defines if each line of text should have a line below it.
      Default value:
        false

    - #### underlineProperty

          public final BooleanProperty underlineProperty()

      Defines if each line of text should have a line below it.
      Default value:
        false
      See Also:
        `isUnderline()`, `setUnderline(boolean)`

    - #### setStrikethrough

          public final void setStrikethrough​(boolean value)

      Sets the value of the property strikethrough.
      Property description:
        Defines if each line of text should have a line through it.
      Default value:
        false

    - #### isStrikethrough

          public final boolean isStrikethrough()

      Gets the value of the property strikethrough.
      Property description:
        Defines if each line of text should have a line through it.
      Default value:
        false

    - #### strikethroughProperty

          public final BooleanProperty strikethroughProperty()

      Defines if each line of text should have a line through it.
      Default value:
        false
      See Also:
        `isStrikethrough()`, `setStrikethrough(boolean)`

    - #### setTextAlignment

          public final void setTextAlignment​(TextAlignment value)

      Sets the value of the property textAlignment.
      Property description:
        Defines horizontal text alignment in the bounding box. The width of the bounding box is defined by the widest row. Note: In the case of a single line of text, where the width of the node is determined by the width of the text, the alignment setting has no effect.
      Default value:
        TextAlignment.LEFT

    - #### getTextAlignment

          public final TextAlignment getTextAlignment()

      Gets the value of the property textAlignment.
      Property description:
        Defines horizontal text alignment in the bounding box. The width of the bounding box is defined by the widest row. Note: In the case of a single line of text, where the width of the node is determined by the width of the text, the alignment setting has no effect.
      Default value:
        TextAlignment.LEFT

    - #### textAlignmentProperty

          public final ObjectProperty<TextAlignment> textAlignmentProperty()

      Defines horizontal text alignment in the bounding box. The width of the bounding box is defined by the widest row. Note: In the case of a single line of text, where the width of the node is determined by the width of the text, the alignment setting has no effect.
      Default value:
        TextAlignment.LEFT
      See Also:
        `getTextAlignment()`, `setTextAlignment(TextAlignment)`

    - #### setLineSpacing

          public final void setLineSpacing​(double spacing)

      Sets the value of the property lineSpacing.
      Property description:
        Defines the vertical space in pixel between lines.
      Default value:
        0
      Since:
        JavaFX 8.0

    - #### getLineSpacing

          public final double getLineSpacing()

      Gets the value of the property lineSpacing.
      Property description:
        Defines the vertical space in pixel between lines.
      Default value:
        0
      Since:
        JavaFX 8.0

    - #### lineSpacingProperty

          public final DoubleProperty lineSpacingProperty()

      Defines the vertical space in pixel between lines.
      Default value:
        0
      Since:
        JavaFX 8.0
      See Also:
        `getLineSpacing()`, `setLineSpacing(double)`

    - #### getBaselineOffset

          public final double getBaselineOffset()

      Gets the value of the property baselineOffset.
      Overrides:
        `getBaselineOffset` in class `Node`
      Property description:
        The 'alphabetic' (or roman) baseline offset from the Text node's layoutBounds.minY location. The value typically corresponds to the max ascent of the font.
      Returns:
        offset of text baseline from layoutBounds.minY for non-resizable Nodes or `Node.BASELINE_OFFSET_SAME_AS_HEIGHT` otherwise

    - #### baselineOffsetProperty

          public final ReadOnlyDoubleProperty baselineOffsetProperty()

      The 'alphabetic' (or roman) baseline offset from the Text node's layoutBounds.minY location. The value typically corresponds to the max ascent of the font.
      See Also:
        `getBaselineOffset()`

    - #### setFontSmoothingType

          public final void setFontSmoothingType​(FontSmoothingType value)

      Sets the value of the property fontSmoothingType.
      Property description:
        Specifies a requested font smoothing type: gray or LCD. The width of the bounding box is defined by the widest row. Note: LCD mode doesn't apply in numerous cases, such as various compositing modes, where effects are applied and very large glyphs.
      Default value:
        FontSmoothingType.GRAY
      Since:
        JavaFX 2.1

    - #### getFontSmoothingType

          public final FontSmoothingType getFontSmoothingType()

      Gets the value of the property fontSmoothingType.
      Property description:
        Specifies a requested font smoothing type: gray or LCD. The width of the bounding box is defined by the widest row. Note: LCD mode doesn't apply in numerous cases, such as various compositing modes, where effects are applied and very large glyphs.
      Default value:
        FontSmoothingType.GRAY
      Since:
        JavaFX 2.1

    - #### fontSmoothingTypeProperty

          public final ObjectProperty<FontSmoothingType> fontSmoothingTypeProperty()

      Specifies a requested font smoothing type: gray or LCD. The width of the bounding box is defined by the widest row. Note: LCD mode doesn't apply in numerous cases, such as various compositing modes, where effects are applied and very large glyphs.
      Default value:
        FontSmoothingType.GRAY
      Since:
        JavaFX 2.1
      See Also:
        `getFontSmoothingType()`, `setFontSmoothingType(FontSmoothingType)`

    - #### getSelectionShape

          public final PathElement[] getSelectionShape()

      Gets the value of the property selectionShape.
      Property description:
        The shape of the selection in local coordinates.
      Since:
        9

    - #### selectionShapeProperty

          public final ReadOnlyObjectProperty<PathElement[]> selectionShapeProperty()

      The shape of the selection in local coordinates.
      Since:
        9
      See Also:
        `getSelectionShape()`

    - #### setSelectionStart

          public final void setSelectionStart​(int value)

      Sets the value of the property selectionStart.
      Property description:
        The start index of the selection in the content. If the value is -1, the selection is unset.
      Default value:
        -1
      Since:
        9

    - #### getSelectionStart

          public final int getSelectionStart()

      Gets the value of the property selectionStart.
      Property description:
        The start index of the selection in the content. If the value is -1, the selection is unset.
      Default value:
        -1
      Since:
        9

    - #### selectionStartProperty

          public final IntegerProperty selectionStartProperty()

      The start index of the selection in the content. If the value is -1, the selection is unset.
      Default value:
        -1
      Since:
        9
      See Also:
        `getSelectionStart()`, `setSelectionStart(int)`

    - #### setSelectionEnd

          public final void setSelectionEnd​(int value)

      Sets the value of the property selectionEnd.
      Property description:
        The end index of the selection in the content. If the value is -1, the selection is unset.
      Default value:
        -1
      Since:
        9

    - #### getSelectionEnd

          public final int getSelectionEnd()

      Gets the value of the property selectionEnd.
      Property description:
        The end index of the selection in the content. If the value is -1, the selection is unset.
      Default value:
        -1
      Since:
        9

    - #### selectionEndProperty

          public final IntegerProperty selectionEndProperty()

      The end index of the selection in the content. If the value is -1, the selection is unset.
      Default value:
        -1
      Since:
        9
      See Also:
        `getSelectionEnd()`, `setSelectionEnd(int)`

    - #### selectionFillProperty

          public final ObjectProperty<Paint> selectionFillProperty()

      The fill color of selected text.
      Since:
        9
      See Also:
        `getSelectionFill()`, `setSelectionFill(Paint)`

    - #### setSelectionFill

          public final void setSelectionFill​(Paint paint)

      Sets the value of the property selectionFill.
      Property description:
        The fill color of selected text.
      Since:
        9

    - #### getSelectionFill

          public final Paint getSelectionFill()

      Gets the value of the property selectionFill.
      Property description:
        The fill color of selected text.
      Since:
        9

    - #### getCaretShape

          public final PathElement[] getCaretShape()

      Gets the value of the property caretShape.
      Property description:
        The shape of caret, in local coordinates.
      Since:
        9

    - #### caretShapeProperty

          public final ReadOnlyObjectProperty<PathElement[]> caretShapeProperty()

      The shape of caret, in local coordinates.
      Since:
        9
      See Also:
        `getCaretShape()`

    - #### setCaretPosition

          public final void setCaretPosition​(int value)

      Sets the value of the property caretPosition.
      Property description:
        The caret index in the content. If the value is -1, the caret is unset.
      Default value:
        -1
      Since:
        9

    - #### getCaretPosition

          public final int getCaretPosition()

      Gets the value of the property caretPosition.
      Property description:
        The caret index in the content. If the value is -1, the caret is unset.
      Default value:
        -1
      Since:
        9

    - #### caretPositionProperty

          public final IntegerProperty caretPositionProperty()

      The caret index in the content. If the value is -1, the caret is unset.
      Default value:
        -1
      Since:
        9
      See Also:
        `getCaretPosition()`, `setCaretPosition(int)`

    - #### setCaretBias

          public final void setCaretBias​(boolean value)

      Sets the value of the property caretBias.
      Property description:
        The type of caret bias in the content. If `true`, the bias is towards the leading character edge, otherwise, the bias is towards the trailing character edge.
      Default value:
        `true`
      Since:
        9

    - #### isCaretBias

          public final boolean isCaretBias()

      Gets the value of the property caretBias.
      Property description:
        The type of caret bias in the content. If `true`, the bias is towards the leading character edge, otherwise, the bias is towards the trailing character edge.
      Default value:
        `true`
      Since:
        9

    - #### caretBiasProperty

          public final BooleanProperty caretBiasProperty()

      The type of caret bias in the content. If `true`, the bias is towards the leading character edge, otherwise, the bias is towards the trailing character edge.
      Default value:
        `true`
      Since:
        9
      See Also:
        `isCaretBias()`, `setCaretBias(boolean)`

    - #### hitTest

          public final HitInfo hitTest​(Point2D point)

      Maps local point to index in the content.
      Parameters:
        `point` - the specified point to be tested
      Returns:
        a `HitInfo` representing the character index found
      Since:
        9

    - #### caretShape

          public final PathElement[] caretShape​(int charIndex,
                                                boolean caretBias)

      Returns the shape for the caret at the given index and bias.
      Parameters:
        `charIndex` - the character index for the caret
        `caretBias` - whether the caret is biased on the leading edge of the character
      Returns:
        an array of `PathElement` which can be used to create a `Shape`
      Since:
        9

    - #### rangeShape

          public final PathElement[] rangeShape​(int start,
                                                int end)

      Returns the shape for the range of the text in local coordinates.
      Parameters:
        `start` - the beginning character index for the range
        `end` - the end character index (non-inclusive) for the range
      Returns:
        an array of `PathElement` which can be used to create a `Shape`
      Since:
        9

    - #### underlineShape

          public final PathElement[] underlineShape​(int start,
                                                    int end)

      Returns the shape for the underline in local coordinates.
      Parameters:
        `start` - the beginning character index for the range
        `end` - the end character index (non-inclusive) for the range
      Returns:
        an array of `PathElement` which can be used to create a `Shape`
      Since:
        9

    - #### getClassCssMetaData

          public static List<CssMetaData<? extends Styleable,​?>> getClassCssMetaData()

      Returns:
        The CssMetaData associated with this class, which may include the CssMetaData of its superclasses.
      Since:
        JavaFX 8.0

    - #### getCssMetaData

          public List<CssMetaData<? extends Styleable,​?>> getCssMetaData()

      This method should delegate to `Node.getClassCssMetaData()` so that a Node's CssMetaData can be accessed without the need for reflection.
      Specified by:
        `getCssMetaData` in interface `Styleable`
      Overrides:
        `getCssMetaData` in class `Shape`
      Returns:
        The CssMetaData associated with this node, which may include the CssMetaData of its superclasses.
      Since:
        JavaFX 8.0

    - #### toString

          public String toString()

      Returns a string representation of this `Text` object.
      Overrides:
        `toString` in class `Node`
      Returns:
        a string representation of this `Text` object.

    - #### queryAccessibleAttribute

          public Object queryAccessibleAttribute​(AccessibleAttribute attribute,
                                                 Object... parameters)

      This method is called by the assistive technology to request the value for an attribute.

      This method is commonly overridden by subclasses to implement attributes that are required for a specific role.
      If a particular attribute is not handled, the superclass implementation must be called.

      Overrides:
        `queryAccessibleAttribute` in class `Node`
      Parameters:
        `attribute` - the requested attribute
        `parameters` - optional list of parameters
      Returns:
        the value for the requested attribute
      See Also:
        `AccessibleAttribute`