Класс QTextFragment
Класс QTextFragment хранит фрагмент текста в QTextDocument с единственным QTextCharFormat. Подробнее...
| Заголовок: | #include <QTextFragment> |
| qmake: | QT += gui |
Примечание: Все функции в этом классе являются взаимоисключающими.
Открытые функции
| QTextFragment() | |
| QTextFragment(const QTextFragment &other) | |
| QTextCharFormat | charFormat() const |
| int | charFormatIndex() const |
| bool | contains(int position) const |
| QList<QGlyphRun> | glyphRuns(int pos = -1, int len = -1) const |
| bool | isValid() const |
| int | length() const |
| int | position() const |
| QString | text() const |
| bool | operator!=(const QTextFragment &other) const |
| bool | operator<(const QTextFragment &other) const |
| QTextFragment & | operator=(const QTextFragment &other) |
| bool | operator==(const QTextFragment &other) const |
Подробное описание
Класс QTextFragment хранит фрагмент текста в QTextDocument с единственным QTextCharFormat.
Фрагмент текста описывает часть текста, хранящуюся с одним форматом символов. Текст, в котором изменяется формат символов, может быть представлен последовательностью фрагментов текста с различными форматами.
Если пользователь редактирует текст в фрагменте и вводит другой формат символов, текст фрагмента будет разделен в каждой точке изменения формата, и будут созданы новые фрагменты. Например, изменение стиля некоторого текста посреди предложения приведет к разделению фрагмента на три отдельных фрагмента: первый и третий с тем же форматом, что и раньше, и второй с новым стилем. Первый фрагмент будет содержать текст с начала предложения, второй — текст из середины, а третий — текст из конца предложения.
Текст фрагмента и формат символов можно получить с помощью функций text() и charFormat(). Функция length() возвращает длину текста в фрагменте. position() возвращает позицию начала фрагмента в документе. Чтобы определить, содержит ли фрагмент определенную позицию в документе, используйте функцию contains().
См. также QTextDocument и Структура документа Rich Text.
Документация по функциям-членам
QTextFragment::QTextFragment()
Создает новый пустой фрагмент текста.
QTextFragment::QTextFragment(const QTextFragment &other)
Копирует содержимое (текст и формат) фрагмента текста other в этот фрагмент текста.
QTextCharFormat QTextFragment::charFormat() const
Возвращает формат символов фрагмента текста.
См. также text().
int QTextFragment::charFormatIndex() const
Возвращает индекс в внутреннем списке форматов символов документа для формата символов фрагмента текста.
См. также QTextDocument::allFormats().
bool QTextFragment::contains(int position) const
Возвращает true, если фрагмент текста содержит текст в данной позиции position в документе; в противном случае возвращает false.
QList<QGlyphRun> QTextFragment::glyphRuns(int pos = -1, int len = -1) const
Возвращает глифы, соответствующие len символам этого фрагмента текста, начиная с позиции pos. Позиции глифов относительны к позиции макета QTextBlock.
Если pos меньше нуля, он будет по умолчанию равен началу QTextFragment. Если len меньше нуля, он будет по умолчанию равен длине фрагмента.
См. также QGlyphRun, QTextBlock::layout(), QTextLayout::position() и QPainter::drawGlyphRun().
bool QTextFragment::isValid() const
Возвращает true, если это допустимый фрагмент текста (т. е. имеет допустимую позицию в документе); в противном случае возвращает false.
int QTextFragment::length() const
Возвращает количество символов во фрагменте текста.
См. также text().
int QTextFragment::position() const
Возвращает позицию этого фрагмента текста в документе.
QString QTextFragment::text() const
Возвращает фрагмент текста в виде простого текста.
См. также length() и charFormat().
bool QTextFragment::operator!=(const QTextFragment &other) const
Возвращает true, если этот фрагмент текста отличается (в другой позиции) от фрагмента текста other; в противном случае возвращает false.
bool QTextFragment::operator<(const QTextFragment &other) const
Возвращает true, если этот фрагмент текста появляется раньше в документе, чем фрагмент текста other; в противном случае возвращает false.
QTextFragment &QTextFragment::operator=(const QTextFragment &other)
Присваивает содержимое (текст и формат) фрагмента текста other этому фрагменту текста.
bool QTextFragment::operator==(const QTextFragment &other) const
Возвращает true, если этот фрагмент текста такой же (в той же позиции), как фрагмент текста other; в противном случае возвращает false.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.11/qtextfragment.html