Класс QTextCharFormat
Класс QTextCharFormat предоставляет информацию о форматировании символов в QTextDocument. Подробнее...
| Заголовок: | #include <QTextCharFormat> |
| CMake: | find_package(Qt6 COMPONENTS Gui REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Gui) |
| qmake: | QT += gui |
| Наследует: | QTextFormat |
| Наследуется для: |
Примечание: Все функции в этом классе являются повторно входящими.
Открытые типы
| Перечисление | FontPropertiesInheritanceBehavior { FontPropertiesSpecifiedOnly, FontPropertiesAll } |
| Перечисление | СтильПодчёркивания { NoUnderline, SingleUnderline, DashUnderline, DotLine, DashDotLine, …, SpellCheckUnderline } |
| Перечисление | ВыравниваниеПоВертикали { 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 |
| QString | fontFamily() 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 &names) |
| void | setBaselineOffset(qreal baseline) |
| void | setFont(const QFont &font, QTextCharFormat::FontPropertiesInheritanceBehavior behavior = FontPropertiesAll) |
| void | setFontCapitalization(QFont::Capitalization capitalization) |
| void | setFontFamilies(const QStringList &families) |
| void | setFontFamily(const QString &family) |
| 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 | текстовыйКонтур() const |
| QString | подсказка() const |
| QColor | цветПодчёркивания() const |
| QTextCharFormat::UnderlineStyle | стильПодчёркивания() const |
| QTextCharFormat::VerticalAlignment | вертикальноеВыравнивание() const |
Подробное описание
Формат символов текста в документе задаёт визуальные свойства текста, а также информацию о его роли в гипертекстовом документе.
Используемый шрифт можно задать, передав его в функцию setFont(), и каждый аспект его отображения можно настроить для достижения нужного эффекта. setFontFamily() и setFontPointSize() определяют семейство шрифта (например, Times) и размер шрифта; setFontWeight() и setFontItalic() обеспечивают контроль над стилем шрифта. setFontUnderline(), setFontOverline(), setFontStrikeOut() и setFontFixedPitch() обеспечивают дополнительные эффекты для текста.
Цвет задаётся с помощью setForeground(). Если текст предназначен для использования в качестве якоря (для гиперссылок), это можно включить с помощью setAnchor(). Функции setAnchorHref() и setAnchorNames() используются для указания информации об адресе назначения гиперссылки и имени якоря.
См. также QTextFormat, QTextBlockFormat, QTextTableFormat и QTextListFormat.
Документация по типам членов
[since 5.3] перечисление QTextCharFormat::FontPropertiesInheritanceBehavior
Это перечисление определяет, как функция setFont() должна вести себя по отношению к не заданным свойствам шрифта.
| Постоянная | Значение | Описание |
|---|---|---|
QTextCharFormat::FontPropertiesSpecifiedOnly |
0 |
Если свойство не явно задано, не изменяйте значение свойства формата текста. |
QTextCharFormat::FontPropertiesAll |
1 |
Если свойство не явно задано, переопределите свойство формата текста значением по умолчанию. |
Это перечисление было введено или изменено в Qt 5.3.
См. также setFont().
перечисление QTextCharFormat::UnderlineStyle
Это перечисление описывает различные способы рисования текста с подчеркиванием.
| Постоянная | Значение | Описание |
|---|---|---|
QTextCharFormat::NoUnderline |
0 |
Текст рисуется без каких-либо декораций подчеркивания. |
QTextCharFormat::SingleUnderline |
1 |
Рисуется линия с помощью Qt::SolidLine. |
QTextCharFormat::DashUnderline |
2 |
Рисуются тире с помощью Qt::DashLine. |
См. также Qt::PenStyle.
перечисление QTextCharFormat::VerticalAlignment
Это перечисление описывает способы вертикального выравнивания смежных символов.
Документация по функциям-членам
QTextCharFormat::QTextCharFormat()
Создаёт новый объект формата символов.
QString QTextCharFormat::anchorHref() const
Возвращает гиперссылку формата текста или пустую строку, если она не задана.
См. также setAnchorHref().
QStringList QTextCharFormat::anchorNames() const
Возвращает имена якорей, связанные с этим форматом текста, или пустой список, если они не заданы. Если имена якорей заданы, текст с этим форматом может быть местом назначения гиперссылки.
См. также setAnchorNames().
[since 6.0] qreal QTextCharFormat::baselineOffset() const
Возвращает смещение базовой линии в %.
Эта функция была введена в Qt 6.0.
См. также setBaselineOffset(), setSubScriptBaseline(), subScriptBaseline(), setSuperScriptBaseline(), и superScriptBaseline().
QFont QTextCharFormat::font() const
Возвращает шрифт для этого формата символов.
См. также setFont().
QFont::Capitalization QTextCharFormat::fontCapitalization() const
Возвращает текущий тип капитализации шрифта.
См. также setFontCapitalization().
[since 5.13] QVariant QTextCharFormat::fontFamilies() const
Возвращает семейства шрифтов формата текста.
Эта функция была введена в Qt 5.13.
См. также setFontFamilies() и font().
QString QTextCharFormat::fontFamily() const
Возвращает семейство шрифтов формата текста.
См. также setFontFamily() и font().
bool QTextCharFormat::fontFixedPitch() const
Возвращает true если шрифт формата текста имеет фиксированный шаг; в противном случае возвращает false.
См. также setFontFixedPitch() и font().
QFont::HintingPreference QTextCharFormat::fontHintingPreference() const
Возвращает настройку отображения, заданную для этого формата текста.
См. также setFontHintingPreference(), font(), и QFont::hintingPreference().
END_OF_DOCUMENT_MARKER ```bool QTextCharFormat::fontItalic() const
Возвращает true если шрифт форматирования текста курсивный; в противном случае возвращает false.
См. также setFontItalic() и font().
bool QTextCharFormat::fontKerning() const
Возвращает true если керинг шрифта включён.
См. также setFontKerning() и font().
qreal QTextCharFormat::fontLetterSpacing() const
Возвращает текущий интерлиньяж.
См. также setFontLetterSpacing(), setFontLetterSpacingType() и fontLetterSpacingType().
[since 5.0] QFont::SpacingType QTextCharFormat::fontLetterSpacingType() const
Возвращает тип интерлиньяжа данного форматирования.
Эта функция была добавлена в Qt 5.0.
См. также setFontLetterSpacingType(), setFontLetterSpacing() и fontLetterSpacing().
bool QTextCharFormat::fontOverline() const
Возвращает true если шрифт форматирования текста подчеркнут сверху; в противном случае возвращает false.
См. также setFontOverline() и font().
qreal QTextCharFormat::fontPointSize() const
Возвращает размер шрифта, используемый для отображения текста в этом формате.
См. также setFontPointSize() и font().
[since 5.0] int QTextCharFormat::fontStretch() const
Возвращает текущее растяжение шрифта.
Эта функция была добавлена в Qt 5.0.
См. также setFontStretch().
bool QTextCharFormat::fontStrikeOut() const
Возвращает true если шрифт форматирования текста зачёркнут (имеет горизонтальную линию через него); в противном случае возвращает false.
См. также setFontStrikeOut() и font().
QFont::StyleHint QTextCharFormat::fontStyleHint() const
Возвращает подсказку стиля шрифта.
См. также setFontStyleHint() и font().
[since 5.13] QVariant QTextCharFormat::fontStyleName() const
Возвращает имя стиля шрифта форматирования текста.
Эта функция была добавлена в Qt 5.13.
См. также 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 если текст отформатирован как ссылка; в противном случае возвращает false.
См. также setAnchor(), setAnchorHref() и setAnchorNames().
bool QTextCharFormat::isValid() const
Возвращает true если этот формат символа действителен; в противном случае возвращает false.
void QTextCharFormat::setAnchor(bool anchor)
Если anchor истинно, текст с этим форматом представляет собой ссылку и отформатирован соответствующим образом; в противном случае текст отформатирован стандартно. (Ссылки — это гиперссылки, которые часто отображаются подчеркнутыми и другим цветом, отличным от обычного текста.)
Способ отображения текста не зависит от того, определена ли ссылка в формате. Используйте setAnchorHref() и необязательно setAnchorNames() для создания гипертекстовой ссылки.
См. также isAnchor().
void QTextCharFormat::setAnchorHref(const QString &value)
Устанавливает гипертекстовую ссылку для формата текста на заданное value. Это обычно URL-адрес, например, "http://example.com/index.html".
Ссылка будет отображаться с value как отображаемым текстом; если вы хотите отобразить другой текст, вызовите setAnchorNames().
Для форматирования текста как гипертекстовой ссылки используйте setAnchor().
См. также anchorHref().
void QTextCharFormat::setAnchorNames(const QStringList &names)
Устанавливает имена ссылок формата текста. Для работы ссылки как гиперссылки, назначение должно быть установлено с помощью setAnchorHref(), и ссылка должна быть включена с помощью setAnchor().
См. также anchorNames().
[since 6.0] void QTextCharFormat::setBaselineOffset(qreal baseline)
Устанавливает базовую линию (в процентах от высоты) текста до baseline. Положительное значение перемещает текст вверх на соответствующий процент; отрицательное значение перемещает его вниз. Значение по умолчанию равно 0.
Эта функция была добавлена в Qt 6.0.
См. также baselineOffset(), setSubScriptBaseline(), subScriptBaseline(), setSuperScriptBaseline() и superScriptBaseline().
[since 5.3] void QTextCharFormat::setFont(const QFont &font, QTextCharFormat::FontPropertiesInheritanceBehavior behavior = FontPropertiesAll)
Устанавливает шрифт формата текста.
Если behavior имеет значение QTextCharFormat::FontPropertiesAll, свойство шрифта, которое не было явно установлено, обрабатывается так, как будто оно было установлено с помощью значения по умолчанию; если behavior имеет значение QTextCharFormat::FontPropertiesSpecifiedOnly, свойство шрифта, которое не было явно установлено, игнорируется, и соответствующее значение свойства остаётся неизменным.
Эта функция была добавлена в Qt 5.3.
См. также font().
void QTextCharFormat::setFontCapitalization(QFont::Capitalization capitalization)
Устанавливает регистр текста, отображаемого в этом шрифте, на capitalization.
Регистр шрифта отображает текст в выбранном режиме.
См. также fontCapitalization().
[since 5.13] void QTextCharFormat::setFontFamilies(const QStringList &families)
Устанавливает шрифтовые семейства для формата текста.
Эта функция была добавлена в Qt 5.13.
См. также fontFamilies() и setFont().
void QTextCharFormat::setFontFamily(const QString &family)
Устанавливает семейство шрифтов для формата текста.
См. также fontFamily() и setFont().
void QTextCharFormat::setFontFixedPitch(bool fixedPitch)
Если fixedPitch имеет значение true, устанавливает шрифт формата текста с фиксированным кеглем; в противном случае используется шрифт без фиксированного кегля.
См. также fontFixedPitch() и setFont().
void QTextCharFormat::setFontHintingPreference(QFont::HintingPreference hintingPreference)
Устанавливает предпочтение сглаживания шрифта для текстового формата на hintingPreference.
См. также fontHintingPreference(), setFont() и QFont::setHintingPreference().
void QTextCharFormat::setFontItalic(bool italic)
Если italic истинно, устанавливает шрифт текстового формата курсивным; в противном случае шрифт будет не курсивным.
См. также fontItalic() и setFont().
void QTextCharFormat::setFontKerning(bool enable)
Включает кернинг для этого шрифта, если enable истинно; в противном случае выключает его.
Когда кернинг включен, метрики глифов больше не складываются, даже для латинского текста. Другими словами, предположение, что width('a') + width('b') равно width("ab"), не обязательно верно.
См. также fontKerning() и setFont().
void QTextCharFormat::setFontLetterSpacing(qreal spacing)
Устанавливает интерлиньяж этого формата на заданное значение spacing. Значение зависит от типа интерлиньяжа шрифта.
Для интерлиньяжа в процентах значение 100 соответствует стандартному интерлиньяжу; значение 200 удваивает занимаемое буквой пространство.
См. также fontLetterSpacing(), setFontLetterSpacingType() и fontLetterSpacingType().
void QTextCharFormat::setFontLetterSpacingType(QFont::SpacingType letterSpacingType)
Устанавливает тип интерлиньяжа для этого формата на letterSpacingType.
Эта функция была добавлена в Qt 5.0.
См. также fontLetterSpacingType(), setFontLetterSpacing() и fontLetterSpacing().
void QTextCharFormat::setFontOverline(bool overline)
Если overline истинно, устанавливает шрифт текстового формата с подчеркиванием сверху; в противном случае шрифт отображается без подчеркивания сверху.
См. также fontOverline() и setFont().
void QTextCharFormat::setFontPointSize(qreal size)
Устанавливает размер шрифта текстового формата на size.
См. также fontPointSize() и setFont().
void QTextCharFormat::setFontStretch(int factor)
Устанавливает коэффициент растяжения шрифта на factor.
Коэффициент растяжения изменяет ширину всех символов шрифта на factor процентов. Например, установка factor в 150 приводит к тому, что все символы шрифта становятся в 1,5 раза (то есть на 150%) шире. Значение по умолчанию для коэффициента растяжения — 100. Минимальный коэффициент растяжения — 1, максимальный — 4000.
Коэффициент растяжения применяется только к контурным шрифтам. Коэффициент растяжения игнорируется для растровых шрифтов.
Эта функция была добавлена в Qt 5.0.
См. также fontStretch().
void QTextCharFormat::setFontStrikeOut(bool strikeOut)
Если strikeOut истинно, устанавливает шрифт текстового формата с включённым зачёркиванием (с горизонтальной линией через него); в противном случае отображается без зачёркивания.
См. также fontStrikeOut() и setFont().
void QTextCharFormat::setFontStyleHint(QFont::StyleHint hint, QFont::StyleStrategy strategy = QFont::PreferDefault)
Устанавливает стиль шрифта hint и strategy.
Qt не поддерживает подсказки стиля на X11, так как эта информация не предоставляется системой окон.
См. также fontStyleHint(), setFont() и QFont::setStyleHint().
void QTextCharFormat::setFontStyleName(const QString &styleName)
Устанавливает имя стиля шрифта styleName для текстового формата.
Эта функция была добавлена в Qt 5.13.
См. также fontStyleName(), setFont() и QFont::setStyleName().
void QTextCharFormat::setFontStyleStrategy(QFont::StyleStrategy strategy)
Устанавливает стратегию стиля шрифта strategy.
См. также fontStyleStrategy(), setFont() и QFont::setStyleStrategy().
void QTextCharFormat::setFontUnderline(bool underline)
Если underline истинно, устанавливает шрифт текстового формата с подчеркиванием; в противном случае шрифт отображается без подчеркивания.
См. также fontUnderline() и setFont().
void QTextCharFormat::setFontWeight(int weight)
Устанавливает начертание шрифта текстового формата на weight.
См. также fontWeight(), setFont() и QFont::Weight.
void QTextCharFormat::setFontWordSpacing(qreal spacing)
Устанавливает интерлиньяж для этого формата на заданное значение spacing в пикселях.
См. также fontWordSpacing().
void QTextCharFormat::setSubScriptBaseline(qreal baseline)
Устанавливает линию основания для нижнего индекса в % от высоты шрифта на baseline. Значение по умолчанию — 16,67% (1/6 высоты).
Эта функция была добавлена в Qt 6.0.
См. также subScriptBaseline(), setSuperScriptBaseline(), superScriptBaseline(), setBaselineOffset() и baselineOffset().
void QTextCharFormat::setSuperScriptBaseline(qreal baseline)
Устанавливает линию основания для верхнего индекса в % от высоты шрифта на baseline. Значение по умолчанию — 50% (1/2 высоты).
Эта функция была добавлена в Qt 6.0.
См. также superScriptBaseline(), setSubScriptBaseline(), subScriptBaseline(), setBaselineOffset() и baselineOffset().
void QTextCharFormat::setTextOutline(const QPen &pen)
Устанавливает кисть, используемую для рисования контуров символов, на заданную pen.
См. также textOutline().
void QTextCharFormat::setToolTip(const QString &text)
Устанавливает всплывающую подсказку для фрагмента текста на заданный text.
См. также toolTip().
void QTextCharFormat::setUnderlineColor(const QColor &color)
Устанавливает цвет подчеркивания, используемый для символов с этим форматом, на указанный color.
См. также underlineColor().
void QTextCharFormat::setUnderlineStyle(QTextCharFormat::UnderlineStyle style)
Устанавливает стиль подчеркивания текста на style.
См. также underlineStyle().
void QTextCharFormat::setVerticalAlignment(QTextCharFormat::VerticalAlignment alignment)
Устанавливает вертикальное выравнивание для символов с этим форматом на заданное значение alignment.
См. также verticalAlignment().
[since 6.0] qreal QTextCharFormat::subScriptBaseline() const
Возвращает базовую линию нижнего индекса в процентах от высоты шрифта.
Эта функция была добавлена в Qt 6.0.
См. также setSubScriptBaseline(), setSuperScriptBaseline(), superScriptBaseline(), setBaselineOffset() и baselineOffset().
[since 6.0] qreal QTextCharFormat::superScriptBaseline() const
Возвращает базовую линию верхнего индекса в процентах от высоты шрифта.
Эта функция была добавлена в Qt 6.0.
См. также setSuperScriptBaseline(), setSubScriptBaseline(), subScriptBaseline(), setBaselineOffset() и baselineOffset().
QPen QTextCharFormat::textOutline() const
Возвращает перо, используемое для рисования контуров символов в данном формате.
См. также setTextOutline().
QString QTextCharFormat::toolTip() const
Возвращает всплывающую подсказку, отображаемую для фрагмента текста.
См. также setToolTip().
QColor QTextCharFormat::underlineColor() const
Возвращает цвет, используемый для подчеркивания символов с этим форматом.
См. также setUnderlineColor().
QTextCharFormat::UnderlineStyle QTextCharFormat::underlineStyle() const
Возвращает стиль подчеркивания текста.
См. также setUnderlineStyle().
QTextCharFormat::VerticalAlignment QTextCharFormat::verticalAlignment() const
Возвращает вертикальное выравнивание, используемое для символов с этим форматом.
См. также setVerticalAlignment().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.0/qtextcharformat.html