---
title: "Текст"
type: interface
api: [api7]
domain: [2d]
tags: [interface, api7, 2d, bb2377713]
sources:
  - bb2377713.html
  - itabulator.html
  - itext.html
  - itextfont.html
  - itextitem.html
  - itextline.html
  - itextstyle.html
  - itexttable.html
  - itabulators.html
  - ihypertextreferenceparam.html
---

*API интерфейсов. Версия 7 > Документ 2D *




## Интерфейс ITabulator

Интерфейс позиции табулятора.
Иерархия:
IKompasAPIObject
ITabulator
Описание:
Позволяет получить доступ к параметрам позиции табулятора и редактировать их.
Примечание:
Данный интерфейс может быть получен от интерфейса коллекции позиций табулятора ITabulators.


## Align - Выравнивание

Тип данных: из перечисления ksAlignEnum
Синтаксис Automation:
```
Align = Object.Align;    Получить свойство(* )
Object.Align = Align;    Установить свойство (* )
Align = Object.GetAlign();    Получить свойство (**)
Object.SetAlign(Align);    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_Align(&Align);    Получить свойство
Object.put_Align(Align);    Установить свойство
```


## Filling - Заполнение

Тип данных: из перечисления ksTabulatorFillingEnum
Синтаксис Automation:
```
Filling = Object.Filling;    Получить свойство(* )
Object.Filling = Filling;    Установить свойство (* )
Filling = Object.GetFilling();    Получить свойство (**)
Object.SetFilling(Filling);    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_Filling(&Filling);    Получить свойство
Object.put_Filling(Filling);    Установить свойство
```


## Position - Позиция табуляции в мм * 100

Тип данных: long
Синтаксис Automation:
```
Position = Object.Position;    Получить свойство(* )
Object.Position = Position;    Установить свойство (* )
Position = Object.GetPosition();    Получить свойство (**)
Object.SetPosition(Position);    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_Position(&Position);    Получить свойство
Object.put_Position(Position);    Установить свойство
```


## Интерфейс IText

Интерфейс текста для работы с аннотационными объектами.
Иерархия:
IKompasAPIObject
IText
Описание:
Интерфейс позволяет получить и отредактировать текст.
Текст имеет стиль. Стиль может быть системным из перечисления ksTextStyleEnum или пользовательским.
Состоит из строк, которые представлены интерфейсом ITextLine.
Строки текста состоят из компонент, которые представлены интерфейсом ITextItem.
Компонент текста - это часть строки, отличающаяся типом ksTextItemEnum и параметрами шрифта.
Примечание:
Данный интерфейс можно получить как дополнительный через интерфейс IDrawingText посредством вызова метода IUnknown::QueryInterface (const GUID far& iid, void** pif) или как самостоятельный объект у аннотационных объектов, имеющих тексты (линия-выноска, размер и т.п.).


## Add - Добавить строку в конец текста

Синтаксис Automation:
```
LPDISPATCH Add();
```
Синтаксис COM:
```
HRESULT Add( [out, retval] ITextLine ** Value );
Возвращаемое значение:
- указатель на интерфейс ITextLine строка текста.
```
Примечание:
Позволяет добавить строку в конец текста.


## AddBefore - Добавить строку перед строкой с заданным индексом

Синтаксис Automation:
```
LPDISPATCH AddBefore( long Index );
```
Синтаксис COM:
```
HRESULT AddBefore([in] long Index, [out, retval] ITextLine ** Value );
Входные параметры:
Index (long)    - индекс строки, перед которой нужно вставить новую строку.
Возвращаемое значение:
- указатель на интерфейс ITextLine строка текста.
```
Примечание:
Позволяет добавить строку перед строкой с заданным индексом.


## AddTable - Добавить таблицу в текст (для текстового документа)

Синтаксис Automation:
```
LPDISPATCH AddTable( long IndexAt,
long RowsCount,
long ColumnsCount,
double RowHeigh,
double ColumnsWidth,
ksTableTileLayoutEnum TitlePos );
```
Синтаксис COM:
```
HRESULT AddTable( long IndexAt,
long RowsCount,
long ColumnsCount,
double RowHeigh,
double ColumnsWidth,
ksTableTileLayoutEnum TitlePos,
ITextTable ** Result );
Возвращаемое значение:
Указатель на интерфейс таблицы ITextTable
Входные параметры:
RowsCount    - количество строк,
ColumnsCount    - количество столбцов,
RowHeigh    - высота строк,
ColumnsWidth    - ширина столбцов,
TitlePos    - расположение заголовка таблицы (из перечисления ksTableTileLayoutEnum).
Выходные параметры:
IndexAt    - индекс строки текста, с которой вставляется таблица.
Метод позволяет вставить таблицу в текстовый документ
```


## AddTextLine - Добавить строку c внешними данными

Синтаксис Automation:
```
LPDISPATCH AddTextLine( ksTextLineType type,
BSTR filename );
```
Синтаксис COM:
```
HRESULT AddTextLine( ksTextLineType type,
BSTR filename,
ITextLine ** Value );
Входные параметры:
type    - тип строки ksTextLineType,
filename    - имя файла - источник вставки.
Возвращаемое значение:
Указатель на интерфейс ITextLine строки текста.
```
Примечание:
1. В 2D объекте таблица IDrawingTable доступна возможность вставки вертикального текста, растрового объекта и фрагмента.
2. В текстовом документе есть возможность вставки таблицы в текст.
3. С помощью функции AddTextLine и AddTextLineBefore можно выполнить вставку следующих объектов через API системы КОМПАС:
- для типов:
•ksTLText - простой текст,
•ksTLVerticalText - вертикальный текст.
Параметр filename используется для передачи пути к файлу с расширениями txt, rtf и kdw. Из файла будет вставлена первая строчка текста. Если расширение не задано, то параметр filename воспринимается как обычная строка и она добавляется в текст.
•ksTLFragment - вставка фрагмента.
Параметр filename используется для передачи пути к файлу фрагмента системы КОМПАС с расширением frw.
•ksTLRaster - вставка рисунка.
Параметр filename используется для передачи пути к растровым файлам.
•ksTLTable - вставка таблицы.
Параметр filename используется для передачи пути к файлу таблицы с расширением kdw. Не реализовано, вставка таблицы будет доступна в текстовом документе.
4. Получить и изменить параметры вставленного объекта можно с помощью свойства ITextLine::TextLineData.


## AddTextLineBefore - Добавить строку c внешними данными перед строкой с заданным индексом

Синтаксис Automation:
```
LPDISPATCH AddTextLineBefore( ksTextLineType type,
long Index,
BSTR filename );
```
Синтаксис COM:
```
HRESULT AddTextLineBefore( ksTextLineType type,
long Index,
BSTR filename,
ITextLine ** Value );
Входные параметры:
type    - тип строки ksTextLineType,
Index    - индекс строки,
filename    - имя файла - источник вставки.
Возвращаемое значение:
Указатель на интерфейс ITextLine строки текста.
```
Примечание:
1. В 2D объекте таблица IDrawingTable доступна возможность вставки вертикального текста, растрового объекта и фрагмента.
2. В текстовом документе есть возможность вставки таблицы в текст.
3. С помощью функции AddTextLine и AddTextLineBefore можно выполнить вставку следующих объектов через API системы КОМПАС:
- для типов:
•ksTLText - простой текст,
•ksTLVerticalText - вертикальный текст.
Параметр filename используется для передачи пути к файлу с расширениями txt, rtf и kdw. Из файла будет вставлена первая строчка текста. Если расширение не задано, то параметр filename воспринимается как обычная строка и она добавляется в текст.
•ksTLFragment - вставка фрагмента.
Параметр filename используется для передачи пути к файлу фрагмента системы КОМПАС с расширением frw.
•ksTLRaster - вставка рисунка.
Параметр filename используется для передачи пути к растровым файлам.
•ksTLTable - вставка таблицы.
Параметр filename используется для передачи пути к файлу таблицы с расширением kdw. Не реализовано, вставка таблицы будет доступна в текстовом документе.
4. Получить и изменить параметры вставленного объекта можно с помощью свойства ITextLine::TextLineData.


## Assign - Скопировать текст

Синтаксис Automation:
```
BOOL Assign( LPDISPATCH Other );
```
Синтаксис COM:
```
HRESULT Assign( IText * Other, BOOL * Result );
Входные параметры:
Other    - копируемый текст - указатель на интерфейс IText.
Возвращаемое значение:
TRUE    - в случае удачного завершения.
```


## Clear - Очистить текст

Синтаксис Automation:
```
BOOL Clear();
```
Синтаксис COM:
```
HRESULT Clear( [out, retval] VARIANT_BOOL* Value );
Возвращаемое значение:
TRUE    - текст очищен,
FALSE    - ошибка.
```
Примечание:
Позволяет очистить текст. После этого можно вводить новый.


## ConvertToString - Конвертировать текст в строку

Синтаксис Automation:
```
BSTR ConvertToString( ksTextConvertEnum ConvertType, BSTR LineSeparator );
```
Синтаксис COM:
```
HRESULT ConvertToString( ksTextConvertEnum ConvertType, BSTR LineSeparator, BSTR * Result );
Возвращаемое значение:
- Конвертированная строка.
Входные параметры:
ConvertType    - способ конвертации из перечисления ksTextConvertEnum,
LineSeparator    - символы разделители строк.
Версия Компас v23
```


## Count - Количество строк текста

Тип данных: long
Синтаксис Automation:
```
Count = iObject.Count;    Получить свойство(* )
Count = iObject.GetCount();    Получить свойство (**)
```
Синтаксис COM:
```
iObject->get_Count(&Count);    Получить свойство
```
Примечание:
Свойство позволяет получить количество строк текста.


## Draw - Отрисовать в окне

Синтаксис Automation:
```
BOOL Draw( OLE_HANDLE HWnd );
```
Синтаксис COM:
```
HRESULT Draw( OLE_HANDLE HWnd, BOOL * Result );
Возвращаемое значение:
TRUE    - в случае успеха,
FALSE    - в случае неудачи.
Входные параметры:
HWnd    - дескриптор окна.
Версия Компас v23
```


## Edit - Редактировать в окне

Синтаксис Automation:
```
BOOL Edit( OLE_HANDLE HWnd );
```
Синтаксис COM:
```
HRESULT Edit( OLE_HANDLE HWnd, BOOL * Result );
Возвращаемое значение:
TRUE    - в случае изменения текста,
FALSE    - в случае отмены.
```


## Find - Найти текст

Синтаксис Automation:
```
int64 Find( int64 StartPosition, BSTR SrcText, BOOL Case, BOOL WordOnly );
Синтаксис COM :
RESULT Find( int64 StartPosition, BSTR SrcText, BOOL Case, BOOL WordOnly, int64 * Result );
Возвращаемое значение:
- позиция найденного текста.
Входные параметры:
StartPosition    - начальная позиция поиска текста,
SrcText    - строка поиска,
Case    - различать регистр,
WordOnly    - только слово целиком.
Версия: Компас v20
```


## InsertPredefinedText - Получение предопределенного текста из файла *.kle

Синтаксис Automation:
```
BOOL InsertPredefinedText( OLE_HANDLE HWnd, BSTR Caption, BSTR PredefinedTextLibrary );
Синтаксис COM :
HRESULT InsertPredefinedText( OLE_HANDLE HWnd, BSTR Caption, BSTR PredefinedTextLibrary, BOOL * Result );
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае отмены.
Входные параметры:
HWnd    - дескриптор окна владельца,
Caption    - заголовок,
PredefinedTextLibrary    - путь к библиотеке предопределенных текстов *.kle.
КOMPAS v24
```


## Replace - Заменить подстроку текста

Синтаксис Automation:
```
BOOL Replace( BSTR SrcText, BSTR NewText,
BOOL Case,
BOOL WordOnly,
BOOL ReplaceAll );
```
Синтаксис COM:
```
HRESULT Replace( BSTR SrcText, BSTR NewText,
BOOL Case,
BOOL WordOnly,
BOOL ReplaceAll, BOOL * Result );
Входные параметры:
SrcText    - искомая подстрока,
NewText    - новая строка,
Case    - TRUE - различать регистр, - FALSE - поиск без учета регистра,
WordOnly    - TRUE - только слово целиком,
ReplaceAll    - TRUE - заменить все вхождения, - FALSE - заменить только первое вхождение.
Возвращаемое значение:
TRUE    - в случае удачного завершения.
```


## ReplaceStr - Заменить текст, начиная с заданной позиции

Синтаксис Automation:
```
BOOL ReplaceStr( int64 StartPosition, BSTR SrcText, BSTR NewText, BOOL Case, BOOL WordOnly, BOOL ReplaceAll );
```
Синтаксис COM:
```
HRESULT ReplaceStr( int64 StartPosition, BSTR SrcText, BSTR NewText, BOOL Case, BOOL WordOnly, BOOL ReplaceAll, BOOL * Result );
Входные параметры:
StartPosition    - начальная позиция поиска текста,
SrcText    - строка поиска,
NewText    - новое значение,
Case    - различать регистр,
WordOnly    - только слово целиком.
ReplaceAll    - заменить все.
Версия: Компас v20
```


## Str - Текст в виде строки

Тип данных: BSTR(строка)
Синтаксис Automation:
```
Str = iObject.Str;    Получить свойство(* )
iObject.Str = Str;    Установить свойство (* )
Str = iObject.GetStr();    Получить свойство (**)
iObject.SetStr(Str);    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_Str(&Str);    Получить свойство
iObject->put_Str(Str);    Установить свойство
```
Примечание:
Свойство позволяет установить и получить текст в виде массива символов.
Дроби представляются в формате $d числитель $ знаменатель $.
Выражение типа суммы в формате $ верхний индекс $ нижний индекс $.
Спецзнак в формате &N или @N.
При замене текста все строки очищаются и создаются новые с учетом символа перевода строки.


## Style - Cтиль текста

Тип данных: long
Синтаксис Automation:
```
Style = iObject.Style;    Получить свойство(* )
iObject.Style = Style;    Установить свойство (* )
Style = iObject.GetStyle();    Получить свойство (**)
iObject.SetStyle(Style);    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_Style(&Style);    Получить свойство
iObject->put_Style(Style);    Установить свойство
```
Примечание:
1. Свойство позволяет получить и установить стиль текста.
2. Стиль может быть системным из перечисления ksTextStyleEnum или пользовательским.


## TextLine - Строка текста с заданным индексом

Тип данных: указатель на интерфейс строки текста ITextLine
Синтаксис Automation:
```
TextLine = iObject.TextLine(Index);    Получить свойство(* )
TextLine = iObject.GetTextLine(Index);    Получить свойство (**)
```
Синтаксис COM:
```
iObject->get_TextLine(Index, &TextLine);    Получить свойство
Входные параметры:
Index ( long )    - индекс строки.
```
Примечание:
Свойство позволяет получить интерфейс строки текста ITextLine.


## TextLines - Массив SAFEARRAY строк текста

Тип данных: VARIANT ( VT_ARRAY|VT_DISPATCH )
Синтаксис Automation:
```
TextLines = iObject.TextLines;    Получить свойство(* )
TextLines = iObject.GetTextLines();    Получить свойство (**)
```
Синтаксис COM:
```
iObject->get_TextLines(&TextLines);    Получить свойство
```
Примечание:
Свойство позволяет получить массив SAFEARRAY строк текста. Это массив интерфейсов ITextLine. Если возвращается один объект, то тип VARIANT-а будет VT_DISPATCH, если возвращается несколько объектов, то тип VARIANT-а будет VT_ARRAY | VT_DISPATCH.


## Интерфейс ITextFont

Интерфейс параметров шрифта.
Иерархия:
IKompasAPIObject
ITextFont
Описание:
Данный интерфейс позволяет назначить параметры шрифта, которые будут использоваться при вводе надписей в документ.
Примечание:
1. Данный интерфейс можно получить от интерфейса параметров стиля текста ITextStyle, используя свойство ITextStyle::Font.
2. Интерфейс ITextFont является дополнительным для интерфейса ITextItem.


## Bold - Жирный шрифт

Тип данных: BOOL
Синтаксис Automation:
```
Bold = iObject.Bold    Получить свойство(* )
iObject.Bold = Bold    Установить свойство (* )
Bold = iObject.GetBold()    Получить свойство (**)
iObject.SetBold (Bold)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_Bold (&Bold)    Получить свойство
iObject->put_Bold (Bold)    Установить свойство
Значение свойства:
TRUE    - утолщенное начертание символов,
FALSE    - обычное начертание символов.
```
Примечание:
Свойство позволяет получить\изменить утолщенное начертание символов.


## Color - Цвет

Тип данных: long
Синтаксис Automation:
```
Color = iObject.Color    Получить свойство(* )
iObject.Color = Color    Установить свойство (* )
Color = iObject.GetColor()    Получить свойство (**)
iObject.SetColor (Color)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_Color (&Color)    Получить свойство
iObject->put_Color (Color)    Установить свойство
```
Примечание:
Свойство позволяет получить\изменить цвет символов.


## FontName - Имя шрифта

Тип данных: BSTR (строка)
Синтаксис Automation:
```
FontName = iObject.FontName    Получить свойство(* )
iObject.FontName = FontName    Установить свойство (* )
FontName = iObject.GetFontName()    Получить свойство (**)
iObject.SetFontName (FontName)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_FontName (&FontName)    Получить свойство
iObject->put_FontName (FontName)    Установить свойство
```
Примечание:
Свойство позволяет получить/изменить название шрифта из доступных шрифтов.


## Height - Высота текста

Тип данных: double
Синтаксис Automation:
```
Height = iObject.Height    Получить свойство(* )
iObject.Height = Height    Установить свойство (* )
Height = iObject.GetHeight()    Получить свойство (**)
iObject.SetHeight (Height)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_Height (&Height)    Получить свойство
iObject->put_Height (Height)    Установить свойство
```
Примечание:
1. Свойство позволяет получить/изменить высоту символов.
2. Значение высоты символов задается в миллиметрах.


## Italic - Курсив

Тип данных: BOOL
Синтаксис Automation:
```
Italic = iObject.Italic    Получить свойство(* )
iObject.Italic = Italic    Установить свойство (* )
Italic = iObject.GetItalic()    Получить свойство (**)
iObject.SetItalic (Italic)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_Italic (&Italic)    Получить свойство
iObject->put_Italic (Italic)    Установить свойство
Значение свойства:
TRUE    - курсивное начертание символов,
FALSE    - обычное начертание символов.
```
Примечание:
Свойство позволяет получить\изменить курсивное (наклонное) начертание символов.


## TextLineStep - Шаг строк для настроек

Тип данных: BOOL
Синтаксис Automation:
```
TextLineStep = Object.TextLineStep    Получить свойство(* )
Object.TextLineStep = TextLineStep    Установить свойство (* )
TextLineStep = Object.GetTextLineStep()    Получить свойство (**)
Object.SetTextLineStep (TextLineStep)    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_TextLineStep (&TextLineStep)    Получить свойство
Object.put_TextLineStep (TextLineStep)    Установить свойство
```


## Underline - Подчеркивание

Тип данных: BOOL
Синтаксис Automation:
```
Underline = iObject.Underline    Получить свойство(* )
iObject.Underline = Underline    Установить свойство (* )
Underline = iObject.GetUnderline()    Получить свойство (**)
iObject.SetUnderline (Underline)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_Underline (&Underline)    Получить свойство
iObject->put_Underline (Underline)    Установить свойство
Значение свойства:
TRUE    - подчеркивание символов,
FALSE    - обычное начертание символов.
```
Примечание:
Свойство позволяет получить\изменить курсивное (наклонное) подчеркивание текста.


## WidthFactor - Коэффициент сужения

Тип данных: double
Синтаксис Automation:
```
WidthFactor = iObject.WidthFactor    Получить свойство(* )
iObject.WidthFactor = WidthFactor    Установить свойство (* )
WidthFactor = iObject.GetWidthFactor()    Получить свойство (**)
iObject.SetWidthFactor (WidthFactor)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_WidthFactor (&WidthFactor)    Получить свойство
iObject->put_WidthFactor (WidthFactor)    Установить свойство
```
Примечание:
Свойство позволяет получить\изменить величину коэффициента сужения для символов.


## Интерфейс ITextItem

Интерфейс компоненты строки текста.
Иерархия:
IKompasAPIObject
ITextItem
Описание:
Интерфейс позволяет получить и отредактировать компонент строки текста. Компонент строки - это часть строки, отличающаяся типом ksTextItemEnum и параметрами шрифта.
Интерфейс имеет дополнительные интерфейсы ITextFont и IHypertextReferenceParam.
Примечание:
Данный интерфейс можно получить через интерфейс ITextLine, используя свойство ITextLine::TextItem.


## Delete - Удалить компоненту строки

Синтаксис Automation:
```
BOOL Delete();
```
Синтаксис COM:
```
HRESULT Delete( [out, retval] VARIANT_BOOL* Value );
Возвращаемое значение:
TRUE    - компонента строки текста удалена,
FALSE    - ошибка.
```
Примечание:
Позволяет удалить компоненту строки


## ItemType - Cтиль текста

Тип данных: ksTextItemEnum
Синтаксис Automation:
```
ItemType = iObject.ItemType    Получить свойство(* )
iObject.ItemType = ItemType    Установить свойство (* )
ItemType = iObject.GetItemType()    Получить свойство (**)
iObject.SetItemType(ItemType)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_ItemType(&ItemType)    Получить свойство
iObject->put_ItemType(ItemType)    Установить свойство
```
Примечание:
Свойство позволяет установить и получить тип компоненты текста. Используя соответствующий тип компоненты, можно формировать дроби, выражения типа суммы, вставлять спецзнаки, символы из произвольных шрифтов, вводить текст с разными параметрами шрифта (цвет, высота, сужение.и т.п.).


## NewLine - Признак начала строки

Тип данных: BOOL
Синтаксис Automation:
```
NewLine = iObject.NewLine    Получить свойство(* )
iObject.NewLine = NewLine    Установить свойство (* )
NewLine = iObject.GetNewLine()    Получить свойство (**)
iObject.SetNewLine(NewLine)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_NewLine(&NewLine)    Получить свойство
iObject->put_NewLine(NewLine)    Установить свойство
```
Примечание:
Свойство позволяет установить и получить признак начала строки.


## Number - Номер спецсимвола, символа из произвольного шрифта

Тип данных: long
Синтаксис Automation:
```
Number = iObject.Number    Получить свойство(* )
iObject.Number = Number    Установить свойство (* )
Number = iObject.GetNumber()    Получить свойство (**)
iObject.SetNumber(Number)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_Number(&Number)    Получить свойство
iObject->put_Number(Number)    Установить свойство
```
Примечание:
1. Свойство позволяет установить и получить номер спецсимвола, символа из произвольного шрифта.
2. Это свойство используется для компонент типа ksTItSpecialSymbol и ksTItFontSymbol из перечисления ksTextItemEnum.


## SizeFactor - Размерный коэффициент текста для дроби, отклонений, выражения типа суммы

Тип данных: из перечисления ksTextSizeEnum
Синтаксис Automation:
```
SizeFactor = iObject.SizeFactor    Получить свойство(* )
iObject.SizeFactor = SizeFactor    Установить свойство (* )
SizeFactor = iObject.GetSizeFactor()    Получить свойство (**)
iObject.SetSizeFactor(SizeFactor)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_SizeFactor(&SizeFactor)    Получить свойство
iObject->put_SizeFactor(SizeFactor)    Установить свойство
```
Примечание:
1. Свойство позволяет установить и получить размерный коэффициент текста для дроби, отклонений, выражения типа суммы.
2. Это свойство используется для компонент типа ksTItNumerator, ksTItDenominator, ksTItSBase из перечисления ksTextItemEnum.
3. Размерный коэффициент текста используется для задания размера текста дроби, отклонений, для выражения типа суммы
Для дроби и отклонений используются:
| ksTextNormal | - полной высоты, |
| --- | --- |
| ksTextMiddle | - в 1.5 раза меньше, |
| ksTextSmall | - в 2 раза меньше. |
Для выражения типа суммы используются:
| ksTextNormal | - нормальной высоты, |
| --- | --- |
| ksTextBig | - в 1.5 раза больше. |


## Str - Текстовое значение компоненты текста

Тип данных: BSTR(строка)
Синтаксис Automation:
```
Str = iObject.Str;    Получить свойство(* )
iObject.Str = Str;    Установить свойство (* )
Str = iObject.GetStr();    Получить свойство (**)
iObject.SetStr(Str);    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_Str(&Str);    Получить свойство
iObject->put_Str(Str);    Установить свойство
```
Примечание:
1. Свойство позволяет установить и получить текст в виде массива символов.
2. Это свойство не используется для компонент типа ksTItSpecialSymbol и ksTItFontSymbol из перечисления ksTextItemEnum.


## SymbolFontName - Имя шрифта для символа

Тип данных: BSTR (строка)
Синтаксис Automation:
```
SymbolFontName = iObject.SymbolFontName    Получить свойство(* )
iObject.SymbolFontName = SymbolFontName    Установить свойство (* )
iObject.GetSymbolFontName()    Получить свойство (**)
iObject.SetSymbolFontName(SymbolFontName)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_SymbolFontName(&SymbolFontName)    Получить свойство
iObject->put_SymbolFontName(SymbolFontName)    Установить свойство
```
Примечание:
1. Свойство позволяет установить и получить имя шрифта для символа.
2. Это свойство используется для компонент типа ksTItFontSymbol из перечисления ksTextItemEnum.


## Update - Обновить данные компонента

Синтаксис Automation:
```
BOOL Update();
```
Синтаксис COM:
```
HRESULT Update( [out, retval] VARIANT_BOOL* Value );
Возвращаемое значение:
TRUE    - обновление данных компонента прошло успешно,
FALSE    - ошибка.
```
Примечание:
Обновление данных компонента необходимо, так как многие параметры компонента взаимосвязаны и зависят от типа ksTextItemEnum. Поэтому менять компоненту в строке нужно целиком.


## Интерфейс ITextLine

Интерфейс строки текста.
Иерархия:
IKompasAPIObject
ITextLine
Описание:
Интерфейс позволяет получить и отредактировать строку текста.
Строка может иметь стиль, отличающийся от стиля текста. Стиль может быть системным из перечисления ksTextStyleEnum или пользовательским.
Строки текста состоят из компонентов, которые представлены интерфейсом ITextItem.
Компонент - это часть строки, отличающаяся типом ksTextItemEnum и параметрами шрифта.
Примечание:
Данный интерфейс можно получить через интерфейс IText, используя свойство IText::TextLine.


## Add - Добавить компонент строки в конец строки

Синтаксис Automation:
```
LPDISPATCH Add ();
```
Синтаксис COM:
```
HRESULT Add ( [out, retval] ITextItem ** Value );
Возвращаемое значение:
TRUE    - указатель на интерфейс ITextItem компонента строки текста.
```
Примечание:
Позволяет добавить компонент строки в конец строки.


## AddBefore - Добавить компонент строки перед компонентом с заданным индексом

Синтаксис Automation:
```
LPDISPATCH AddBefore ( long Index );
```
Синтаксис COM:
```
HRESULT AddBefore ([in] long Index, [out, retval] ITextItem ** Value );
Выходные параметры:
Index (long)    - индекс компонента строки, перед которым нужно вставить новый компонент.
Возвращаемое значение:
- указатель на интерфейс ITextItem строка текста.
```
Примечание:
Позволяет добавить компонент строки перед компонентом с заданным индексом.


## Align - Выравнивание

Тип данных: типы выравнивания ksAlignEnum
Синтаксис Automation:
```
Align = iObject.Align;    Получить свойство(* )
iObject.Align = Align;    Установить свойство (* )
Align = iObject.GetAlign ();    Получить свойство (**)
iObject.SetAlign (Align);    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_Align (&Align);    Получить свойство
iObject->put_Align (Align);    Установить свойство
```
Примечание:
Свойство позволяет установить и получить выравнивание строк.
Строка представляет собой абзац текста и может размещаться на нескольких строках, если включено выравнивание текста по горизонтали и вертикали.


## Assign - Скопировать текст

Синтаксис Automation:
```
BOOL Assign( LPDISPATCH Other );
```
Синтаксис COM:
```
HRESULT Assign( ITextLine * Other, BOOL * Result );
Входной параметр:
Other    - копируемый текст - указатель на интерфейс ITextLine.
Возвращаемое значение:
TRUE    - в случае удачного завершения.
```


## BlockIndex - Индекс листа в документе

Тип данных: long
Синтаксис Automation:
```
BlockIndex = Object.BlockIndex    Получить свойство(* )
BlockIndex = Object.GetBlockIndex()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_BlockIndex( &BlockIndex )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.


## Clear - Очистить строку текста

Синтаксис Automation:
```
BOOL Clear ();
```
Синтаксис COM:
```
HRESULT Clear ( [out, retval] VARIANT_BOOL* Value );
Возвращаемое значение:
TRUE    - строка очищена,
FALSE    - ошибка.
```
Примечание:
Позволяет очистить строку текста. После этого можно вводить новую строку.


## ConvertToString - Конвертировать текст в строку

Синтаксис Automation:
```
BSTR ConvertToString( ksTextConvertEnum ConvertType );
```
Синтаксис COM:
```
HRESULT ConvertToString( ksTextConvertEnum ConvertType, BSTR * Result );
Возвращаемое значение:
- Конвертированная строка.
Входные параметры:
ConvertType    - способ конвертации из перечисления ksTextConvertEnum.
Версия Компас v23
```


## Count - Количество компонентов строки текста

Тип данных: long
Синтаксис Automation:
```
Count = iObject.Count;    Получить свойство(* )
Count = iObject.GetCount ();    Получить свойство (**)
```
Синтаксис COM:
```
iObject->get_Count (&Count);    Получить свойство
```
Примечание:
Свойство позволяет получить количество компонентов строки текста.


## Delete - Удалить строку текста

Синтаксис Automation:
```
BOOL Delete ();
```
Синтаксис COM:
```
HRESULT Delete ( [out, retval] VARIANT_BOOL* Value );
Возвращаемое значение:
TRUE    - строка текста удалена,
FALSE    - ошибка.
```
Примечание:
Позволяет удалить строку текста.


## Draw - Отрисовать в окне

Синтаксис Automation:
```
BOOL Draw( OLE_HANDLE HWnd );
```
Синтаксис COM:
```
HRESULT Draw( OLE_HANDLE HWnd, BOOL * Result );
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.
Входные параметры:
HWnd    - дескриптор окна.
Версия Компас v23
```


## Edit - Редактировать в окне

Синтаксис Automation:
```
BOOL Edit( OLE_HANDLE HWnd );
```
Синтаксис COM:
```
HRESULT Edit( OLE_HANDLE HWnd, BOOL * Result );
Возвращаемое значение:
TRUE    - в случае изменения текста,
FALSE    - в случае отмены.
```


## Find - Найти текст, начиная с заданной позиции

Синтаксис Automation :
int64 Find( int64 StartPosition, BSTR SrcText, BOOL Case, BOOL WordOnly );
Синтаксис COM :
HRESULT Find( int64 StartPosition, BSTR SrcText, BOOL Case, BOOL WordOnly, int64 * Result );
Возвращаемое значение:
| | Позиция найденного текста или -1, если текст не найден. |
| --- | --- |
Входные параметры:
| StartPosition | - начальная позиция для поиска, |
| --- | --- |
| SrcText | - искомая подстрока, |
| NewText | - новая строка, |
| Case | - TRUE - различать регистр, - FALSE - поиск без учета регистра, |
| WordOnly | - TRUE - только слово целиком, |
Версия Компас v21


## IndentedLine - Смещение красной строки

Тип данных: double
Синтаксис Automation:
```
IndentedLine = iObject.IndentedLine;    Получить свойство(* )
iObject.IndentedLine = IndentedLine;    Установить свойство (* )
IndentedLine = iObject.GetIndentedLine ();    Получить свойство (**)
iObject.SetIndentedLine (IndentedLine);    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_IndentedLine (&IndentedLine);    Получить свойство
iObject->put_IndentedLine (IndentedLine);    Установить свойство
```
Примечание:
Свойство позволяет установить и получить смещение красной строки.


## InsertHypertextReference - Добавить ссылку в текст

Синтаксис Automation:
```
LPDISPATCH InsertHypertextReference( long TextItemIndex,
IKompasAPIObject * Object,
ksHypertextTypeEnum Type,
BOOL Brackets,
long TextLineIndex,
long Precision,
double PropertyId);
```
Синтаксис COM:
```
HRESULT InsertHypertextReference( long TextItemIndex,
IKompasAPIObject * Object,
ksHypertextTypeEnum Type,
BOOL Brackets,
long TextLineIndex,
long Precision,
double PropertyId,
ITextItem ** Result );
Входные параметры:
TextItemIndex    - индекс компонента текста,
Object    - объект, на который сделана ссылка,
Type    - тип ссылки,
Brackets    - признак скобок,
TextLineIndex    - индекс строки в тексте,
Precision    - точность вывода числовых значений,
PropertyId    - идентификатор свойства.
Возвращаемое значение:
- указатель на интерфейс компонента текста, содержащего ссылку.
```


## LeftEdge - Отступ текста слева

Тип данных: double
Синтаксис Automation:
```
LeftEdge = iObject.LeftEdge;    Получить свойство(* )
iObject.LeftEdge = LeftEdge;    Установить свойство (* )
LeftEdge = iObject.GetLeftEdge ();    Получить свойство (**)
iObject.SetLeftEdge (LeftEdge);    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_LeftEdge (&LeftEdge);    Получить свойство
iObject->put_LeftEdge (LeftEdge);    Установить свойство
```
Примечание:
Свойство позволяет установить и получить отступ текста слева.


## Level - Уровень вложенности нумерации

Тип данных: long
Синтаксис Automation:
```
Level = iObject.Level;    Получить свойство(* )
iObject.Level = Level;    Установить свойство (* )
Level = iObject.GetLevel ();    Получить свойство (**)
iObject.SetLevel (Level);    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_Level (&Level);    Получить свойство
iObject->put_Level (Level);    Установить свойство
римечание:
Свойство позволяет установить и получить уровень вложенности нумерации.
```


## NewPage - Признак начала абзаца с новой страницы (Ctrl+Enter)

Тип данных: BOOL
Синтаксис Automation:
```
NewPage = Object.NewPage    Получить свойство(* )
Object.NewPage = NewPage    Установить свойство (* )
NewPage = Object.GetNewPage()    Получить свойство (**)
Object.SetNewPage( NewPage )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_NewPage( &NewPage )    Получить свойство
Object.put_NewPage( NewPage )    Установить свойство
```


## NewSection - Признак начала раздела

Тип данных: BOOL
Синтаксис Automation:
```
NewSection = Object.NewSection    Получить свойство(* )
Object.NewSection = NewSection    Установить свойство (* )
NewSection = Object.GetNewSection()    Получить свойство (**)
Object.SetNewSection( NewSection )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_NewSection( &NewSection )    Получить свойство
Object.put_NewSection( NewSection )    Установить свойство
```


## Numbering - Тип нумерации абзаца

Тип данных: из перечисления ksTextNumberingEnum
Синтаксис Automation:
```
Numbering = iObject.Numbering;    Получить свойство(* )
iObject.Numbering = Numbering;    Установить свойство (* )
Numbering = iObject.GetNumbering ();    Получить свойство (**)
iObject.SetNumbering (Numbering);    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_Numbering (&Numbering);    Получить свойство
iObject->put_Numbering (Numbering);    Установить свойство
```
Примечание:
Свойство позволяет установить и получить тип нумерации абзаца.


## ReplaceStr - Заменить текст, начиная с заданной позиции

Синтаксис Automation:
```
BOOL ReplaceStr( int64 StartPosition, BSTR SrcText, BSTR NewText, BOOL Case, BOOL WordOnly, BOOL ReplaceAll );
Синтаксис COM :
HRESULT ReplaceStr( int64 StartPosition, BSTR SrcText, BSTR NewText, BOOL Case, BOOL WordOnly, BOOL ReplaceAll, BOOL * Result );
Возвращаемое значение:
TRUE    - в случае изменения текста,
FALSE    - в случае отмены.
Входные параметры:
StartPosition    - начальная позиция для поиска,
SrcText    - искомая подстрока,
NewText    - новая строка,
Case    - TRUE - различать регистр, - FALSE - поиск без учета регистра,
WordOnly    - TRUE - только слово целиком,
ReplaceAll    - TRUE - заменить все вхождения, - FALSE - заменить только первое вхождение.
Версия Компас v21
```


## RightEdge - Отступ текста справа

Тип данных: double
Синтаксис Automation:
```
RightEdge = iObject.RightEdge;    Получить свойство(* )
iObject.RightEdge = RightEdge;    Установить свойство (* )
RightEdge = iObject.GetRightEdge ();    Получить свойство (**)
iObject.SetRightEdge (RightEdge);    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_RightEdge (&RightEdge);    Получить свойство
iObject->put_RightEdge (RightEdge);    Установить свойство
```
Примечание:
Свойство позволяет установить и получить отступ текста справа.


## SectionBlockIndex - Индекс листа в разделе

Тип данных: long
Синтаксис Automation:
```
SectionBlockIndex = Object.SectionBlockIndex    Получить свойство(* )
SectionBlockIndex = Object.GetSectionBlockIndex()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_SectionBlockIndex( &SectionBlockIndex )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.


## Step - Шаг строк

Тип данных: double
Синтаксис Automation:
```
Step = iObject.Step;    Получить свойство(* )
iObject.Step = Step;    Установить свойство (* )
Step = iObject.GetStep ();    Получить свойство (**)
iObject.SetStep (Step);    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_Step (&Step);    Получить свойство
iObject->put_Step (Step);    Установить свойство
```
Примечание:
Свойство позволяет установить и получить шаг строк.
Строка представляет собой абзац текста и может размещаться на нескольких строках, если включено выравнивание текста по горизонтали и вертикали.


## StepAfterParagraph - Дополнительный шаг после абзаца

Тип данных: double
Синтаксис Automation:
```
StepAfterParagraph = iObject.StepAfterParagraph;    Получить свойство(* )
iObject.StepAfterParagraph = StepAfterParagraph;    Установить свойство (* )
StepAfterParagraph = iObject.GetStepAfterParagraph ();    Получить свойство (**)
iObject.SetStepAfterParagraph (StepAfterParagraph);    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_StepAfterParagraph (&StepAfterParagraph);    Получить свойство
iObject->put_StepAfterParagraph (StepAfterParagraph);    Установить свойство
```
Примечание:
Свойство позволяет установить и получить дополнительный шаг после абзаца.


## StepBeforeParagraph - Дополнительный шаг перед абзацем

Тип данных: double
Синтаксис Automation:
```
StepBeforeParagraph = iObject.StepBeforeParagraph;    Получить свойство(* )
iObject.StepBeforeParagraph = StepBeforeParagraph;    Установить свойство (* )
iObject.GetStepBeforeParagraph ();    Получить свойство (**)
iObject.SetStepBeforeParagraph (StepBeforeParagraph);    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_StepBeforeParagraph (&StepBeforeParagraph);    Получить свойство
iObject->put_StepBeforeParagraph (StepBeforeParagraph);    Установить свойство
```
Примечание:
Свойство позволяет установить и получить дополнительный шаг перед абзацем.


## Str - Текст в виде строки

Тип данных: BSTR (строка)
Синтаксис Automation:
```
Str = iObject.Str;    Получить свойство(* )
iObject.Str = Str;    Установить свойство (* )
Str = iObject.GetStr ();    Получить свойство (**)
iObject.SetStr (Str);    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_Str (&Str);    Получить свойство
iObject->put_Str (Str);    Установить свойство
```
Примечание:
Свойство позволяет установить и получить текст в виде массива символов.
Дроби представляются в формате $d числитель $ знаменатель $.
Выражение типа суммы в формате $ верхний индекс $ нижний индекс $.
Спецзнак в формате &N или @N.
При замене строки очищаются и создаются новые компоненты.


## Style - Cтиль текста

Тип данных: long
Синтаксис Automation:
```
Style = iObject.Style;    Получить свойство(* )
iObject.Style = Style;    Установить свойство (* )
Style = iObject.GetStyle ();    Получить свойство (**)
iObject.SetStyle (Style);    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_Style (&Style);    Получить свойство
iObject->put_Style (Style);    Установить свойство
```
Примечание:
1. Свойство позволяет получить и установить стиль текста.
2. Стиль может быть системным из перечисления ksTextStyleEnum или пользовательским.


## Tabulators - Коллекция позиции табуляторов

Тип данных: Указатель на интерфейс ITabulators
Синтаксис Automation:
```
Tabulators = Object.Tabulators;    Получить свойство(* )
Tabulators = Object.GetTabulators();    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_Tabulators( &Tabulators );    Получить свойство
```
Примечание:
Свойство доступно только для чтения.


## TextItem - Компонент строки текста с заданным индексом

Тип данных: указатель на интерфейс компонента строки текста ITextItem
Синтаксис Automation:
```
TextItem = iObject.TextItem (Index);    Получить свойство(* )
TextItem = iObject.GetTextItem (Index);    Получить свойство (**)
```
Синтаксис COM:
```
iObject->get_TextItem (Index, &TextItem);    Получить свойство
Входные параметры:
Index ( long )    - индекс компонента строки.
```
Примечание:
Свойство позволяет получить интерфейс компонента строки текста ITextItem.


## TextItems - Массив SAFEARRAY компонентов строки текста

Тип данных: VARIANT ( VT_ARRAY|VT_DISPATCH )
Синтаксис Automation:
```
TextItems = iObject.TextItems;    Получить свойство(* )
TextItems = iObject.GetTextItems ();    Получить свойство (**)
```
Синтаксис COM:
```
iObject->get_TextItems (&TextItems);    Получить свойство
```
Примечание:
Свойство позволяет получить массив SAFEARRAY компонентов строки текста. Это массив интерфейсов ITextItem. Если возвращается один объект, то тип VARIANT-а будет VT_DISPATCH, если возвращается несколько объектов, то тип VARIANT-а будет VT_ARRAY | VT_DISPATCH.


## TextLineData - Интерфейс дополнительных данных строки

Тип данных: IKompasAPIObject
Синтаксис Automation:
```
TextLineData = Object.TextLineData    Получить свойство(* )
TextLineData = Object.GetTextLineData ()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_TextLineData ( &TextLineData )    Получить свойство
```
Примечание:
1. Свойство доступно только для чтения.
2. В зависимости от типа строки TextLineType возвращаются следующие значения свойства:
•ksTLText - NULL,
•ksTLVerticalText - указатель на интерфейс IText,
•ksTLFragment - указатель на интерфейс IInsertionParameters,
•ksTLRaster - указатель на интерфейс IInsertionParameters,
•ksTLTable - указатель на интерфейс ITextTable.


## TextLineType - Тип строки

Тип данных: ksTextLineType
Синтаксис Automation:
```
TextLineType = Object.TextLineType    Получить свойство(* )
TextLineType = Object.GetTextLineType ()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_TextLineType ( &TextLineType )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.


## Интерфейс ITextStyle

Интерфейс параметров стиля текста.
Иерархия:
IKompasAPIObject
ITextStyle
Примечание:
Данный интерфейс можно получить от интерфейса настроек спецификации ISpecificationTuning, используя:
•ISpecificationTuning::SectionTextStyleFirst;
•ISpecificationTuning::SectionTextStyleNext;
•ISpecificationTuning::ObjectTextStyle;
•ISpecificationTuning::PerformanceBlockTextStyleFirst;
•ISpecificationTuning::PerformanceBlockTextStyleNext;
•ISpecificationTuning::AdditionalBlockTextStyleFirst;
•ISpecificationTuning::AdditionalBlockTextStyleNext;
•ISpecificationTuning::NestingBlockTextStyleFirst;
•ISpecificationTuning::NestingBlockTextStyleNext.


## Align - Выравнивание

Тип данных: из перечисления ksAlignEnum
Синтаксис Automation:
```
Align = iObject.Align    Получить свойство(* )
iObject.Align = Align    Установить свойство (* )
Align = iObject.GetAlign()    Получить свойство (**)
iObject.SetAlign (Align)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_Align (&Align)    Получить свойство
iObject->put_Align (Align)    Установить свойство
```
Примечание:
1. Свойство позволяет получить/изменить выравнивание абзацев (по левой границе, по правой границе, центрирование, выравнивание по двум границам).
2. Свойство используется для стиля, полученного через методы интерфейса ISpecificationTuning.


## EnableLine1 - Разрешена ли первая комбинация для использования

Тип данных: BOOL
Синтаксис Automation:
```
EnableLine1 = Object.EnableLine1    Получить свойство(* )
Object.EnableLine1 = EnableLine1    Установить свойство (* )
EnableLine1 = Object.GetEnableLine1()    Получить свойство (**)
Object.SetEnableLine1 (EnableLine1)    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_EnableLine1 (&EnableLine1)    Получить свойство
Object.put_EnableLine1(EnableLine1)    Установить свойство
```


## EnableLine2 - Разрешена ли вторая комбинация для использования

Тип данных: BOOL
Синтаксис Automation:
```
EnableLine2 = Object.EnableLine2    Получить свойство(* )
Object.EnableLine2 = EnableLine2    Установить свойство (* )
EnableLine2 = Object.GetEnableLine2()    Получить свойство (**)
Object.SetEnableLine2 (EnableLine2)    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_EnableLine2 (&EnableLine2)    Получить свойство
Object.put_EnableLine2(EnableLine2)    Установить свойство
```


## EnableLine3 - Разрешена ли третья комбинация для использования

Тип данных: BOOL
Синтаксис Automation:
```
EnableLine3 = Object.EnableLine3    Получить свойство(* )
Object.EnableLine3 = EnableLine3    Установить свойство (* )
EnableLine3 = Object.GetEnableLine3()    Получить свойство (**)
Object.SetEnableLine3 (EnableLine3)    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_EnableLine3 (&EnableLine3)    Получить свойство
Object.put_EnableLine3(EnableLine3)    Установить свойство
```


## Extended - Расширенный стиль текста

Тип данных: BOOL
Синтаксис Automation:
```
Extended = Object.Extended    Получить свойство(* )
Object.Extended = Extended    Установить свойство (* )
Extended = Object.GetExtended()    Получить свойство (**)
Object.SetExtended (Extended)    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_Extended (&Extended)    Получить свойство
Object.put_Extended(Extended)    Установить свойство
```


## Font - Параметры шрифта

Тип данных: указатель на интерфейс ITextFont параметров шрифта
Синтаксис Automation:
```
Font = iObject.Font    Получить свойство(* )
Font = iObject.GetFont()    Получить свойство (**)
```
Синтаксис COM:
```
iObject->get_Font (&Font)    Получить свойство
```
Примечание:
1. Свойство позволяет параметры шрифта.
2. Свойство доступно только для чтения.
3. Свойство используется для стиля, полученного через методы интерфейса ISpecificationTuning.


## Height1 - Высота первой строки текста

Тип данных: double
Синтаксис Automation:
```
Height1 = Object.Height1    Получить свойство(* )
Object.Height1 = Height1    Установить свойство (* )
Height1 = Object.GetHeight1()    Получить свойство (**)
Object.SetHeight1 (Height1)    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_Height1 (&Height1)    Получить свойство
Object.put_Height1(Height1)    Установить свойство
```


## Height2 - Высота второй строки текста

Тип данных: double
Синтаксис Automation:
```
Height2 = Object.Height2    Получить свойство(* )
Object.Height2 = Height2    Установить свойство (* )
Height2 = Object.GetHeight2()    Получить свойство (**)
Object.SetHeight2 (Height2)    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_Height2 (&Height2)    Получить свойство
Object.put_Height2(Height2)    Установить свойство
```


## Height3 - Высота третьей строки текста

Тип данных: double
Синтаксис Automation:
```
Height3 = Object.Height3    Получить свойство(* )
Object.Height3 = Height3    Установить свойство (* )
Height3 = Object.GetHeight3()    Получить свойство (**)
Object.SetHeight3 (Height3)    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_Height3 (&Height3)    Получить свойство
Object.put_Height3(Height3)    Установить свойство
```


## IndentedLine - Смещение красной строки

Тип данных: double
Синтаксис Automation:
```
IndentedLine = Object.IndentedLine    Получить свойство(* )
Object.IndentedLine = IndentedLine    Установить свойство (* )
IndentedLine = Object.GetIndentedLine()    Получить свойство (**)
Object.SetIndentedLine (IndentedLine)    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_IndentedLine (&IndentedLine)    Получить свойство
Object.put_IndentedLine(IndentedLine)    Установить свойство
```


## LeftEdge - Отступ текста слева

Тип данных: double
Синтаксис Automation:
```
LeftEdge = Object.LeftEdge    Получить свойство(* )
Object.LeftEdge = LeftEdge    Установить свойство (* )
LeftEdge = Object.GetLeftEdge()    Получить свойство (**)
Object.SetLeftEdge (LeftEdge)    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_LeftEdge (&LeftEdge)    Получить свойство
Object.put_LeftEdge(LeftEdge)    Установить свойство
```


## LinesCount - Количество строк

Тип данных: long
Синтаксис Automation:
```
LinesCount = Object.LinesCount    Получить свойство(* )
Object.LinesCount = LinesCount    Установить свойство (* )
LinesCount = Object.GetLinesCount()    Получить свойство (**)
Object.SetLinesCount (LinesCount)    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_LinesCount (&LinesCount)    Получить свойство
Object.put_LinesCount(LinesCount)    Установить свойство
```


## Name - Имя стиля

Тип данных: BSTR
Синтаксис Automation:
```
Name = Object.Name    Получить свойство(* )
Object.Name = Name    Установить свойство (* )
Name = Object.GetName()    Получить свойство (**)
Object.SetName (Name)    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_Name (&Name)    Получить свойство
Object.put_Name(Name)    Установить свойство
```


## Number - Номер стиля

Тип данных: long
Синтаксис Automation:
```
Number = Object.Number    Получить свойство(* )
Object.Number = Number    Установить свойство (* )
Number = Object.GetNumber()    Получить свойство (**)
Object.SetNumber (Number)    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_Number (&Number)    Получить свойство
Object.put_Number(Number)    Установить свойство
```


## RightEdge - Отступ текста справа

Тип данных: double
Синтаксис Automation:
```
RightEdge = Object.RightEdge    Получить свойство(* )
Object.RightEdge = RightEdge    Установить свойство (* )
RightEdge = Object.GetRightEdge()    Получить свойство (**)
Object.SetRightEdge (RightEdge)    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_RightEdge (&RightEdge)    Получить свойство
Object.put_RightEdge(RightEdge)    Установить свойство
```


## Step - Шаг строк

Тип данных: double
Синтаксис Automation:
```
Step = iObject.Step    Получить свойство(* )
iObject.Step = Step    Установить свойство (* )
Step = iObject.GetStep()    Получить свойство (**)
iObject.SetStep (Step)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_Step (&Step)    Получить свойство
iObject->put_Step(Step)    Установить свойство
```
Примечание:
1. Свойство позволяет получить/изменить шаг строк (расстояние между строками текста).
2. Значение шага задается в миллиметрах.
3. Свойство используется для стиля, полученного через методы интерфейса ISpecificationTuning.


## Step1 - Шаг первой строки текста

Тип данных: double
Синтаксис Automation:
```
Step1 = Object.Step1    Получить свойство(* )
Object.Step1 = Step1    Установить свойство (* )
Step1 = Object.GetStep1()    Получить свойство (**)
Object.SetStep1 (Step1)    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_Step1 (&Step1)    Получить свойство
Object.put_Step1(Step1)    Установить свойство
```


## Step2 - Шаг второй строки текста

Тип данных: double
Синтаксис Automation:
```
Step2 = Object.Step2    Получить свойство(* )
Object.Step2 = Step2    Установить свойство (* )
Step2 = Object.GetStep2()    Получить свойство (**)
Object.SetStep2 (Step2)    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_Step2 (&Step2)    Получить свойство
Object.put_Step2(Step2)    Установить свойство
```


## Step3 - Шаг третьей строки текста

Тип данных: double
Синтаксис Automation:
```
Step3 = Object.Step3    Получить свойство(* )
Object.Step3 = Step3    Установить свойство (* )
Step3 = Object.GetStep3()    Получить свойство (**)
Object.SetStep3 (Step3)    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_Step3 (&Step3)    Получить свойство
Object.put_Step3(Step3)    Установить свойство
```


## StepAfterParagraph - Дополнительный шаг после абзаца

Тип данных: double
Синтаксис Automation:
```
StepAfterParagraph = Object.StepAfterParagraph    Получить свойство(* )
Object.StepAfterParagraph = StepAfterParagraph    Установить свойство (* )
StepAfterParagraph = Object.GetStepAfterParagraph()    Получить свойство (**)
Object.SetStepAfterParagraph (StepAfterParagraph)    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_StepAfterParagraph (&StepAfterParagraph)    Получить свойство
Object.put_StepAfterParagraph(StepAfterParagraph)    Установить свойство
```


## StepBeforeParagraph - Дополнительный шаг перед абзацем

Тип данных: double
Синтаксис Automation:
```
StepBeforeParagraph = Object.StepBeforeParagraph    Получить свойство(* )
Object.StepBeforeParagraph = StepBeforeParagraph    Установить свойство (* )
StepBeforeParagraph = Object.GetStepBeforeParagraph()    Получить свойство (**)
Object.SetStepBeforeParagraph (StepBeforeParagraph)    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_StepBeforeParagraph (&StepBeforeParagraph)    Получить свойство
Object.put_StepBeforeParagraph(StepBeforeParagraph)    Установить свойство
```


## Tabulators - Коллекция позиции табуляторов

Тип данных: указатель на интерфейс ITabulators
Синтаксис Automation:
```
Tabulators = Object.Tabulators    Получить свойство(* )
Tabulators = Object.GetTabulators()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_Tabulators (&Tabulators)    Получить свойство
```
Примечание:
Свойство доступно только для чтения.


## WidthFactor1 - Коэффициент сужения первой строки текста

Тип данных: double
Синтаксис Automation:
```
WidthFactor1 = Object.WidthFactor1    Получить свойство(* )
Object.WidthFactor1 = WidthFactor1    Установить свойство (* )
WidthFactor1 = Object.GetWidthFactor1()    Получить свойство (**)
Object.SetWidthFactor1 (WidthFactor1)    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_WidthFactor1 (&WidthFactor1)    Получить свойство
Object.put_WidthFactor1(WidthFactor1)    Установить свойство
```


## WidthFactor2 - Коэффициент сужения второй строки текста

Тип данных: double
Синтаксис Automation:
```
WidthFactor2 = Object.WidthFactor2    Получить свойство(* )
Object.WidthFactor2 = WidthFactor2    Установить свойство (* )
WidthFactor2 = Object.GetWidthFactor2()    Получить свойство (**)
Object.SetWidthFactor2 (WidthFactor2)    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_WidthFactor2 (&WidthFactor2)    Получить свойство
Object.put_WidthFactor2(WidthFactor2)    Установить свойство
```


## WidthFactor3 - Коэффициент сужения третьей строки текста

Тип данных: double
Синтаксис Automation:
```
WidthFactor3 = Object.WidthFactor3    Получить свойство(* )
Object.WidthFactor3 = WidthFactor3    Установить свойство (* )
WidthFactor3 = Object.GetWidthFactor3()    Получить свойство (**)
Object.SetWidthFactor3 (WidthFactor3)    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_WidthFactor3 (&WidthFactor3)    Получить свойство
Object.put_WidthFactor3(WidthFactor3)    Установить свойство
```


## Интерфейс ITextTable

Таблица в тексте текстового документа.
Иерархия:
IDispatch
IKompasAPIObject
ITextTable
Позволяет вставить таблицу в текстовый документ.
Примечание:
Интерфейс можно получить с помощью метода IText::AddTable и свойства ITextLine::TextLineData.


## FixedCellsSize - Зафиксировать габариты ячеек

Тип данных: BOOL
Синтаксис Automation:
```
FixedCellsSize = Object.FixedCellsSize    Получить свойство(* )
Object.FixedCellsSize = FixedCellsSize    Установить свойство (* )
FixedCellsSize = Object.GetFixedCellsSize()    Получить свойство (**)
Object.SetFixedCellsSize( FixedCellsSize )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_FixedCellsSize( &FixedCellsSize )    Получить свойство
Object.put_FixedCellsSize( FixedCellsSize )    Установить свойство
```


## FixedColumnCount - Запретить изменять число столбцов

Тип данных: BOOL
Синтаксис Automation:
```
FixedColumnCount = Object.FixedColumnCount    Получить свойство(* )
Object.FixedColumnCount = FixedColumnCount    Установить свойство (* )
FixedColumnCount = Object.GetFixedColumnCount()    Получить свойство (**)
Object.SetFixedColumnCount( FixedColumnCount )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_FixedColumnCount( &FixedColumnCount )    Получить свойство
Object.put_FixedColumnCount( FixedColumnCount )    Установить свойство
```


## FixedRowCount - Запретить изменять число строк

Тип данных: BOOL
Синтаксис Automation:
```
FixedRowCount = Object.FixedRowCount    Получить свойство(* )
Object.FixedRowCount = FixedRowCount    Установить свойство (* )
FixedRowCount = Object.GetFixedRowCount()    Получить свойство (**)
Object.SetFixedRowCount( FixedRowCount )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_FixedRowCount( &FixedRowCount )    Получить свойство
Object.put_FixedRowCount( FixedRowCount )    Установить свойство
```


## Save - Сохранить таблицу в файл

Синтаксис Automation:
```
BOOL Save( BSTR FileName );
```
Синтаксис COM:
```
HRESULT Save( BSTR FileName, BOOL * Result );
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.
Входные параметры:
FileName    - имя сохраняемого файла.
```


## Интерфейс ITabulators

Интерфейс коллекции позиций табулятора.
Иерархия:
IKompasAPIObject
IKompasCollection
ITabulators
Описание:
Позволяет получить доступ к коллекции позиций табулятора, считывать параметры позиций, добавлять и удалять позиции из коллекции.


## Add - Создает новую позицию табулятора и добавляет ее в коллекцию

Синтаксис Automation:
```
LPDISPATCH Add( long Position );
```
Синтаксис COM:
```
HRESULT Add( long Position, ITabulator ** Result );
Возвращаемое значение:
- указатель на интерфейс ITabulator.
Входные параметры:
Position    - позиция.
```


## Clear - Очищает коллекцию, удаляет из коллекции все позиции табулятора

Синтаксис Automation:
```
BOOL Clear();
```
Синтаксис COM:
```
HRESULT Clear( BOOL * Result );
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.
```


## Item - Возвращает позицию табулятора, заданную по индексу

Тип данных: указатель на интерфейс ITabulators.
Синтаксис Automation:
```
Item = Object.Item( Index )    Получить свойство(* )
Item = Object.GetItem( Index )    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_Item( Index, &Item )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.


## Интерфейс IHypertextReferenceParam

Интерфейс параметров вставки ссылки в текст
Иерархия:
IDispatch
IHypertextReferenceParam
Интерфейс является дополнительным для интерфейса ITextItem.


## Brackets - Признак скобок

Тип данных: BOOL
Синтаксис Automation:
```
Brackets = Object.Brackets    Получить свойство(* )
Object.Brackets = Brackets    Установить свойство (* )
Brackets = Object.GetBrackets()    Получить свойство (**)
Object.SetBrackets( Brackets )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_Brackets( &Brackets )    Получить свойство
Object.put_Brackets( Brackets )    Установить свойство
Свойство позволяет заключить содержимое ссылки в скобки. Доступность свойства зависит от типа источника.
```


## Destroy - Разрушить ссылку

Синтаксис Automation:
```
BOOL Destroy();
```
Синтаксис COM:
```
HRESULT Destroy( BOOL * Result );
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.
Метод позволяет удалить связь между ссылкой и ее источником. В результате разрушения содержимое ссылки становится обычным текстом. Обновление разрушенной ссылки становится невозможным.
```


## HypertextType - Тип ссылки

Тип данных: из перечисления ksHypertextTypeEnum
Синтаксис Automation:
```
HypertextType = Object.HypertextType    Получить свойство(* )
Object.HypertextType = HypertextType    Установить свойство (* )
HypertextType = Object.GetHypertextType()    Получить свойство (**)
Object.SetHypertextType( HypertextType )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_HypertextType( &HypertextType )    Получить свойство
Object.put_HypertextType( HypertextType )    Установить свойство
Свойство позволяет указать, что будет являться содержимым ссылки. Набор вариантов зависит от типа источника.
```


## LinkObject - Объект, на который сделана ссылка

Тип данных: указатель на интерфейс IKompasAPIObject
Синтаксис Automation:
```
LinkObject = Object.LinkObject    Получить свойство(* )
Object.LinkObject = LinkObject    Установить свойство (* )
LinkObject = Object.GetLinkObject()    Получить свойство (**)
Object.SetLinkObject( LinkObject )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_LinkObject( &LinkObject )    Получить свойство
Object.put_LinkObject( LinkObject )    Установить свойство
Свойство позволяет устанавливать и получать объект-источник ссылки.
```


## Precission - Точность вывода числовых значений

Тип данных: long
Синтаксис Automation:
```
Precission = Object.Precission    Получить свойство(* )
Object.Precission = Precission    Установить свойство (* )
Precission = Object.GetPrecission()    Получить свойство (**)
Object.SetPrecission( Precission )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_Precission( &Precission )    Получить свойство
Object.put_Precission( Precission )    Установить свойство
Свойство позволяет устанавливать и получать количество знаков после запятой, если источником ссылки является переменная.
```


## PropertyId - Идентификатор свойства

Тип данных: double
Синтаксис Automation:
```
PropertyId = Object.PropertyId    Получить свойство(* )
Object.PropertyId = PropertyId    Установить свойство (* )
PropertyId = Object.GetPropertyId()    Получить свойство (**)
Object.SetPropertyId( PropertyId )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_PropertyId( &PropertyId )    Получить свойство
Object.put_PropertyId( PropertyId )    Установить свойство
```


## TextLineIndex - Индекс строки в тексте

Тип данных: long
Синтаксис Automation:
```
TextLineIndex = Object.TextLineIndex    Получить свойство(* )
Object.TextLineIndex = TextLineIndex    Установить свойство (* )
TextLineIndex = Object.GetTextLineIndex()    Получить свойство (**)
Object.SetTextLineIndex( TextLineIndex )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_TextLineIndex( &TextLineIndex )    Получить свойство
Object.put_TextLineIndex( TextLineIndex )    Установить свойство
Свойство позволяет выбрать номер строки, если источник ссылки содержит несколько строк текста.
```
