|  | Home · All Classes · Modules

# QTextFormat Class Reference
[QtGui module]

The QTextFormat class provides formatting information for a QTextDocument. More...

Inherited by QTextBlockFormat, QTextCharFormat, QTextFrameFormat and QTextListFormat.

### Types

- enum FormatType { InvalidFormat, BlockFormat, CharFormat, ListFormat, ..., UserFormat }
- enum ObjectTypes { NoObject, ImageObject, TableObject, TableCellObject, UserObject }
- enum PageBreakFlag { PageBreak_Auto, PageBreak_AlwaysBefore, PageBreak_AlwaysAfter }
- class PageBreakFlags
- enum Property { ObjectIndex, CssFloat, LayoutDirection, OutlinePen, ..., UserProperty }

### Methods

- __init__ (self)
- __init__ (self, int)
- __init__ (self, QTextFormat)
- __init__ (self, QVariant variant)
- QBrush background (self)
- bool boolProperty (self, int)
- QBrush brushProperty (self, int)
- clearBackground (self)
- clearForeground (self)
- clearProperty (self, int)
- QColor colorProperty (self, int)
- float doubleProperty (self, int)
- QBrush foreground (self)
- bool hasProperty (self, int)
- int intProperty (self, int)
- bool isBlockFormat (self)
- bool isCharFormat (self)
- bool isFrameFormat (self)
- bool isImageFormat (self)
- bool isListFormat (self)
- bool isTableCellFormat (self)
- bool isTableFormat (self)
- bool isValid (self)
- Qt.LayoutDirection layoutDirection (self)
- QTextLength lengthProperty (self, int)
- list-of-QTextLength lengthVectorProperty (self, int)
- merge (self, QTextFormat)
- int objectIndex (self)
- int objectType (self)
- QPen penProperty (self, int)
- dict-of-int-QVariant properties (self)
- QVariant property (self, int)
- int propertyCount (self)
- setBackground (self, QBrush)
- setForeground (self, QBrush)
- setLayoutDirection (self, Qt.LayoutDirection)
- setObjectIndex (self, int)
- setObjectType (self, int)
- setProperty (self, int, QVariant)
- setProperty (self, int, list-of-QTextLength)
- QString stringProperty (self, int)
- QTextBlockFormat toBlockFormat (self)
- QTextCharFormat toCharFormat (self)
- QTextFrameFormat toFrameFormat (self)
- QTextImageFormat toImageFormat (self)
- QTextListFormat toListFormat (self)
- QTextTableCellFormat toTableCellFormat (self)
- QTextTableFormat toTableFormat (self)
- int type (self)

### Special Methods

- bool __eq__ (self, QTextFormat)
- bool __ne__ (self, QTextFormat)

## Detailed Description

The QTextFormat class provides formatting information for a QTextDocument.

A QTextFormat is a generic class used for describing the format of parts of a QTextDocument. The derived classes QTextCharFormat, QTextBlockFormat, QTextListFormat, and QTextTableFormat are usually more useful, and describe the formatting that is applied to specific parts of the document.

A format has a `FormatType` which specifies the kinds of text item it can format; e.g. a block of text, a list, a table, etc. A format also has various properties (some specific to particular format types), as described by the Property enum. Every property has a corresponding Property.

The format type is given by type(), and the format can be tested with isCharFormat(), isBlockFormat(), isListFormat(), isTableFormat(), isFrameFormat(), and isImageFormat(). If the type is determined, it can be retrieved with toCharFormat(), toBlockFormat(), toListFormat(), toTableFormat(), toFrameFormat(), and toImageFormat().

A format's properties can be set with the setProperty() functions, and retrieved with boolProperty(), intProperty(), doubleProperty(), and stringProperty() as appropriate. All the property IDs used in the format can be retrieved with allPropertyIds(). One format can be merged into another using merge().

A format's object index can be set with setObjectIndex(), and retrieved with objectIndex(). These methods can be used to associate the format with a QTextObject. It is used to represent lists, frames, and tables inside the document.

See also Rich Text Processing.

## Type Documentation

### QTextFormat.FormatType

This enum describes the text item a QTextFormat object is formatting.

Constant | Value | Description
--- | --- | ---
`QTextFormat.InvalidFormat` | `-1` | An invalid format as created by the default constructor
`QTextFormat.BlockFormat` | `1` | The object formats a text block
`QTextFormat.CharFormat` | `2` | The object formats a single character
`QTextFormat.ListFormat` | `3` | The object formats a list
`QTextFormat.TableFormat` | `4` | The object formats a table
`QTextFormat.FrameFormat` | `5` | The object formats a frame
`QTextFormat.UserFormat` | `100` |

See also QTextCharFormat, QTextBlockFormat, QTextListFormat, QTextTableFormat, and type().

### QTextFormat.ObjectTypes

This enum describes what kind of QTextObject this format is associated with.

Constant | Value | Description
--- | --- | ---
`QTextFormat.NoObject` | `0` |
`QTextFormat.ImageObject` | `1` |
`QTextFormat.TableObject` | `2` |
`QTextFormat.TableCellObject` | `3` |
`QTextFormat.UserObject` | `0x1000` | The first object that can be used for application-specific purposes.

See also QTextObject, QTextTable, and QTextObject.format().

### QTextFormat.PageBreakFlag

This enum describes how page breaking is performed when printing. It maps to the corresponding css properties.

Constant | Value | Description
--- | --- | ---
`QTextFormat.PageBreak_Auto` | `0` | The page break is determined automatically depending on the available space on the current page
`QTextFormat.PageBreak_AlwaysBefore` | `0x001` | The page is always broken before the paragraph/table
`QTextFormat.PageBreak_AlwaysAfter` | `0x010` | A new page is always started after the paragraph/table

This enum was introduced in Qt 4.2.

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

See also QTextBlockFormat.pageBreakPolicy(), QTextFrameFormat.pageBreakPolicy(), and PageBreakPolicy.

### QTextFormat.Property

This enum describes the different properties a format can have.

Constant | Value | Description
--- | --- | ---
`QTextFormat.ObjectIndex` | `0x0` | The index of the formatted object. See objectIndex().

Paragraph and character properties

Constant | Value | Description
--- | --- | ---
`QTextFormat.CssFloat` | `0x0800` | How a frame is located relative to the surrounding text
`QTextFormat.LayoutDirection` | `0x0801` | The layout direction of the text in the document (Qt.LayoutDirection).
`QTextFormat.OutlinePen` | `0x810` |
`QTextFormat.ForegroundBrush` | `0x821` |
`QTextFormat.BackgroundBrush` | `0x820` |
`QTextFormat.BackgroundImageUrl` | `0x823` |

Paragraph properties

Constant | Value | Description
--- | --- | ---
`QTextFormat.BlockAlignment` | `0x1010` |
`QTextFormat.BlockTopMargin` | `0x1030` |
`QTextFormat.BlockBottomMargin` | `0x1031` |
`QTextFormat.BlockLeftMargin` | `0x1032` |
`QTextFormat.BlockRightMargin` | `0x1033` |
`QTextFormat.TextIndent` | `0x1034` |
`QTextFormat.TabPositions` | `0x1035` | Specifies the tab positions. The tab positions are structs of QTextOption.Tab which are stored in a QList (internally, in a QList<QVariant>).
`QTextFormat.BlockIndent` | `0x1040` |
`QTextFormat.BlockNonBreakableLines` | `0x1050` |
`QTextFormat.BlockTrailingHorizontalRulerWidth` | `0x1060` | The width of a horizontal ruler element.

Character properties

Constant | Value | Description
--- | --- | ---
`QTextFormat.FontFamily` | `0x2000` |
`QTextFormat.FontPointSize` | `0x2001` |
`QTextFormat.FontPixelSize` | `0x2009` |
`QTextFormat.FontSizeAdjustment` | `0x2002` | Specifies the change in size given to the fontsize already set using FontPointSize or FontPixelSize.
`QTextFormat.FontFixedPitch` | `0x2008` |
`QTextFormat.FontWeight` | `0x2003` |
`QTextFormat.FontItalic` | `0x2004` |
`QTextFormat.FontUnderline` | `0x2005` | This property has been deprecated. Use QTextFormat.TextUnderlineStyle instead.
`QTextFormat.FontOverline` | `0x2006` |
`QTextFormat.FontStrikeOut` | `0x2007` |
`QTextFormat.FontCapitalization` | `FirstFontProperty` | Specifies the capitalization type that is to be applied to the text.
`QTextFormat.FontLetterSpacing` | `0x1FE1` | Changes the default spacing between individual letters in the font. The value is specified in percentage, with 100 as the default value.
`QTextFormat.FontWordSpacing` | `0x1FE2` | Changes the default spacing between individual words. A positive value increases the word spacing by the corresponding pixels; a negative value decreases the spacing.
`QTextFormat.FontStyleHint` | `0x1FE3` | Corresponds to the QFont.StyleHint property
`QTextFormat.FontStyleStrategy` | `0x1FE4` | Corresponds to the QFont.StyleStrategy property
`QTextFormat.FontKerning` | `0x1FE5` | Specifies whether the font has kerning turned on.
`QTextFormat.TextUnderlineColor` | `0x2010` |
`QTextFormat.TextVerticalAlignment` | `0x2021` |
`QTextFormat.TextOutline` | `0x2022` |
`QTextFormat.TextUnderlineStyle` | `0x2023` |
`QTextFormat.TextToolTip` | `0x2024` | Specifies the (optional) tool tip to be displayed for a fragment of text.
`QTextFormat.IsAnchor` | `0x2030` |
`QTextFormat.AnchorHref` | `0x2031` |
`QTextFormat.AnchorName` | `0x2032` |
`QTextFormat.ObjectType` | `0x2f00` |

List properties

Constant | Value
--- | ---
`QTextFormat.ListStyle` | `0x3000`
`QTextFormat.ListIndent` | `0x3001`

Table and frame properties

Constant | Value | Description
--- | --- | ---
`QTextFormat.FrameBorder` | `0x4000` |
`QTextFormat.FrameBorderBrush` | `0x4009` |
`QTextFormat.FrameBorderStyle` | `0x4010` | See the BorderStyle enum.
`QTextFormat.FrameBottomMargin` | `0x4006` |
`QTextFormat.FrameHeight` | `0x4004` |
`QTextFormat.FrameLeftMargin` | `0x4007` |
`QTextFormat.FrameMargin` | `0x4001` |
`QTextFormat.FramePadding` | `0x4002` |
`QTextFormat.FrameRightMargin` | `0x4008` |
`QTextFormat.FrameTopMargin` | `0x4005` |
`QTextFormat.FrameWidth` | `0x4003` |
`QTextFormat.TableCellSpacing` | `0x4102` |
`QTextFormat.TableCellPadding` | `0x4103` |
`QTextFormat.TableColumns` | `0x4100` |
`QTextFormat.TableColumnWidthConstraints` | `0x4101` |
`QTextFormat.TableHeaderRowCount` | `0x4104` |

Table cell properties

Constant | Value
--- | ---
`QTextFormat.TableCellRowSpan` | `0x4810`
`QTextFormat.TableCellColumnSpan` | `0x4811`
`QTextFormat.TableCellLeftPadding` | `0x4814`
`QTextFormat.TableCellRightPadding` | `0x4815`
`QTextFormat.TableCellTopPadding` | `0x4812`
`QTextFormat.TableCellBottomPadding` | `0x4813`

Image properties

Constant | Value
--- | ---
`QTextFormat.ImageName` | `0x5000`
`QTextFormat.ImageWidth` | `0x5010`
`QTextFormat.ImageHeight` | `0x5011`

Selection properties

Constant | Value | Description
--- | --- | ---
`QTextFormat.FullWidthSelection` | `0x06000` | When set on the characterFormat of a selection, the whole width of the text will be shown selected.

Page break properties

Constant | Value | Description
--- | --- | ---
`QTextFormat.PageBreakPolicy` | `0x7000` | Specifies how pages are broken. See the PageBreakFlag enum.
`QTextFormat.UserProperty` | `0x100000` |

See also property() and setProperty().

## Method Documentation

### QTextFormat.__init__ (self)

Creates a new text format with an `InvalidFormat`.

See also FormatType.

### QTextFormat.__init__ (self, int)

Creates a new text format of the given type.

See also FormatType.

### QTextFormat.__init__ (self, QTextFormat)

Creates a new text format with the same attributes as the other text format.

### QTextFormat.__init__ (self, QVariant variant)

### QBrush QTextFormat.background (self)

Returns the brush used to paint the document's background.

See also setBackground(), clearBackground(), and foreground().

### bool QTextFormat.boolProperty (self, int)

Returns the value of the property specified by propertyId. If the property isn't of QTextFormat.Bool type, false is returned instead.

See also setProperty(), intProperty(), doubleProperty(), stringProperty(), colorProperty(), lengthProperty(), lengthVectorProperty(), and Property.

### QBrush QTextFormat.brushProperty (self, int)

Returns the value of the property given by propertyId; if the property isn't of QVariant.Brush type, Qt.NoBrush is returned instead.

See also setProperty(), boolProperty(), intProperty(), doubleProperty(), stringProperty(), lengthProperty(), lengthVectorProperty(), and Property.

### QTextFormat.clearBackground (self)

Clears the brush used to paint the document's background. The default brush will be used.

See also background(), setBackground(), and clearForeground().

### QTextFormat.clearForeground (self)

Clears the brush used to paint the document's foreground. The default brush will be used.

See also foreground(), setForeground(), and clearBackground().

### QTextFormat.clearProperty (self, int)

Clears the value of the property given by propertyId

See also Property.

### QColor QTextFormat.colorProperty (self, int)

Returns the value of the property given by propertyId; if the property isn't of QVariant.Color type, an invalid color is returned instead.

See also setProperty(), boolProperty(), intProperty(), doubleProperty(), stringProperty(), lengthProperty(), lengthVectorProperty(), and Property.

### float QTextFormat.doubleProperty (self, int)

Returns the value of the property specified by propertyId. If the property isn't of QVariant.Double or QMetaType.Float type, 0 is returned instead.

See also setProperty(), boolProperty(), intProperty(), stringProperty(), colorProperty(), lengthProperty(), lengthVectorProperty(), and Property.

### QBrush QTextFormat.foreground (self)

Returns the brush used to render foreground details, such as text, frame outlines, and table borders.

See also setForeground(), clearForeground(), and background().

### bool QTextFormat.hasProperty (self, int)

Returns true if the text format has a property with the given propertyId; otherwise returns false.

See also properties() and Property.

### int QTextFormat.intProperty (self, int)

Returns the value of the property specified by propertyId. If the property is not of QTextFormat.Integer type, 0 is returned instead.

See also setProperty(), boolProperty(), doubleProperty(), stringProperty(), colorProperty(), lengthProperty(), lengthVectorProperty(), and Property.

### bool QTextFormat.isBlockFormat (self)

Returns true if this text format is a `BlockFormat`; otherwise returns false.

### bool QTextFormat.isCharFormat (self)

Returns true if this text format is a `CharFormat`; otherwise returns false.

### bool QTextFormat.isFrameFormat (self)

Returns true if this text format is a `FrameFormat`; otherwise returns false.

### bool QTextFormat.isImageFormat (self)

Returns true if this text format is an image format; otherwise returns false.

### bool QTextFormat.isListFormat (self)

Returns true if this text format is a `ListFormat`; otherwise returns false.

### bool QTextFormat.isTableCellFormat (self)

Returns true if this text format is a `TableCellFormat`; otherwise returns false.

This function was introduced in Qt 4.4.

### bool QTextFormat.isTableFormat (self)

Returns true if this text format is a `TableFormat`; otherwise returns false.

### bool QTextFormat.isValid (self)

Returns true if the format is valid (i.e. is not InvalidFormat); otherwise returns false.

### Qt.LayoutDirection QTextFormat.layoutDirection (self)

Returns the document's layout direction.

See also setLayoutDirection().

### QTextLength QTextFormat.lengthProperty (self, int)

Returns the value of the property given by propertyId.

See also setProperty(), boolProperty(), intProperty(), doubleProperty(), stringProperty(), colorProperty(), lengthVectorProperty(), and Property.

### list-of-QTextLength QTextFormat.lengthVectorProperty (self, int)

Returns the value of the property given by propertyId. If the property isn't of QTextFormat.LengthVector type, an empty length vector is returned instead.

See also setProperty(), boolProperty(), intProperty(), doubleProperty(), stringProperty(), colorProperty(), lengthProperty(), and Property.

### QTextFormat.merge (self, QTextFormat)

Merges the other format with this format; where there are conflicts the other format takes precedence.

### int QTextFormat.objectIndex (self)

Returns the index of the format object, or -1 if the format object is invalid.

See also setObjectIndex().

### int QTextFormat.objectType (self)

Returns the text format's object type.

See also ObjectTypes and setObjectType().

### QPen QTextFormat.penProperty (self, int)

Returns the value of the property given by propertyId; if the property isn't of QVariant.Pen type, Qt.NoPen is returned instead.

See also setProperty(), boolProperty(), intProperty(), doubleProperty(), stringProperty(), lengthProperty(), lengthVectorProperty(), and Property.

### dict-of-int-QVariant QTextFormat.properties (self)

Returns a map with all properties of this text format.

### QVariant QTextFormat.property (self, int)

Returns the property specified by the given propertyId.

See also setProperty() and Property.

### int QTextFormat.propertyCount (self)

Returns the number of properties stored in the format.

This function was introduced in Qt 4.3.

### QTextFormat.setBackground (self, QBrush)

Sets the brush use to paint the document's background to the brush specified.

See also background(), clearBackground(), and setForeground().

### QTextFormat.setForeground (self, QBrush)

Sets the foreground brush to the specified brush. The foreground brush is mostly used to render text.

See also foreground(), clearForeground(), and setBackground().

### QTextFormat.setLayoutDirection (self, Qt.LayoutDirection)

Sets the document's layout direction to the specified direction.

See also layoutDirection().

### QTextFormat.setObjectIndex (self, int)

Sets the format object's object index.

See also objectIndex().

### QTextFormat.setObjectType (self, int)

Sets the text format's object type to type.

See also ObjectTypes and objectType().

### QTextFormat.setProperty (self, int, QVariant)

Sets the property specified by the propertyId to the given value.

See also property() and Property.

### QTextFormat.setProperty (self, int, list-of-QTextLength)

Sets the value of the property given by propertyId to value.

See also lengthVectorProperty() and Property.

### QString QTextFormat.stringProperty (self, int)

Returns the value of the property given by propertyId; if the property isn't of QVariant.String type, an empty string is returned instead.

See also setProperty(), boolProperty(), intProperty(), doubleProperty(), colorProperty(), lengthProperty(), lengthVectorProperty(), and Property.

### QTextBlockFormat QTextFormat.toBlockFormat (self)

Returns this format as a block format.

### QTextCharFormat QTextFormat.toCharFormat (self)

Returns this format as a character format.

### QTextFrameFormat QTextFormat.toFrameFormat (self)

Returns this format as a frame format.

### QTextImageFormat QTextFormat.toImageFormat (self)

Returns this format as an image format.

### QTextListFormat QTextFormat.toListFormat (self)

Returns this format as a list format.

### QTextTableCellFormat QTextFormat.toTableCellFormat (self)

Returns this format as a table cell format.

This function was introduced in Qt 4.4.

### QTextTableFormat QTextFormat.toTableFormat (self)

Returns this format as a table format.

### int QTextFormat.type (self)

Returns the type of this format.

See also FormatType.

### bool QTextFormat.__eq__ (self, QTextFormat)

### bool QTextFormat.__ne__ (self, QTextFormat)