Поделиться через


Текстовая объектная модель

В этом разделе содержатся сведения о элементах программирования, используемых с текстовой объектной моделью (TOM).

TOM определяет существенный набор интерфейсов обработки текста. Текстовые решения, такие как Microsoft Word и элементы управления расширенными изменениями, поддерживают набор функций TOM. TOM сильно повлиял на WordBasic (язык программирования, используемый для Word) и легко использовать от Microsoft Visual Basic для приложений (VBA). Эта совместимость имеет несколько преимуществ:

  • Код может легко перенести из одного решения в другое.
  • Один язык можно использовать для обмена текстовыми данными между различными текстовыми обработчиками.
  • Это снижает потребность в документации и коде по сравнению с отдельными интерфейсами низкоуровневой объектной модели (COM) и VBA.

Однако это может быть менее эффективным для целей C/C++, чем использование более общих интерфейсов COM более низкого уровня.

TOM — это простой набор интерфейсов для реализации основных текстовых решений, элементов управления word и расширенных правок. Однако для приложений, где основное внимание уделяется тексту, лучше предоставить интерфейсы TOM, передав текст в элемент управления редактирования, поддерживающий TOM. Так как элементы управления расширенными изменениями отправляются с помощью операционных систем Майкрософт, они являются стандартными средствами получения функций TOM.

Общие сведения

Раздел Содержимое
О текстовой объектной модели Объект текстовой объектной модели верхнего уровня (TOM) определяется интерфейсом ITextDocument , который имеет методы для создания и извлечения объектов ниже в иерархии объектов.
Использование текстовой объектной модели В примерах кода в этом документе показаны различные аспекты использования текстовой объектной модели (TOM).

Интерфейсы

Раздел Содержимое
ITextDocument Интерфейс ITextDocument — это интерфейс верхнего уровня TOM, который извлекает активные объекты выделения и диапазона для любой истории в документе независимо от того, активен ли он. Это позволяет приложению:
Когда следует реализовать
Приложения обычно не реализуют интерфейс ITextDocument. Текстовые решения Майкрософт, такие как элементы управления расширенными изменениями, реализуют ITextDocument в рамках реализации TOM.
Когда используется
Приложения могут получить указатель ITextDocument из элемента управления с широкими возможностями редактирования. Для этого отправьте сообщение EM_GETOLEINTERFACE, чтобы получить объект IRichEditOle из элемента управления расширенными изменениями. Затем вызовите метод IUnknown::QueryInterface для получения указателя ITextDocument.
ITextFont К атрибутам расширенного текстового диапазона TOM обращаются через пару двух интерфейсов, ITextFont и ITextPara.
ITextPara К атрибутам расширенного текстового диапазона TOM обращаются через пару двух интерфейсов, ITextFont и ITextPara.
ITextRange Объекты ITextRange — это мощные средства редактирования и привязки данных, позволяющие программе выбирать текст в истории, а затем проверять или изменять этот текст.
ITextSelection Выделение текста — это диапазон текста с выделением выделения.
ITextStoryRanges Целью интерфейса ITextStoryRanges является перечисление историй в ITextDocument.