- Qt 6.8
- Qt GUI
- C++ Classes
- QTextOption
- Qt 6.8.3 Reference Documentation

# QTextOption Class

The QTextOption class provides a description of general rich text properties. More...

Header: | `#include <QTextOption>`
CMake: | `find_package(Qt6 REQUIRED COMPONENTS Gui)` `target_link_libraries(mytarget PRIVATE Qt6::Gui)`
qmake: | `QT += gui`

- List of all members, including inherited members
- QTextOption is part of Rich Text Processing APIs.

Note: All functions in this class are reentrant.

## Public Types

struct | Tab
enum | Flag { IncludeTrailingSpaces, ShowTabsAndSpaces, ShowLineAndParagraphSeparators, ShowDocumentTerminator, AddSpaceForLineAndParagraphSeparators, SuppressColors }
flags | Flags
enum | TabType { LeftTab, RightTab, CenterTab, DelimiterTab }
enum | WrapMode { NoWrap, WordWrap, ManualWrap, WrapAnywhere, WrapAtWordBoundaryOrAnywhere }

## Public Functions

| QTextOption()
| QTextOption(Qt::Alignment alignment)
| QTextOption(const QTextOption &other)
| ~QTextOption()
Qt::Alignment | alignment() const
QTextOption::Flags | flags() const
void | setAlignment(Qt::Alignment alignment)
void | setFlags(QTextOption::Flags flags)
void | setTabArray(const QList<qreal> &tabStops)
void | setTabStopDistance(qreal tabStopDistance)
void | setTabs(const QList<QTextOption::Tab> &tabStops)
void | setTextDirection(Qt::LayoutDirection direction)
void | setUseDesignMetrics(bool enable)
void | setWrapMode(QTextOption::WrapMode mode)
QList<qreal> | tabArray() const
qreal | tabStopDistance() const
QList<QTextOption::Tab> | tabs() const
Qt::LayoutDirection | textDirection() const
bool | useDesignMetrics() const
QTextOption::WrapMode | wrapMode() const
QTextOption & | operator=(const QTextOption &other)

## Detailed Description

QTextOption is used to encapsulate common rich text properties in a single object. It contains information about text alignment, layout direction, word wrapping, and other standard properties associated with text rendering and layout.

See also QTextEdit, QTextDocument, and QTextCursor.

## Member Type Documentation

### enum QTextOption::Flag
flags QTextOption::Flags

Constant | Value | Description
--- | --- | ---
`QTextOption::IncludeTrailingSpaces` | `0x80000000` | When this option is set, QTextLine::naturalTextWidth() and naturalTextRect() will return a value that includes the width of trailing spaces in the text; otherwise this width is excluded.
`QTextOption::ShowTabsAndSpaces` | `0x1` | Visualize spaces with little dots, and tabs with little arrows. Non-breaking spaces are shown differently to breaking spaces.
`QTextOption::ShowLineAndParagraphSeparators` | `0x2` | Visualize line and paragraph separators with appropriate symbol characters.
`QTextOption::ShowDocumentTerminator (since Qt 5.7)` | `0x10` | Visualize the end of the document with a section sign.
`QTextOption::AddSpaceForLineAndParagraphSeparators` | `0x4` | While determining the line-break positions take into account the space added for drawing a separator character.
`QTextOption::SuppressColors` | `0x8` | Suppress all color changes in the character formats (except the main selection).

The Flags type is a typedef for QFlags<Flag>. It stores an OR combination of Flag values.

### enum QTextOption::TabType

This enum holds the different types of tabulator

Constant | Value | Description
--- | --- | ---
`QTextOption::LeftTab` | `0` | A left-tab
`QTextOption::RightTab` | `1` | A right-tab
`QTextOption::CenterTab` | `2` | A centered-tab
`QTextOption::DelimiterTab` | `3` | A tab stopping at a certain delimiter-character

### enum QTextOption::WrapMode

This enum describes how text is wrapped in a document.

Constant | Value | Description
--- | --- | ---
`QTextOption::NoWrap` | `0` | Text is not wrapped at all.
`QTextOption::WordWrap` | `1` | Text is wrapped at word boundaries.
`QTextOption::ManualWrap` | `2` | Same as QTextOption::NoWrap
`QTextOption::WrapAnywhere` | `3` | Text can be wrapped at any point on a line, even if it occurs in the middle of a word.
`QTextOption::WrapAtWordBoundaryOrAnywhere` | `4` | If possible, wrapping occurs at a word boundary; otherwise it will occur at the appropriate point on the line, even in the middle of a word.

## Member Function Documentation

### QTextOption::QTextOption()

Constructs a text option with default properties for text. The text alignment property is set to Qt::AlignLeft. The word wrap property is set to QTextOption::WordWrap. The using of design metrics flag is set to false.

### QTextOption::QTextOption(Qt::Alignment alignment)

Constructs a text option with the given alignment for text. The word wrap property is set to QTextOption::WordWrap. The using of design metrics flag is set to false.

### QTextOption::QTextOption(const QTextOption &other)

Construct a copy of the other text option.

### `[noexcept]` QTextOption::~QTextOption()

Destroys the text option.

### Qt::Alignment QTextOption::alignment() const

Returns the text alignment defined by the option.

See also setAlignment().

### QTextOption::Flags QTextOption::flags() const

Returns the flags associated with the option.

See also setFlags().

### void QTextOption::setAlignment(Qt::Alignment alignment)

Sets the option's text alignment to the specified alignment.

See also alignment().

### void QTextOption::setFlags(QTextOption::Flags flags)

Sets the flags associated with the option to the given flags.

See also flags().

### void QTextOption::setTabArray(const QList<qreal> &tabStops)

Sets the tab positions for the text layout to those specified by tabStops.

See also tabArray(), setTabStopDistance(), and setTabs().

### void QTextOption::setTabStopDistance(qreal tabStopDistance)

Sets the default distance in device units between tab stops to the value specified by tabStopDistance.

See also tabStopDistance(), setTabArray(), setTabs(), and tabs().

### void QTextOption::setTabs(const QList<QTextOption::Tab> &tabStops)

Sets the tab positions for the text layout to those specified by tabStops.

See also tabs() and tabStopDistance().

### void QTextOption::setTextDirection(Qt::LayoutDirection direction)

Sets the direction of the text layout defined by the option to the given direction.

See also textDirection().

### void QTextOption::setUseDesignMetrics(bool enable)

If enable is true then the layout will use design metrics; otherwise it will use the metrics of the paint device (which is the default behavior).

See also useDesignMetrics().

### void QTextOption::setWrapMode(QTextOption::WrapMode mode)

Sets the option's text wrap mode to the given mode.

See also wrapMode().

### QList<qreal> QTextOption::tabArray() const

Returns a list of tab positions defined for the text layout.

See also setTabArray() and tabStopDistance().

### qreal QTextOption::tabStopDistance() const

Returns the distance in device units between tab stops.

See also setTabStopDistance(), tabArray(), setTabs(), and tabs().

### QList<QTextOption::Tab> QTextOption::tabs() const

Returns a list of tab positions defined for the text layout.

See also tabStopDistance(), setTabs(), and setTabStopDistance().

### Qt::LayoutDirection QTextOption::textDirection() const

Returns the direction of the text layout defined by the option.

See also setTextDirection().

### bool QTextOption::useDesignMetrics() const

Returns `true` if the layout uses design rather than device metrics; otherwise returns `false`.

See also setUseDesignMetrics().

### QTextOption::WrapMode QTextOption::wrapMode() const

Returns the text wrap mode defined by the option.

See also setWrapMode().

### QTextOption &QTextOption::operator=(const QTextOption &other)

Returns `true` if the text option is the same as the other text option; otherwise returns `false`.