+ Vector<LineRun>& lines,
+ Size& layoutSize,
+ bool elideTextEnabled );
+
+ /**
+ * @brief Re-lays out those lines with right to left characters.
+ *
+ * It doesn't change the phisical position of the glyphs in the model but sets their new position.
+ *
+ * @param[in] layoutParameters The parameters needed to layout the text.
+ * @param[in] startIndex Character index of the line from where the lines are reordered.
+ * @param[in] numberOfCharacters The number of characters.
+ * @param[in,out] glyphPositions The positions of all the glyphs.
+ */
+ void ReLayoutRightToLeftLines( const Parameters& layoutParameters,
+ CharacterIndex startIndex,
+ Length numberOfCharacters,
+ Vector<Vector2>& glyphPositions );
+
+ /**
+ * @brief Aligns the laid out lines.
+ *
+ * @param[in] size The size of the container where the text is laid-out.
+ * @param[in] startIndex Character index of the line from where the lines are aligned.
+ * @param[in] numberOfCharacters The number of characters.
+ * @param[in] horizontalAlignment The horizontal alignment.
+ * @param[in,out] lines The laid-out lines.
+ * @param[out] alignmentOffset The alignment offset.
+ * @param[in] layoutDirection The direction of the system language.
+ * @param[in] matchSystemLanguageDirection Whether match align for system language direction or not.
+ */
+ void Align( const Size& size,
+ CharacterIndex startIndex,
+ Length numberOfCharacters,
+ Text::HorizontalAlignment::Type horizontalAlignment,
+ Vector<LineRun>& lines,
+ float& alignmentOffset,
+ Dali::LayoutDirection::Type layoutDirection,
+ bool matchSystemLanguageDirection );
+
+ /**
+ * @brief Sets the default line spacing.
+ *
+ * @param[in] lineSpacing The line spacing.
+ */
+ void SetDefaultLineSpacing( float lineSpacing );
+
+ /**
+ * @brief Retrieves the default line spacing.
+ *
+ * @return The line spacing.
+ */
+ float GetDefaultLineSpacing() const;