Текстовые виджеты Qt способны отображать форматированный текст, указываемый с использованием подмножества разметки HTML 4. Виджеты, которые используют QTextDocument, например, QLabel и QTextEdit, способны выводить на экран форматированный текст, заданный таким образом.
Использование разметки HTML в текстовых виджетов
Виджеты автоматически обнаруживает разметку HTML и выводит на экране соответствующий форматированный тектс. Например, настройка свойства метки text со строкой "<b>Hello</b> <i>Qt!</i>" будет иметь результат отображение текста в метке, вот так: HelloQt!
Когда для текста используется разметка HTML, Qt следует правилам, описанным спецификацией HTML 4. Это включает свойства по умолчанию для текстового слоя, например, направление текста (слева на право), который может изменен применением атрибута dir к блокам текста.
Поддерживаемые теги
Следующая таблица перечисляет теги HTML поддерживаемые движком rich text Qt:
Тег
Описание
Комментарий
a
Якорь или ссылка
Поддерживает атрибуты href и name. Обратите внимание на то, что селектор :visited - один из тех, что не поддерживаются движком форматированного текста. Список остального смотрите ниже.
address
Адрес
b
Жирный
big
Больший шрифт
blockquote
Параграф с отступом
body
Тело документа
Поддерживает атрибут bgcolor который может быть именем цвета Qt или определением цвета #RRGGBB.
Поддерживает атрибут width который может быть указан как абсолютное или относительное (%) значение.
html
Документ HTML
i
Наклонный
img
Изображение
Поддреживает атрибуты src, source (для поддержки Qt 3), width и height.
kbd
Текст вводимый пользователем
meta
Мета информация
Если указана кодировка текста с использованием тега meta, он выбирается Qt::codecForHtml(). Аналогично, если кодировка указана для QTextDocument::toHtml(), кодировка хранится с использованием тега meta, например:
Поддерживает следующие атрибуты: border, bgcolor (имена цветов Qt или #RRGGBB), cellspacing, cellpadding, width (абсолютная или относительная) и height.
Указывает вес фона используемого для текста где normal и bold преобразовываются в соответствующие веса QFont. Числовые значения 8 размеров эквивалентны значениям весов QFont.
Делает возможным заставить разорвать страницу перед параграфом/таблицу
page-break-after
[ auto | always ]
Делает возможным заставить разорвать страницу после параграфа/таблицы
float
[ left | right | none ]
Указывает где изображение или текст будет установлено в другом элементе. Обратите внимание на то, что свойство float поддерживается только для таблиц и изображений.
text-transform
[ uppercase | lowercase ]
Выбирает трансформацию которая будет исполнена на тексте до его отображения.
font-variant
small-caps
Выполняет преобразование текста к маленьким буквам перед выводом на экран.
word-spacing
<width>px
Указывает дополнительный интервал между каждым словом.
Поддерживаемые селекторы CSS
Поддерживаются все классы селекторов CSS 2.1 кроме псевдо-классов, таких как :first-child, :visited и :hover.