CopperSpice API  1.7.4
QTextBlockFormat Class Reference

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

Inheritance diagram for QTextBlockFormat:

Public Types

enum  LineHeightTypes
- Public Types inherited from QTextFormat
enum  FormatType
enum  ObjectTypes
enum  Property

Public Methods

 QTextBlockFormat ()
Qt::Alignment alignment () const
qreal bottomMargin () const
int indent () const
bool isValid () const
qreal leftMargin () const
qreal lineHeight () const
qreal lineHeight (qreal scriptLineHeight, qreal scaling) const
int lineHeightType () const
bool nonBreakableLines () const
PageBreakFlags pageBreakPolicy () const
qreal rightMargin () const
void setAlignment (Qt::Alignment alignment)
void setBottomMargin (qreal margin)
void setIndent (int indent)
void setLeftMargin (qreal margin)
void setLineHeight (qreal height, int heightType)
void setNonBreakableLines (bool b)
void setPageBreakPolicy (PageBreakFlags policy)
void setRightMargin (qreal margin)
void setTabPositions (const QList< QTextOption::Tab > &tabs)
void setTextIndent (qreal indent)
void setTopMargin (qreal margin)
QList< QTextOption::TabtabPositions () const
qreal textIndent () const
qreal topMargin () const
- Public Methods inherited from QTextFormat
 QTextFormat ()
 QTextFormat (const QTextFormat &other)
 QTextFormat (int type)
 ~QTextFormat ()
QBrush background () const
bool boolProperty (int propertyId) const
QBrush brushProperty (int propertyId) const
void clearBackground ()
void clearForeground ()
void clearProperty (int propertyId)
QColor colorProperty (int propertyId) const
qreal doubleProperty (int propertyId) const
QBrush foreground () const
bool hasProperty (int propertyId) const
int intProperty (int propertyId) const
bool isBlockFormat () const
bool isCharFormat () const
bool isEmpty () const
bool isFrameFormat () const
bool isImageFormat () const
bool isListFormat () const
bool isTableCellFormat () const
bool isTableFormat () const
bool isValid () const
Qt::LayoutDirection layoutDirection () const
QTextLength lengthProperty (int propertyId) const
QVector< QTextLengthlengthVectorProperty (int propertyId) const
void merge (const QTextFormat &other)
int objectIndex () const
int objectType () const
 operator QVariant () const
bool operator!= (const QTextFormat &other) const
QTextFormat & operator= (const QTextFormat &other)
bool operator== (const QTextFormat &other) const
QPen penProperty (int propertyId) const
QMap< int, QVariantproperties () const
QVariant property (int propertyId) const
int propertyCount () const
void setBackground (const QBrush &brush)
void setForeground (const QBrush &brush)
void setLayoutDirection (Qt::LayoutDirection direction)
void setObjectIndex (int index)
void setObjectType (int type)
void setProperty (int propertyId, const QVariant &value)
void setProperty (int propertyId, const QVector< QTextLength > &value)
QString stringProperty (int propertyId) const
void swap (QTextFormat &other)
QTextBlockFormat toBlockFormat () const
QTextCharFormat toCharFormat () const
QTextFrameFormat toFrameFormat () const
QTextImageFormat toImageFormat () const
QTextListFormat toListFormat () const
QTextTableCellFormat toTableCellFormat () const
QTextTableFormat toTableFormat () const
int type () const


class QTextFormat

Detailed Description

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

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, QTextCharFormat

Member Enumeration Documentation

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

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).
See also
lineHeight(), lineHeightType(), setLineHeight()

Constructor & Destructor Documentation

QTextBlockFormat::QTextBlockFormat ( )

Constructs a new QTextBlockFormat.

Method Documentation

Qt::Alignment QTextBlockFormat::alignment ( ) const

Returns the paragraph's alignment.

See also
qreal QTextBlockFormat::bottomMargin ( ) const

Returns the paragraph's bottom margin.

See also
setBottomMargin(), topMargin()
int QTextBlockFormat::indent ( ) const

Returns the paragraph's indent.

See also
bool QTextBlockFormat::isValid ( ) const

Returns true if this block format is valid, otherwise returns false.

qreal QTextBlockFormat::leftMargin ( ) const

Returns the paragraph's left margin.

See also
setLeftMargin(), rightMargin(), indent()
qreal QTextBlockFormat::lineHeight ( ) const

This returns the LineHeight property for the paragraph.

See also
LineHeightTypes, setLineHeight(), lineHeightType()
qreal QTextBlockFormat::lineHeight ( qreal  scriptLineHeight,
qreal  scaling = 1.0 
) const

Returns the height of the lines in the paragraph based on the height of the script line given by scriptLineHeight and the specified scaling factor.

The value that is returned is also dependent on the given LineHeightType of the paragraph as well as the LineHeight setting that has been set for the paragraph.

The scaling is needed for heights that include a fixed number of pixels, to scale them appropriately for printing.

See also
LineHeightTypes, setLineHeight(), lineHeightType()
int QTextBlockFormat::lineHeightType ( ) const

This returns the LineHeightType property of the paragraph.

See also
LineHeightTypes, setLineHeight(), lineHeight()
bool QTextBlockFormat::nonBreakableLines ( ) const

Returns true if the lines in the paragraph are non-breakable, otherwise returns false.

See also
PageBreakFlags QTextBlockFormat::pageBreakPolicy ( ) const

Returns the currently set page break policy for the paragraph. The default is QTextFormat::PageBreak_Auto.

See also
qreal QTextBlockFormat::rightMargin ( ) const

Returns the paragraph's right margin.

See also
setRightMargin(), leftMargin()
void QTextBlockFormat::setAlignment ( Qt::Alignment  alignment)

Sets the paragraph's alignment.

See also
void QTextBlockFormat::setBottomMargin ( qreal  margin)

Sets the paragraph's bottom margin.

See also
bottomMargin(), setTopMargin(), setLeftMargin(), setRightMargin()
void QTextBlockFormat::setIndent ( int  indent)

Sets the paragraph's indent. Margins are set independently of indentation with setLeftMargin() and setTextIndent(). The indentation is an integer that is multiplied with the document-wide standard indent, resulting in the actual indent of the paragraph.

See also
indent(), QTextDocument::indentWidth()
void QTextBlockFormat::setLeftMargin ( qreal  margin)

Sets the paragraph's left margin. Indentation can be applied separately with setIndent().

See also
leftMargin(), setRightMargin(), setTopMargin(), setBottomMargin()
void QTextBlockFormat::setLineHeight ( qreal  height,
int  heightType 

Sets the line height for the paragraph to the value given by height which is dependent on heightType in the way described by the LineHeightTypes enum.

See also
LineHeightTypes, lineHeight(), lineHeightType()
void QTextBlockFormat::setNonBreakableLines ( bool  b)

If b is true, the lines in the paragraph are treated as non-breakable, otherwise they are breakable.

See also
void QTextBlockFormat::setPageBreakPolicy ( PageBreakFlags  policy)

Sets the page break policy for the paragraph to policy.

See also
void QTextBlockFormat::setRightMargin ( qreal  margin)

Sets the paragraph's right margin.

See also
rightMargin(), setLeftMargin(), setTopMargin(), setBottomMargin()
void QTextBlockFormat::setTabPositions ( const QList< QTextOption::Tab > &  tabs)

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

See also
void QTextBlockFormat::setTextIndent ( qreal  indent)

Sets the indent for the first line in the block. This allows the first line of a paragraph to be indented differently to the other lines, enhancing the readability of the text.

See also
textIndent(), setLeftMargin(), setRightMargin(), setTopMargin(), setBottomMargin()
void QTextBlockFormat::setTopMargin ( qreal  margin)

Sets the paragraph's top margin.

See also
topMargin(), setBottomMargin(), setLeftMargin(), setRightMargin()
QList< QTextOption::Tab > QTextBlockFormat::tabPositions ( ) const

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

See also
qreal QTextBlockFormat::textIndent ( ) const

Returns the paragraph's text indent.

See also
qreal QTextBlockFormat::topMargin ( ) const

Returns the paragraph's top margin.

See also
setTopMargin(), bottomMargin()