Spec-Zone.ru › Qt 6.0

Поддерживаемый подмножество HTML

Виджеты текста Qt способны отображать форматированный текст, заданный с помощью подмножества разметки HTML 4. Виджеты, использующие QTextDocument, такие как QLabel и QTextEdit, способны отображать форматированный текст, указанный таким способом.

Использование разметки HTML в виджетах текста

Виджеты автоматически распознают разметку HTML и отображают форматированный текст соответственно. Например, установка свойства text метки со строкой "<b>Hello</b> <i>Qt!</i>" приведет к отображению текста в метке так: Привет Qt!

При использовании разметки HTML для текста Qt следует правилам, определённым в спецификации HTML 4. Это включает в себя значения по умолчанию для форматирования текста, такие как направление потока текста (слева направо), которое можно изменить, применив атрибут dir к блокам текста.

Поддерживаемые теги

В следующей таблице перечислены теги HTML, поддерживаемые движком форматированного текста Qt:

Тег Описание Примечание
a Якорная ссылка или ссылка Поддерживает атрибуты href и name.
address Адрес
b Жирный шрифт
big Более крупный шрифт
blockquote Отступленный абзац
body Тело документа Поддерживает атрибут bgcolor, который может быть именем цвета Qt цвет или спецификацией цвета #RRGGBB.
br Перевод строки
center Абзац по центру
cite Встроенная цитата Также как i.
code Код Также как tt.
dd Данные определения
dfn Определение Также как i.
div Раздел документа Поддерживает стандартные атрибуты блоков.
dl Список определений Поддерживает стандартные атрибуты блоков.
dt Термин определения Поддерживает стандартные атрибуты блоков.
em Выделение Также как i.
font Размер шрифта, семейство и/или цвет Поддерживает следующие атрибуты: size, face, и color (имена цветов Qt цвет или #RRGGBB).
h1 Заголовок 1 уровня Поддерживает стандартные атрибуты блоков.
h2 Заголовок 2 уровня Поддерживает стандартные атрибуты блоков.
h3 Заголовок 3 уровня Поддерживает стандартные атрибуты блоков.
h4 Заголовок 4 уровня Поддерживает стандартные атрибуты блоков.
h5 Заголовок 5 уровня Поддерживает стандартные атрибуты блоков.
h6 Заголовок 6 уровня Поддерживает стандартные атрибуты блоков.
head Заголовок документа
hr Горизонтальная линия Поддерживает атрибут width, который может быть задан как абсолютное или относительное (%) значение.
html Документ HTML
i Курсив
img Изображение Поддерживает атрибуты src, source (для совместимости с Qt 3), width, и height.
kbd Введённый пользователем текст
meta Метаинформация Если кодировка текста задана с помощью тега meta, она используется Qt::codecForHtml(). Аналогично, если кодировка задана для QTextDocument::toHtml(), кодировка сохраняется с помощью тега meta, например: <meta http-equiv="Content-Type" content="text/html; charset=EUC-JP" />
li Элемент списка
nobr Неразрывный текст
ol Нумерованный список Поддерживает стандартные атрибуты списков.
p Абзац По умолчанию выровнен по левому краю. Поддерживает стандартные атрибуты блоков.
pre Предформатированный текст
qt Документ Qt форматированного текста Синоним для html. Предоставлен для совместимости с более ранними версиями Qt.
s Зачеркнутый текст
samp Пример кода Также как tt.
small Мелкий шрифт
span Сгруппированные элементы
strong Сильный Также как b.
sub Нижний индекс
sup Верхний индекс
table Таблица Поддерживает следующие атрибуты: border, bgcolor (имена цветов Qt цвет или #RRGGBB), cellspacing, cellpadding, width (абсолютное или относительное), и height.
tbody Тело таблицы Не выполняет никаких действий.
td Ячейка таблицы Поддерживает стандартные атрибуты ячеек таблицы.
tfoot Подвал таблицы Не выполняет никаких действий.
th Ячейка заголовка таблицы Поддерживает стандартные атрибуты ячеек таблицы.
thead Заголовок таблицы Если тег thead указан, он используется при печати таблиц, занимающих несколько страниц.
title Заголовок документа Значение, указанное с помощью тега title, доступно через QTextDocument::metaInformation().
tr Строка таблицы Поддерживает атрибут bgcolor, который может быть именем цвета Qt цвет или спецификацией цвета #RRGGBB.
tt Шрифт печатной машинки
u Подчёркнутый
ul Маркированный список Поддерживает стандартные атрибуты списков.
var Переменная Также как i.

Атрибуты блоков

Следующие атрибуты поддерживаются тегами div, dl, dt, h1, h2, h3, h4, h5, h6, p.

  • align (left, right, center, justify)
  • dir (ltr, rtl)

Атрибуты списков

Следующий атрибут поддерживается тегами ol и ul.

  • type (1, a, A, square, disc, circle)

Атрибуты ячеек таблицы

Следующие атрибуты поддерживаются тегами td и th.

  • width (абсолютное, относительное или без значения)
  • bgcolor (имена цветов Qt цветов или #RRGGBB)
  • colspan
  • rowspan
  • align (left, right, center, justify)
  • valign (top, middle, bottom)

Свойства CSS

В следующей таблице перечислены свойства CSS, поддерживаемые движком форматированного текста Qt:

Свойство Значения Описание
background-color <цвет> Цвет фона для элементов
background-image <uri> Изображение фона для элементов
color <цвет> Цвет текста
font-family <название семейства шрифтов> Имя семейства шрифтов
font-size [ small | medium | large | x-large | xx-large ] | <размер>pt | <размер>px Размер шрифта относительно размера шрифта документа или заданный в пунктах или пикселях
font-style [ normal | italic | oblique ]
font-weight [ normal | bold | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 ] Устанавливает начертание шрифта, где normal и bold сопоставляются с соответствующими весами QFont. Числовые значения в 8 раз превышают эквивалентные значения веса шрифта QFont.
text-decoration none | [ underline || overline || line-through ] Дополнительные эффекты текста
font [ [ <'font-style'> || <'font-weight'> ]? <'font-size'> <'font-family'> ] Сокращенное свойство шрифта
text-indent <длина>px Отступ первой строки в пикселях
white-space normal | pre | nowrap | pre-wrap Определяет, как обрабатывается пробел в HTML.
margin-top <длина>px Верхний отступ абзаца в пикселях
margin-bottom <длина>px Нижний отступ абзаца в пикселях
margin-left <длина>px Левый отступ абзаца в пикселях
margin-right <длина>px Правый отступ абзаца в пикселях
padding-top <длина>px Отступ ячейки таблицы по вертикали в пикселях
padding-bottom <длина>px Нижний отступ ячейки таблицы в пикселях
padding-left <длина>px Левый отступ ячейки таблицы в пикселях
padding-right <длина>px Правый отступ ячейки таблицы в пикселях
padding <длина>px Сокращенное свойство для одновременной настройки всех свойств отступов.
vertical-align baseline | sub | super | middle | top | bottom Вертикальное выравнивание текста. Для вертикального выравнивания в ячейках таблиц текста применяются только middle, top и bottom.
border-collapse collapse | separate Режим Collapse Border для текстовых таблиц. Если установлено collapse, отступ ячеек не будет применяться.
border-color <цвет> Цвет рамки для текстовых таблиц и ячеек таблиц.
border-top-color <цвет> Цвет верхней границы ячейки таблицы.
border-bottom-color <цвет> Цвет нижней границы ячейки таблицы.
border-left-color <цвет> Цвет левой границы ячейки таблицы.
border-right-color <цвет> Цвет правой границы ячейки таблицы.
border-style none | dotted | dashed | dot-dash | dot-dot-dash | solid | double | groove | ridge | inset | outset Стиль границы для текстовых таблиц и ячеек таблиц.
border-top-style <border-style> Стиль верхней границы ячейки таблицы.
border-bottom-style <border-style> Стиль нижней границы ячейки таблицы.
border-left-style <border-style> Стиль левой границы ячейки таблицы.
border-right-style <border-style> Стиль правой границы ячейки таблицы.
border-width <ширина>px Ширина границы таблицы или ячейки
border-top-width <длина>px Ширина верхней границы ячейки таблицы.
border-bottom-width <длина>px Ширина нижней границы ячейки таблицы.
border-left-width <длина>px Ширина левой границы ячейки таблицы.
border-right-width <длина>px Ширина правой границы ячейки таблицы.
border-top <ширина>px <border-style> <border-color> Сокращенное свойство для настройки ширины, стиля и цвета верхней границы.
border-bottom <ширина>px <border-style> <border-color> Сокращенное свойство для настройки ширины, стиля и цвета нижней границы.
border-left <ширина>px <border-style> <border-color> Сокращенное свойство для настройки ширины, стиля и цвета левой границы.
border-right <ширина>px <border-style> <border-color> Сокращенное свойство для настройки ширины, стиля и цвета правой границы.
border-top <ширина>px <border-style> <border-color> Сокращенное свойство для настройки ширины, стиля и цвета верхней границы.
border-bottom <ширина>px <border-style> <border-color> Сокращенное свойство для настройки ширины, стиля и цвета нижней границы.
border <ширина>px <border-style> <border-color> Сокращенное свойство для настройки ширины, стиля и цвета всех четырех границ.
background [ <'background-color'> || <'background-image'> ] Сокращенное свойство фона
page-break-before [ auto | always ] Разрешает принудительно вставлять разрыв страницы перед абзацем/таблицей
page-break-after [ auto | always ] Разрешает принудительно вставлять разрыв страницы после абзаца/таблицы
float [ left | right | none ] Указывает, где изображение или текст будут размещены в другом элементе. Обратите внимание, что свойство float поддерживается только для таблиц и изображений.
text-transform [ uppercase | lowercase ] Выбирает преобразование, которое будет выполнено над текстом перед его отображением.
font-kerning [ normal | none ] Включает или отключает кернинг между символами текста.
font-variant small-caps Выполняет преобразование smallcaps над текстом перед его отображением.
word-spacing <ширина>px Устанавливает альтернативный отступ между словами.
line-height <число>[% | px | pt | cm] Устанавливает высоту строки. Она может быть одной из следующих:
  • фиксированная высота строки в пикселях, пунктах или сантиметрах.
  • процент от текущего размера шрифта.

Свойства CSS, специфичные для Qt

Помимо стандартных свойств CSS, перечисленных ранее, для форматирования блока текста можно использовать следующие свойства, специфичные для Qt:

Свойство Значения Описание
-qt-block-indent <number> Отступает блок текста на указанное количество пробелов.
-qt-list-indent <number> Отступает пункты списка на указанное количество пробелов.
-qt-list-number-prefix <string> Добавляет указанную строку в качестве префикса к номеру пункта в маркированном списке HTML.
-qt-list-number-suffix <строка> Добавляет указанную строку в качестве суффикса к номеру пункта в маркированном списке HTML.
-qt-paragraph-type empty Скрывает блок текста.
-qt-table-type root | frame root отображает блоки текста в строку без рамок и отступов, в то время как frame отображает их на новой строке с рамкой вокруг.
-qt-user-state <number> Добавляет его в качестве пользовательских данных для блока текста.

Поддерживаемые селекторы CSS

Поддерживаются все классы селекторов CSS 2.1, за исключением псевдоклассов, таких как :first-child, :visited и :hover.

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

Spec-Zone.ru

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