QTextCharFormat 类

QTextCharFormat 类为字符提供格式化信息在 QTextDocument . 更多...

头: #include <QTextCharFormat>
CMake: find_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmake: QT += gui
继承: QTextFormat
继承者: QTextImageFormat and QTextTableCellFormat

注意: 此类的所有函数 可重入 .

公共类型

enum FontPropertiesInheritanceBehavior { FontPropertiesSpecifiedOnly, FontPropertiesAll }
enum UnderlineStyle { NoUnderline, SingleUnderline, DashUnderline, DotLine, DashDotLine, …, SpellCheckUnderline }
enum VerticalAlignment { AlignNormal, AlignSuperScript, AlignSubScript, AlignMiddle, AlignBottom, …, AlignBaseline }

公共函数

QTextCharFormat ()
QString anchorHref () const
QStringList anchorNames () const
qreal baselineOffset () const
QFont font () const
QFont::Capitalization fontCapitalization () const
QVariant fontFamilies () const
bool fontFixedPitch () const
QFont::HintingPreference fontHintingPreference () const
bool fontItalic () const
bool fontKerning () const
qreal fontLetterSpacing () const
QFont::SpacingType fontLetterSpacingType () const
bool fontOverline () const
qreal fontPointSize () const
int fontStretch () const
bool fontStrikeOut () const
QFont::StyleHint fontStyleHint () const
QVariant fontStyleName () const
QFont::StyleStrategy fontStyleStrategy () const
bool fontUnderline () const
int fontWeight () const
qreal fontWordSpacing () const
bool isAnchor () const
bool isValid () const
void setAnchor (bool anchor )
void setAnchorHref (const QString & value )
void setAnchorNames (const QStringList & 名称 )
void setBaselineOffset (qreal baseline )
void setFont (const QFont & font , QTextCharFormat::FontPropertiesInheritanceBehavior behavior = FontPropertiesAll)
void setFontCapitalization (QFont::Capitalization capitalization )
void setFontFamilies (const QStringList & families )
void setFontFixedPitch (bool fixedPitch )
void setFontHintingPreference (QFont::HintingPreference hintingPreference )
void setFontItalic (bool italic )
void setFontKerning (bool enable )
void setFontLetterSpacing (qreal spacing )
void setFontLetterSpacingType (QFont::SpacingType letterSpacingType )
void setFontOverline (bool overline )
void setFontPointSize (qreal size )
void setFontStretch (int factor )
void setFontStrikeOut (bool strikeOut )
void setFontStyleHint (QFont::StyleHint hint , QFont::StyleStrategy strategy = QFont::PreferDefault)
void setFontStyleName (const QString & styleName )
void setFontStyleStrategy (QFont::StyleStrategy strategy )
void setFontUnderline (bool underline )
void setFontWeight (int weight )
void setFontWordSpacing (qreal spacing )
void setSubScriptBaseline (qreal baseline )
void setSuperScriptBaseline (qreal baseline )
void setTextOutline (const QPen & pen )
void setToolTip (const QString & text )
void setUnderlineColor (const QColor & color )
void setUnderlineStyle (QTextCharFormat::UnderlineStyle style )
void setVerticalAlignment (QTextCharFormat::VerticalAlignment alignment )
qreal subScriptBaseline () const
qreal superScriptBaseline () const
QPen textOutline () const
QString toolTip () const
QColor underlineColor () const
QTextCharFormat::UnderlineStyle underlineStyle () const
QTextCharFormat::VerticalAlignment verticalAlignment () const

详细描述

文档中文本的字符格式指定文本的视觉特性,及在超文本文档中其角色的有关信息。

The font used can be set by supplying a font to the setFont () function, and each aspect of its appearance can be adjusted to give the desired effect. setFontFamilies () 和 setFontPointSize () define the font's family (e.g. Times) and printed size; setFontWeight () 和 setFontItalic () provide control over the style of the font. setFontUnderline (), setFontOverline (), setFontStrikeOut (),和 setFontFixedPitch () provide additional effects for text.

The color is set with setForeground (). If the text is intended to be used as an anchor (for hyperlinks), this can be enabled with setAnchor ()。 setAnchorHref () 和 setAnchorNames () functions are used to specify the information about the hyperlink's destination and the anchor's name.

另请参阅 QTextFormat , QTextBlockFormat , QTextTableFormat ,和 QTextListFormat .

成员类型文档编制

enum QTextCharFormat:: FontPropertiesInheritanceBehavior

This enum specifies how the setFont () function should behave with respect to unset font properties.

常量 描述
QTextCharFormat::FontPropertiesSpecifiedOnly 0 If a property is not explicitly set, do not change the text format's property value.
QTextCharFormat::FontPropertiesAll 1 If a property is not explicitly set, override the text format's property with a default value.

另请参阅 setFont ().

enum QTextCharFormat:: UnderlineStyle

This enum describes the different ways drawing underlined text.

常量 描述
QTextCharFormat::NoUnderline 0 Text is draw without any underlining decoration.
QTextCharFormat::SingleUnderline 1 A line is drawn using Qt::SolidLine .
QTextCharFormat::DashUnderline 2 Dashes are drawn using Qt::DashLine .
QTextCharFormat::DotLine 3 Dots are drawn using Qt::DotLine ;
QTextCharFormat::DashDotLine 4 Dashes and dots are drawn using Qt::DashDotLine .
QTextCharFormat::DashDotDotLine 5 Underlines draw drawn using Qt::DashDotDotLine .
QTextCharFormat::WaveUnderline 6 The text is underlined using a wave shaped line.
QTextCharFormat::SpellCheckUnderline 7 The underline is drawn depending on the SpellCheckUnderlineStyle theme hint of QPlatformTheme. By default this is mapped to WaveUnderline, on macOS it is mapped to DotLine.

另请参阅 Qt::PenStyle .

enum QTextCharFormat:: VerticalAlignment

This enum describes the ways that adjacent characters can be vertically aligned.

常量 描述
QTextCharFormat::AlignNormal 0 Adjacent characters are positioned in the standard way for text in the writing system in use.
QTextCharFormat::AlignSuperScript 1 Characters are placed above the base line for normal text.
QTextCharFormat::AlignSubScript 2 Characters are placed below the base line for normal text.
QTextCharFormat::AlignMiddle 3 The center of the object is vertically aligned with the base line. Currently, this is only implemented for inline objects.
QTextCharFormat::AlignBottom 5 The bottom edge of the object is vertically aligned with the base line.
QTextCharFormat::AlignTop 4 The top edge of the object is vertically aligned with the base line.
QTextCharFormat::AlignBaseline 6 The base lines of the characters are aligned.

成员函数文档编制

QTextCharFormat:: QTextCharFormat ()

构造新的字符格式对象。

QString QTextCharFormat:: anchorHref () const

返回文本格式的超文本链接,或空字符串若未设置。

另请参阅 setAnchorHref ().

QStringList QTextCharFormat:: anchorNames () const

Returns the anchor names associated with this text format, or an empty string list if none has been set. If the anchor names are set, text with this format can be the destination of a hypertext link.

另请参阅 setAnchorNames ().

[since 6.0] qreal QTextCharFormat:: baselineOffset () const

Returns the the baseline offset in %.

该函数在 Qt 6.0 引入。

另请参阅 setBaselineOffset (), setSubScriptBaseline (), subScriptBaseline (), setSuperScriptBaseline (),和 superScriptBaseline ().

QFont QTextCharFormat:: font () const

Returns the font for this character format.

另请参阅 setFont ().

QFont::Capitalization QTextCharFormat:: fontCapitalization () const

返回字体的当前大写类型。

另请参阅 setFontCapitalization ().

QVariant QTextCharFormat:: fontFamilies () const

Returns the text format's font families.

注意: This function returns a QVariant for historical reasons. It will be corrected to return QStringList in Qt 7. The variant contains a QStringList object, which can be extracted by calling toStringList() on it.

另请参阅 setFontFamilies () 和 font ().

bool QTextCharFormat:: fontFixedPitch () const

返回 true if the text format's font is fixed pitch; otherwise returns false .

另请参阅 setFontFixedPitch () 和 font ().

QFont::HintingPreference QTextCharFormat:: fontHintingPreference () const

Returns the hinting preference set for this text format.

另请参阅 setFontHintingPreference (), font (),和 QFont::hintingPreference ().

bool QTextCharFormat:: fontItalic () const

返回 true if the text format's font is italic; otherwise returns false .

另请参阅 setFontItalic () 和 font ().

bool QTextCharFormat:: fontKerning () const

返回 true if the font kerning is enabled.

另请参阅 setFontKerning () 和 font ().

qreal QTextCharFormat:: fontLetterSpacing () const

Returns the current letter spacing.

另请参阅 setFontLetterSpacing (), setFontLetterSpacingType (),和 fontLetterSpacingType ().

QFont::SpacingType QTextCharFormat:: fontLetterSpacingType () const

Returns the letter spacing type of this format..

另请参阅 setFontLetterSpacingType (), setFontLetterSpacing (),和 fontLetterSpacing ().

bool QTextCharFormat:: fontOverline () const

返回 true if the text format's font is overlined; otherwise returns false .

另请参阅 setFontOverline () 和 font ().

qreal QTextCharFormat:: fontPointSize () const

Returns the font size used to display text in this format.

另请参阅 setFontPointSize () 和 font ().

int QTextCharFormat:: fontStretch () const

Returns the current font stretching.

另请参阅 setFontStretch ().

bool QTextCharFormat:: fontStrikeOut () const

返回 true if the text format's font is struck out (has a horizontal line drawn through it); otherwise returns false .

另请参阅 setFontStrikeOut () 和 font ().

QFont::StyleHint QTextCharFormat:: fontStyleHint () const

Returns the font style hint.

另请参阅 setFontStyleHint () 和 font ().

QVariant QTextCharFormat:: fontStyleName () const

Returns the text format's font style name.

注意: This function returns a QVariant for historical reasons. It will be corrected to return QStringList in Qt 7. The variant contains a QStringList object, which can be extracted by calling toStringList() on it.

另请参阅 setFontStyleName (), font (),和 QFont::styleName ().

QFont::StyleStrategy QTextCharFormat:: fontStyleStrategy () const

返回当前字体样式对策。

另请参阅 setFontStyleStrategy () 和 font ().

bool QTextCharFormat:: fontUnderline () const

返回 true 若文本格式的字体带下划线;否则返回 false .

另请参阅 setFontUnderline () 和 font ().

int QTextCharFormat:: fontWeight () const

返回文本格式的字体粗细。

另请参阅 setFontWeight (), font (),和 QFont::Weight .

qreal QTextCharFormat:: fontWordSpacing () const

返回当前单词的间距值。

另请参阅 setFontWordSpacing ().

bool QTextCharFormat:: isAnchor () const

返回 true if the text is formatted as an anchor; otherwise returns false .

另请参阅 setAnchor (), setAnchorHref (),和 setAnchorNames ().

bool QTextCharFormat:: isValid () const

返回 true if this character format is valid; otherwise returns false.

void QTextCharFormat:: setAnchor ( bool anchor )

anchor is true, text with this format represents an anchor, and is formatted in the appropriate way; otherwise the text is formatted normally. (Anchors are hyperlinks which are often shown underlined and in a different color from plain text.)

The way the text is rendered is independent of whether or not the format has a valid anchor defined. Use setAnchorHref (), and optionally setAnchorNames () to create a hypertext link.

另请参阅 isAnchor ().

void QTextCharFormat:: setAnchorHref (const QString & value )

Sets the hypertext link for the text format to the given value . This is typically a URL like "http://example.com/index.html".

The anchor will be displayed with the value as its display text; if you want to display different text call setAnchorNames ().

To format the text as a hypertext link use setAnchor ().

另请参阅 anchorHref ().

void QTextCharFormat:: setAnchorNames (const QStringList & 名称 )

设置文本格式的锚点 names . For the anchor to work as a hyperlink, the destination must be set with setAnchorHref () and the anchor must be enabled with setAnchor ().

另请参阅 anchorNames ().

[since 6.0] void QTextCharFormat:: setBaselineOffset ( qreal baseline )

Sets the base line (in % of height) of text to baseline . A positive value moves the text up, by the corresponding %; a negative value moves it down. The default value is 0.

该函数在 Qt 6.0 引入。

另请参阅 baselineOffset (), setSubScriptBaseline (), subScriptBaseline (), setSuperScriptBaseline (),和 superScriptBaseline ().

void QTextCharFormat:: setFont (const QFont & font , QTextCharFormat::FontPropertiesInheritanceBehavior behavior = FontPropertiesAll)

设置文本格式的 font .

behavior is QTextCharFormat::FontPropertiesAll , the font property that has not been explicitly set is treated like as it were set with default value; If behavior is QTextCharFormat::FontPropertiesSpecifiedOnly , the font property that has not been explicitly set is ignored and the respective property value remains unchanged.

另请参阅 font ().

void QTextCharFormat:: setFontCapitalization ( QFont::Capitalization capitalization )

Sets the capitalization of the text that appears in this font to capitalization .

字体大写使文本以选中大写模式出现。

另请参阅 fontCapitalization ().

void QTextCharFormat:: setFontFamilies (const QStringList & families )

设置文本格式的字体 families .

另请参阅 fontFamilies () 和 setFont ().

void QTextCharFormat:: setFontFixedPitch ( bool fixedPitch )

fixedPitch is true, sets the text format's font to be fixed pitch; otherwise a non-fixed pitch font is used.

另请参阅 fontFixedPitch () 和 setFont ().

void QTextCharFormat:: setFontHintingPreference ( QFont::HintingPreference hintingPreference )

Sets the hinting preference of the text format's font to be hintingPreference .

另请参阅 fontHintingPreference (), setFont (),和 QFont::setHintingPreference ().

void QTextCharFormat:: setFontItalic ( bool italic )

italic is true, sets the text format's font to be italic; otherwise the font will be non-italic.

另请参阅 fontItalic () 和 setFont ().

void QTextCharFormat:: setFontKerning ( bool enable )

为此字体启用字距调整,若 enable 为 true;否则禁用它。

When kerning is enabled, glyph metrics do not add up anymore, even for Latin text. In other words, the assumption that width('a') + width('b') is equal to width("ab") is not neccesairly true.

另请参阅 fontKerning () 和 setFont ().

void QTextCharFormat:: setFontLetterSpacing ( qreal spacing )

Sets the letter spacing of this format to the given spacing . The meaning of the value depends on the font letter spacing type.

For percentage spacing a value of 100 indicates default spacing; a value of 200 doubles the amount of space a letter takes.

另请参阅 fontLetterSpacing (), setFontLetterSpacingType (),和 fontLetterSpacingType ().

void QTextCharFormat:: setFontLetterSpacingType ( QFont::SpacingType letterSpacingType )

将此格式的字母间距类型设为 letterSpacingType .

另请参阅 fontLetterSpacingType (), setFontLetterSpacing (),和 fontLetterSpacing ().

void QTextCharFormat:: setFontOverline ( bool overline )

overline is true, sets the text format's font to be overlined; otherwise the font is displayed non-overlined.

另请参阅 fontOverline () 和 setFont ().

void QTextCharFormat:: setFontPointSize ( qreal size )

设置文本格式的字体 size .

另请参阅 fontPointSize () 和 setFont ().

void QTextCharFormat:: setFontStretch ( int factor )

Sets the stretch factor for the font to factor .

The stretch factor changes the width of all characters in the font by factor percent. For example, setting factor to 150 results in all characters in the font being 1.5 times (ie. 150%) wider. The default stretch factor is 100. The minimum stretch factor is 1, and the maximum stretch factor is 4000.

拉伸因子仅应用于轮廓字体。位图字体会忽略拉伸因子。

另请参阅 fontStretch ().

void QTextCharFormat:: setFontStrikeOut ( bool strikeOut )

strikeOut is true, sets the text format's font with strike-out enabled (with a horizontal line through it); otherwise it is displayed without strikeout.

另请参阅 fontStrikeOut () 和 setFont ().

void QTextCharFormat:: setFontStyleHint ( QFont::StyleHint hint , QFont::StyleStrategy strategy = QFont::PreferDefault)

Sets the font style hint and strategy .

Qt does not support style hints on X11 since this information is not provided by the window system.

另请参阅 fontStyleHint (), setFont (),和 QFont::setStyleHint ().

void QTextCharFormat:: setFontStyleName (const QString & styleName )

设置文本格式的字体 styleName .

另请参阅 fontStyleName (), setFont (),和 QFont::setStyleName ().

void QTextCharFormat:: setFontStyleStrategy ( QFont::StyleStrategy strategy )

Sets the font style strategy .

另请参阅 fontStyleStrategy (), setFont (),和 QFont::setStyleStrategy ().

void QTextCharFormat:: setFontUnderline ( bool underline )

underline is true, sets the text format's font to be underlined; otherwise it is displayed non-underlined.

另请参阅 fontUnderline () 和 setFont ().

void QTextCharFormat:: setFontWeight ( int weight )

Sets the text format's font weight to weight .

另请参阅 fontWeight (), setFont (),和 QFont::Weight .

void QTextCharFormat:: setFontWordSpacing ( qreal spacing )

Sets the word spacing of this format to the given spacing (以像素为单位)。

另请参阅 fontWordSpacing ().

[since 6.0] void QTextCharFormat:: setSubScriptBaseline ( qreal baseline )

Sets the subscript's base line as a % of font height to baseline . The default value is 16.67% (1/6 of height)

该函数在 Qt 6.0 引入。

另请参阅 subScriptBaseline (), setSuperScriptBaseline (), superScriptBaseline (), setBaselineOffset (),和 baselineOffset ().

[since 6.0] void QTextCharFormat:: setSuperScriptBaseline ( qreal baseline )

Sets the superscript's base line as a % of font height to baseline . The default value is 50% (1/2 of height).

该函数在 Qt 6.0 引入。

另请参阅 superScriptBaseline (), setSubScriptBaseline (), subScriptBaseline (), setBaselineOffset (),和 baselineOffset ().

void QTextCharFormat:: setTextOutline (const QPen & pen )

Sets the pen used to draw the outlines of characters to the given pen .

另请参阅 textOutline ().

void QTextCharFormat:: setToolTip (const QString & text )

Sets the tool tip for a fragment of text to the given text .

另请参阅 toolTip ().

void QTextCharFormat:: setUnderlineColor (const QColor & color )

Sets the color used to draw underlines, overlines and strikeouts on the characters with this format to the color 指定。

另请参阅 underlineColor ().

void QTextCharFormat:: setUnderlineStyle ( QTextCharFormat::UnderlineStyle style )

将文本的下划线样式设为 style .

另请参阅 underlineStyle ().

void QTextCharFormat:: setVerticalAlignment ( QTextCharFormat::VerticalAlignment alignment )

Sets the vertical alignment used for the characters with this format to the alignment 指定。

另请参阅 verticalAlignment ().

[since 6.0] qreal QTextCharFormat:: subScriptBaseline () const

Returns the subscript's base line as a % of font height.

该函数在 Qt 6.0 引入。

另请参阅 setSubScriptBaseline (), setSuperScriptBaseline (), superScriptBaseline (), setBaselineOffset (),和 baselineOffset ().

[since 6.0] qreal QTextCharFormat:: superScriptBaseline () const

Returns the superscript's base line as a % of font height.

该函数在 Qt 6.0 引入。

另请参阅 setSuperScriptBaseline (), setSubScriptBaseline (), subScriptBaseline (), setBaselineOffset (),和 baselineOffset ().

QPen QTextCharFormat:: textOutline () const

Returns the pen used to draw the outlines of characters in this format.

另请参阅 setTextOutline ().

QString QTextCharFormat:: toolTip () const

Returns the tool tip that is displayed for a fragment of text.

另请参阅 setToolTip ().

QColor QTextCharFormat:: underlineColor () const

Returns the color used to draw underlines, overlines and strikeouts on the characters with this format.

另请参阅 setUnderlineColor ().

QTextCharFormat::UnderlineStyle QTextCharFormat:: underlineStyle () const

返回文本的下划线样式。

另请参阅 setUnderlineStyle ().

QTextCharFormat::VerticalAlignment QTextCharFormat:: verticalAlignment () const

Returns the vertical alignment used for characters with this format.

另请参阅 setVerticalAlignment ().