QTextBlockFormat Class

The QTextBlockFormat class provides formatting information for blocks of text in a QTextDocument. More...

Header: #include <QTextBlockFormat>
qmake: QT += gui
Inherits: QTextFormat

Note: All functions in this class are reentrant.

Public Types

enum LineHeightTypes { SingleHeight, ProportionalHeight, FixedHeight, MinimumHeight, LineDistanceHeight }

Public Functions

void setTabPositions(const QList<QTextOption::Tab> &tabs)
QList<QTextOption::Tab> tabPositions() const

Detailed Description

A document is composed of a list of blocks, represented by QTextBlock objects. Each block can contain an item of some kind, such as a paragraph of text, a table, a list, or an image. Every block has an associated QTextBlockFormat that specifies its characteristics.

To cater for left-to-right and right-to-left languages you can set a block's direction with setDirection(). Paragraph alignment is set with setAlignment(). Margins are controlled by setTopMargin(), setBottomMargin(), setLeftMargin(), setRightMargin(). Overall indentation is set with setIndent(), the indentation of the first line with setTextIndent().

Line spacing is set with setLineHeight() and retrieved via lineHeight() and lineHeightType(). The types of line spacing available are in the LineHeightTypes enum.

Line breaking can be enabled and disabled with setNonBreakableLines().

The brush used to paint the paragraph's background is set with setBackground(), and other aspects of the text's appearance can be customized by using the setProperty() function with the OutlinePen, ForegroundBrush, and BackgroundBrush QTextFormat::Property values.

If a text block is part of a list, it can also have a list format that is accessible with the listFormat() function.

See also QTextBlock and QTextCharFormat.

Member Type Documentation

enum QTextBlockFormat::LineHeightTypes

This enum describes the various types of line spacing support paragraphs can have.

ConstantValueDescription
QTextBlockFormat::SingleHeight0This is the default line height: single spacing.
QTextBlockFormat::ProportionalHeight1This sets the spacing proportional to the line (in percentage). For example, set to 200 for double spacing.
QTextBlockFormat::FixedHeight2This sets the line height to a fixed line height (in pixels).
QTextBlockFormat::MinimumHeight3This sets the minimum line height (in pixels).
QTextBlockFormat::LineDistanceHeight4This adds the specified height between lines (in pixels).

This enum was introduced or modified in Qt 4.8.

See also lineHeight(), lineHeightType(), and setLineHeight().

Member Function Documentation

void QTextBlockFormat::setTabPositions(const QList<QTextOption::Tab> &tabs)

Sets the tab positions for the text block to those specified by tabs.

This function was introduced in Qt 4.4.

See also tabPositions().

QList<QTextOption::Tab> QTextBlockFormat::tabPositions() const

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

This function was introduced in Qt 4.4.

See also setTabPositions().