Spec-Zone.ru › Qt 6.0

Класс QTextBlockFormat

Класс QTextBlockFormat предоставляет информацию о форматировании блоков текста в QTextDocument. Подробнее...

Заголовок: #include <QTextBlockFormat>
CMake: find_package(Qt6 COMPONENTS Gui REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmake: QT += gui
Наследует: QTextFormat
  • Список всех членов, включая унаследованные

Примечание: Все функции в этом классе являются перевходными.

Типы публичного доступа

Перечисление LineHeightTypes { SingleHeight, ProportionalHeight, FixedHeight, MinimumHeight, LineDistanceHeight }
Перечисление MarkerType { NoMarker, Unchecked, Checked }

Функции публичного доступа

QTextBlockFormat()
Qt::Alignment alignment() const
qreal bottomMargin() const
int headingLevel() const
int indent() const
bool isValid() const
qreal leftMargin() const
qreal lineHeight(qreal scriptLineHeight, qreal scaling = 1.0) const
qreal lineHeight() const
int lineHeightType() const
QTextBlockFormat::MarkerType marker() const
bool nonBreakableLines() const
QTextFormat::PageBreakFlags pageBreakPolicy() const
qreal rightMargin() const
void setAlignment(Qt::Alignment alignment)
void setBottomMargin(qreal margin)
void setHeadingLevel(int level)
void setIndent(int indentation)
void setLeftMargin(qreal margin)
void setLineHeight(qreal height, int heightType)
void setMarker(QTextBlockFormat::MarkerType marker)
void setNonBreakableLines(bool b)
void setPageBreakPolicy(QTextFormat::PageBreakFlags policy)
void setRightMargin(qreal margin)
void setTabPositions(const QList<QTextOption::Tab> &tabs)
void setTextIndent(qreal indent)
void setTopMargin(qreal margin)
QList<QTextOption::Tab> tabPositions() const
qreal textIndent() const
qreal topMargin() const

Подробное описание

Документ состоит из списка блоков, представленных объектами QTextBlock. Каждый блок может содержать элемент определённого типа, такой как абзац текста, таблица, список или изображение. Каждый блок имеет связанное с ним QTextBlockFormat, которое определяет его характеристики.

Для поддержки языков с письмом слева направо и справа налево можно установить направление блока с помощью setDirection(). Выравнивание абзаца устанавливается с помощью setAlignment(). Поля управляются setTopMargin(), setBottomMargin(), setLeftMargin(), setRightMargin(). Общая отступ устанавливается с помощью setIndent(), отступ первой строки - с помощью setTextIndent().

Интерлиньяж устанавливается с помощью setLineHeight() и извлекается с помощью lineHeight() и lineHeightType(). Доступные типы интерлиньяжа находятся в перечислении LineHeightTypes.

Разбиение строк можно включить и выключить с помощью setNonBreakableLines().

Кисть, используемая для покраски фона абзаца, устанавливается с помощью setBackground(), а другие аспекты внешнего вида текста можно настроить, используя функцию setProperty() со значениями OutlinePen, ForegroundBrush, и BackgroundBrush из перечисления QTextFormat::Property.

Если текстовый блок является частью списка, у него также может быть формат списка, который доступен с помощью функции listFormat().

См. также QTextBlock и QTextCharFormat.

Документация по типам членов

перечисление QTextBlockFormat::LineHeightTypes

Это перечисление описывает различные типы интерлиньяжа, которые могут поддерживаться абзацами.

Константа Значение Описание
QTextBlockFormat::SingleHeight 0 Это стандартный интерлиньяж: одинарный.
QTextBlockFormat::ProportionalHeight 1 Это устанавливает интерлиньяж пропорционально строке (в процентах). Например, установленное значение 200 соответствует двойному интерлиньяжу.
QTextBlockFormat::FixedHeight 2 Это устанавливает интерлиньяж на фиксированное значение (в пикселях).
QTextBlockFormat::MinimumHeight 3 Это устанавливает минимальный интерлиньяж (в пикселях).
QTextBlockFormat::LineDistanceHeight 4 Это добавляет указанную высоту между строками (в пикселях).

См. также lineHeight(), lineHeightType(), и setLineHeight().

[since 5.14] перечисление QTextBlockFormat::MarkerType

Этот перечисление описывает типы маркеров, которые может иметь элемент списка. Если элемент списка (абзац, для которого QTextBlock::textList() возвращает список) имеет маркер, он отображается вместо обычной пули. Таким образом, элементы списка с возможностью выбора могут быть смешаны с обычными элементами списка в том же списке, перезаписывая тип пули, указанный в QTextListFormat::style() для всего списка.

Константа Значение Описание
QTextBlockFormat::MarkerType::NoMarker 0 Это значение по умолчанию: отображается пуля элемента списка.
QTextBlockFormat::MarkerType::Unchecked 1 Вместо пули элемента списка отображается неотмеченная галочка.
QTextBlockFormat::MarkerType::Checked 2 Вместо пули элемента списка отображается отмеченная галочка.

В будущем это может быть расширено для указания других типов декораций абзаца.

Это перечисление было введено или изменено в Qt 5.14.

См. также QTextListFormat::style().

Документация по членам-функциям

QTextBlockFormat::QTextBlockFormat()

Создает новый QTextBlockFormat.

Qt::Alignment QTextBlockFormat::alignment() const

Возвращает выравнивание абзаца.

См. также setAlignment().

qreal QTextBlockFormat::bottomMargin() const

Возвращает нижнюю границу абзаца.

См. также setBottomMargin() и topMargin().

[since 5.12] int QTextBlockFormat::headingLevel() const

Возвращает уровень заголовка абзаца, если это заголовок, или 0, если нет.

Эта функция была введена в Qt 5.12.

См. также setHeadingLevel().

int QTextBlockFormat::indent() const

Возвращает отступ абзаца.

См. также setIndent().

bool QTextBlockFormat::isValid() const

Возвращает true, если этот формат абзаца действителен; в противном случае возвращает false.

qreal QTextBlockFormat::leftMargin() const

Возвращает левую границу абзаца.

См. также setLeftMargin(), rightMargin() и indent().

qreal QTextBlockFormat::lineHeight(qreal scriptLineHeight, qreal scaling = 1.0) const

Возвращает высоту строк в абзаце на основе высоты строки скрипта, заданной scriptLineHeight, и заданного коэффициента масштабирования scaling.

Возвращаемое значение также зависит от заданного LineHeightType абзаца и установленного для него параметра LineHeight.

Масштабирование необходимо для высот, включающих фиксированное число пикселей, для их соответствующего масштабирования при печати.

См. также LineHeightTypes, setLineHeight() и lineHeightType().

qreal QTextBlockFormat::lineHeight() const

Возвращает свойство LineHeight для абзаца.

См. также LineHeightTypes, setLineHeight() и lineHeightType().

int QTextBlockFormat::lineHeightType() const

Возвращает свойство LineHeightType абзаца.

См. также LineHeightTypes, setLineHeight() и lineHeight().

[since 5.14] QTextBlockFormat::MarkerType QTextBlockFormat::marker() const

Возвращает маркер абзаца, если он установлен, или NoMarker если нет.

Эта функция была введена в Qt 5.14.

См. также setMarker().

bool QTextBlockFormat::nonBreakableLines() const

Возвращает true, если строки в абзаце неразрывны; в противном случае возвращает false.

См. также setNonBreakableLines().

QTextFormat::PageBreakFlags QTextBlockFormat::pageBreakPolicy() const

Возвращает текущую политику разрыва страницы для абзаца. По умолчанию используется QTextFormat::PageBreak_Auto.

См. также setPageBreakPolicy().

qreal QTextBlockFormat::rightMargin() const

Возвращает правую границу абзаца.

См. также setRightMargin() и leftMargin().

void QTextBlockFormat::setAlignment(Qt::Alignment alignment)

Устанавливает выравнивание абзаца alignment.

См. также alignment().

void QTextBlockFormat::setBottomMargin(qreal margin)

Устанавливает нижнюю границу абзаца margin.

См. также bottomMargin(), setTopMargin(), setLeftMargin() и setRightMargin().

[since 5.12] void QTextBlockFormat::setHeadingLevel(int level)

Устанавливает уровень заголовка абзаца level, где 1 — это тип заголовка самого высокого уровня (обычно с самым большим размером шрифта заголовка), а увеличивающиеся значения — это все более глубокие уровни документа (и обычно с меньшими размерами шрифтов). Например, при чтении тега H1 в HTML, уровень заголовка устанавливается в 1. Установка уровня заголовка не автоматически изменяет размер шрифта; однако QTextDocumentFragment::fromHtml() одновременно устанавливает уровень заголовка и размер шрифта.

Если абзац не является заголовком, уровень следует установить в 0 (по умолчанию).

Эта функция была введена в Qt 5.12.

См. также headingLevel().

void QTextBlockFormat::setIndent(int indentation)

Устанавливает отступ абзаца indentation. Границы устанавливаются независимо от отступа с помощью setLeftMargin() и setTextIndent(). Отступ indentation — целое число, которое умножается на стандартный отступ во всем документе, что приводит к фактическому отступу абзаца.

См. также indent() и QTextDocument::indentWidth().

void QTextBlockFormat::setLeftMargin(qreal margin)

Устанавливает левую границу абзаца margin. Отступ можно применять отдельно с помощью setIndent().

См. также leftMargin(), setRightMargin(), setTopMargin() и setBottomMargin().

void QTextBlockFormat::setLineHeight(qreal height, int heightType)

Устанавливает высоту строки для абзаца в значение height, которое зависит от heightType способом, описанным в перечислении LineHeightTypes.

См. также LineHeightTypes, lineHeight() и lineHeightType().

[since 5.14] void QTextBlockFormat::setMarker(QTextBlockFormat::MarkerType marker)

Устанавливает тип декорации, который должен быть отображен вместе с абзацем, в marker. Например, элемент списка может быть украшен галочкой, как отмеченной, так и неотмеченной, как замена его пули. По умолчанию NoMarker.

Эта функция была введена в Qt 5.14.

См. также marker().

void QTextBlockFormat::setNonBreakableLines(bool b)

Если b истинно, строки в абзаце обрабатываются как неразрывные; в противном случае они разрывные.

См. также nonBreakableLines().

void QTextBlockFormat::setPageBreakPolicy(QTextFormat::PageBreakFlags policy)

Устанавливает политику разрыва страницы для абзаца на policy.

См. также pageBreakPolicy().

void QTextBlockFormat::setRightMargin(qreal margin)

Устанавливает правый отступ абзаца.

См. также rightMargin(), setLeftMargin(), setTopMargin() и setBottomMargin().

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

Устанавливает позиции табуляции для текстового блока на те, которые указаны в tabs.

См. также tabPositions().

void QTextBlockFormat::setTextIndent(qreal indent)

Устанавливает отступ для первой строки в блоке. Это позволяет первой строке абзаца иметь другой отступ, чем другим строкам, улучшая читаемость текста.

См. также textIndent(), setLeftMargin(), setRightMargin(), setTopMargin() и setBottomMargin().

void QTextBlockFormat::setTopMargin(qreal margin)

Устанавливает верхний отступ абзаца.

См. также topMargin(), setBottomMargin(), setLeftMargin() и setRightMargin().

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

Возвращает список позиций табуляции, определённых для текстового блока.

См. также setTabPositions().

qreal QTextBlockFormat::textIndent() const

Возвращает отступ текста абзаца.

См. также setTextIndent().

qreal QTextBlockFormat::topMargin() const

Возвращает верхний отступ абзаца.

См. также setTopMargin() и bottomMargin().

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.0/qtextblockformat.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API