Фреймворк Scribe обеспечивает набор классов для чтения и управления структурированными документами с форматированным текстом. В отличае от предыдущей поддержки форматированного текста в Qt, новые классы сконцентрированы вокруг класса QTextDocument вместо необработанной текстовой информации. Это делает возможным для разработчика создавать или модифицировать структурированный документ с форматированным текстом без необходимости подготавливать содержимое в промежуточном формате разметки.
Информация внутри документа может быть получена через два дополнительных интерфейса: интерфейс, основанный на курсоре, используется для редактирования и иерархический интерфейс только для чтения обеспечивает высокоуровневый обзор структуры документа. Основная выгода интерфейса, основанного на курсоре, в том, что текст может быть отредактирован используя операции, которые воспроизводят взаимодействия пользователя с редактором без потери нижележащей структуры документа. Иерархический интерфейс только для чтения в основном полезен при выполнении таких операций, как поиск и экспорт документа.
Qt предоставляет обширную коллекцию классов для синтаксического разбора, манипулирования визуализацией и редактирования форматированного текста.
QAbstractTextDocumentLayout | Абстрактный базовый класс, используемый для реализации пользовательских компоновок для QTextDocuments |
QFont | Устанавливает шрифт, используемый для отрисовки текста |
QPlainTextDocumentLayout | Реализует компоновку плоского текста для QTextDocument |
QPlainTextEdit | Виджет, который используется для редактирования и отображения плоского текста |
QSyntaxHighlighter | Позволяет вам определять правила подсветки синтаксиса и, кроме того, вы можете использовать этот класс для пересмотра текущего форматирования документа или пользовательских данных |
QTextBlock | Контейнер для фрагментов текста в QTextDocument |
QTextBlockFormat | Информация о форматировании для текстовых блоков в QTextDocument |
QTextBlockGroup | Контейнер для текстовых блоков в QTextDocument |
QTextBlockUserData | Используется для ассоциирования пользовательских данных с текстовыми блоками |
QTextBrowser | Браузер форматированного текста с навигацией по гиперссылкам |
QTextCharFormat | Информация о форматировании символов в QTextDocument |
QTextCursor | Предлагает API для доступа к объектам QTextDocument и изменению их содержимого |
QTextDocument | Содержит форматированный текст, который может быть отображен и изменен с помощью QTextEdit |
QTextDocumentFragment | Представляет фрагмент форматированного текста из QTextDocument |
QTextDocumentWriter | Форматонезависимый интерфейс для записи QTextDocument в файлы или другие устройства |
QTextEdit | Виджет, используемый для представления как простого текста, так и форматированного |
QTextFormat | Информация о форматировании в QTextDocument |
QTextFragment | Содержит часть текста QTextDocument с единым QTextCharFormat |
QTextFrame | Представляет рамку в QTextDocument |
QTextFrameFormat | Информация о форматировании для рамки в QTextDocument |
QTextImageFormat | Информация о форматировании для рисунка в QTextDocument |
QTextInlineObject | Представляет внутренний объект в QTextLayout |
QTextLayout | Используется для компоновки и отображения текста |
QTextLength | Инкапсулирует различные типы длин, используемые в QTextDocument |
QTextLine | Представляет строку текста внутри QTextLayout |
QTextList | Оформляет список элементов в QTextDocument |
QTextListFormat | Информация о форматировании для списков в QTextDocument |
QTextObject | Базовый класс для различных видов объектов, способных группировать различные части QTextDocument вместе |
QTextOption | Описание общих свойств форматированного текста |
QTextTable | Представляет таблицу в QTextDocument |
QTextTableCell | Представляет свойства ячейки в QTextTable |
QTextTableCellFormat | Информация о форматировании для ячеек таблицы в QTextDocument |
QTextTableFormat | Информация о форматировании для таблиц в QTextDocument |
QTextFrame::iterator | Итератор для чтения содержимого QTextFrame |