структура CHARFORMAT2A (rich Edit 2.0)
Содержит сведения о форматировании символов в элементе управления расширенными изменениями. CHARFORMAT2 — это расширение Microsoft Rich Edit 2.0 структуры CHARFORMAT. Microsoft Rich Edit 2.0 позволяет использовать любую структуру с EM_GETCHARFORMAT и EM_SETCHARFORMAT сообщениями.
Синтаксис
typedef struct _charformat2a {
UINT cbSize;
DWORD dwMask;
DWORD dwEffects;
LONG yHeight;
LONG yOffset;
COLORREF crTextColor;
BYTE bCharSet;
BYTE bPitchAndFamily;
char szFaceName[LF_FACESIZE];
WORD wWeight;
SHORT sSpacing;
COLORREF crBackColor;
LCID lcid;
union {
DWORD dwReserved;
DWORD dwCookie;
};
DWORD dwReserved;
SHORT sStyle;
WORD wKerning;
BYTE bUnderlineType;
BYTE bAnimation;
BYTE bRevAuthor;
BYTE bUnderlineColor;
} CHARFORMAT2A;
Члены
cbSize
Тип: UINT
Задает размер структуры в байтах. Перед передачей этой структуры в элемент управления расширенными изменениями задайте cbSize размер или CHARFORMAT2 структуры CHARFORMAT. Если cbSize равен размеру структуры CHARFORMAT, элемент управления использует только элементы CHARFORMAT.
dwMask
Тип: DWORD
Указывает части структуры CHARFORMAT2, содержащей допустимые сведения. Элемент dwMask может быть сочетанием значений из двух наборов битовых флагов. Один набор указывает на допустимые элементы структуры. Другой набор указывает допустимые атрибуты в элементе dwEffects.
Задайте следующие значения, чтобы указать допустимые атрибуты элемента dwEffects.
Задайте следующие значения, чтобы указать допустимые элементы структуры.
dwEffects
Тип: DWORD
Набор битовых флагов, указывающих эффекты символов. Некоторые флаги включены только для совместимости с интерфейсами текстовой объектной модели Майкрософт (TOM); Элемент управления расширенными изменениями сохраняет значение, но не использует его для отображения текста.
Этот элемент может быть сочетанием следующих значений.
Ценность | Значение |
---|---|
|
Символы — это все буквы с буквами. Значение не влияет на способ отображения текста элементом управления. Это значение применяется только к версиям, предшествующим microsoft Rich Edit 3.0. |
|
Цвет фона — это возвращаемое значение GetSysColor(COLOR_WINDOW). Если этот флаг задан, crBackColor член игнорируется. |
|
Цвет текста — это возвращаемое значение GetSysColor(COLOR_WINDOWTEXT). Если этот флаг задан, элемент crTextColor игнорируется. |
|
Символы полужирны. |
|
Символы отображаются с тенью, которая смещается на 3/4 точки или один пиксель, в зависимости от размера. |
|
Символы вытянуты. Значение не влияет на отображение текста элемента управления. |
|
Символы являются менее распространенными элементами скрипта. Шрифт, поддерживающий скрипт, должен проверять наличие глифов для таких символов. |
|
Шрифт выбирается элементом управления расширенными изменениями, так как активный шрифт не поддерживает символы. Этот процесс называется привязкой шрифта. |
|
Для Microsoft Rich Edit 3.0 и более поздних версий символы не отображаются. |
|
Символы отображаются как отпечатанные символы. Значение не влияет на отображение текста элемента управления. |
|
Символы курсивны. |
|
Элемент управления расширенными изменениями может отправлять коды уведомлений EN_LINK при получении сообщений мыши, а указатель мыши — текстом с помощью эффекта CFE_LINK. |
|
Символы являются частью понятной ссылки на имя. |
|
Символы находятся в математической зоне. |
|
Символы не участвуют в математическом построении. Например, при применении к /, объект /не будет использоваться для создания дроби. |
|
Символы отображаются как обычный текст в математической зоне. |
|
Символы отображаются как описанные символы. Значение не влияет на отображение текста элемента управления. |
|
Символы защищены; попытка изменить их приведет к EN_PROTECTED коду уведомлений. |
|
Символы помечены как измененные. |
|
Символы отображаются как теневые символы. Значение не влияет на отображение текста элемента управления. |
|
Символы находятся в небольших буквах. Значение не влияет на отображение текста элемента управления. |
|
Символы вычеркиваются. |
|
Символы являются подстроками. Значения CFE_SUPERSCRIPT и CFE_SUBSCRIPT являются взаимоисключающими. Для обоих значений элемент управления автоматически вычисляет смещение и меньший размер шрифта. Кроме того, можно использовать yHeight и yOffset членов для явного указания размера шрифта и смещения для подстрочных и надстрочных символов. |
|
Символы являются надстроочными. |
|
Символы подчеркнуты. |
yHeight
Тип: LONG
Задает высоту символа в витки (1/1440 дюйма или 1/20 точки принтера). Чтобы использовать этот элемент, задайте флаг CFM_SIZE в элементе dwMask.
yOffset
Тип: LONG
Смещение символов от базового плана в поворотах. Если значение этого элемента является положительным, символ является надстроочным символом; Если значение отрицательное, символ является подстрокой. Чтобы использовать этот элемент, задайте флаг CFM_OFFSET в элементе dwMask.
crTextColor
Тип: COLORREF
Цвет текста. Чтобы использовать этот элемент, задайте флаг CFM_COLOR в элементе dwMask. Этот элемент игнорируется, если указан эффект CFE_AUTOCOLOR символов. Чтобы создать COLORREF, используйте макрос RGB.
bCharSet
Тип: BYTE
Значение набора символов. Это может быть одно из значений, указанных для элемента lfCharSet структуры LOGFONT. Чтобы использовать этот элемент, задайте флаг CFM_CHARSET в элементе dwMask.
bPitchAndFamily
Тип: BYTE
Указывает семейство шрифтов и шаг. Этот элемент совпадает с
szFaceName[LF_FACESIZE]
Тип: TCHAR[LF_FACESIZE]
Массив символов, завершающий значение NULL, указывающий имя шрифта. Чтобы использовать этот элемент, задайте флаг CFM_FACE в элементе dwMask.
wWeight
Тип: WORD
Вес шрифта. Этот элемент совпадает с элементом lfWeight в структуре LOGFONT. Чтобы использовать этот элемент, задайте флаг CFM_WEIGHT в элементе dwMask.
sSpacing
Тип: SHORT
Горизонтальное пространство между буквами в поворотах. Это значение не влияет на текст, отображаемый элементом управления расширенными изменениями; он включен для обеспечения совместимости с интерфейсами Windows TOM. Чтобы использовать этот элемент, задайте флаг CFM_SPACING в элементе dwMask.
crBackColor
Тип: COLORREF
Цвет фона. Чтобы использовать этот элемент, задайте флаг CFM_BACKCOLOR в элементе dwMask. Этот элемент игнорируется, если указан эффект CFE_AUTOBACKCOLOR символов. Чтобы создать макрос, используйте макрос.
lcid
Тип: LCID
32-разрядный идентификатор языкового стандарта, содержащий идентификатор языка в нижнем слове, а также идентификатор сортировки и зарезервированное значение в верхнем слове. Этот элемент не влияет на текст, отображаемый элементом управления расширенными изменениями, но средства проверки орфографии и грамматики могут использовать его для решения проблем, зависящих от языка. Макрос можно использовать для создания значения LCID
dwReserved
Тип: DWORD
Скрытный; Значение должно быть равно нулю.
Тип: DWORD
Скрытный; Значение должно быть равно нулю.
dwCookie
Тип: DWORD
Файл cookie клиента. Этот элемент непрозрачный для элемента управления расширенными изменениями.
sStyle
Тип: SHORT
Дескриптор стиля символов. Это значение не влияет на текст, отображаемый элементом управления расширенными изменениями; он включен для совместимости с интерфейсами WindowsTOM. Чтобы использовать этот элемент, задайте флаг CFM_STYLE в элементе dwMask. Дополнительные сведения см. в документации по TOM.
wKerning
Тип: WORD
Значение размера шрифта, над которым должен быть символ (yHeight). Это значение не влияет на текст, отображаемый элементом управления расширенными изменениями; он включен для совместимости с интерфейсами TOM. Чтобы использовать этот элемент, задайте флаг CFM_KERNING в элементе dwMask.
bUnderlineType
Тип: BYTE
Указывает тип подчеркивания. Чтобы использовать этот элемент, задайте флаг CFM_UNDERLINETYPE в элементе dwMask. Этот элемент может быть одним из следующих значений.
Ценность | Значение |
---|---|
|
Структура сопоставляет битовое подчеркивание CHARFORMATс CHARFORMAT2(т. е. выполняется тип подчеркивания CHARFORMAT для этого текста). |
|
Для композиции IME подделывая выборка. |
|
Текст, подчеркнутый одной сплошной линией. |
|
Текст, подчеркнутый дефисом. |
|
Текст, подчеркнутый пунктиром и пунктирной линией. |
|
Текст, подчеркнутый дефисом и удвоенной пунктирной линией. |
|
Текст, подчеркнутый пунктирной линией. Для версий выше, чем Microsoft Rich Edit 3.0, текст отображается с твердым подчеркиванием. |
|
Текст, подчеркнутый двойной строкой. Элемент управления расширенными изменениями отображает текст с твердым подчеркиванием. |
|
Отображается как CFU_UNDERLINEWAVE. |
|
Отображается как CFU_UNDERLINE. |
|
Отображается как CFU_UNDERLINEWAVE. |
|
Отображается как CFU_UNDERLINEDASH. |
|
Нет подчеркивания. Это значение по умолчанию. |
|
Отображается как CFU_UNDERLINE. |
|
Отображается как CFU_UNDERLINEDASH. |
|
Отображается как CFU_UNDERLINEDASHDOT. |
|
Отображается как CFU_UNDERLINEDASHDOT. |
|
Отображается как CFU_UNDERLINEDOT. |
|
Отображается как CFU_UNDERLINEDASH. |
|
RichEdit 4.1 и более поздних: текст подчеркнут с волнистой линией. |
|
RichEdit 4.1 и более поздних версий: подчеркивание только слов. Элемент управления расширенными изменениями отображает текст с твердым подчеркиванием. |
bAnimation
Тип: BYTE
Тип анимации текста. Это значение не влияет на текст, отображаемый элементом управления расширенными изменениями; он включен для совместимости с интерфейсами TOM. Чтобы использовать этот элемент, задайте флаг CFM_ANIMATION в элементе dwMask.
bRevAuthor
Тип: BYTE
Индекс, определяющий автора, выполняющего редакцию. Элемент управления расширенными изменениями использует разные цвета текста для каждого из разных индексов автора. Чтобы использовать этот элемент, задайте флаг CFM_REVAUTHOR в элементе dwMask.
bUnderlineColor
Тип: BYTE
Цвет подчеркивания:
- UnderlineColor_Black = 0x00;
- UnderlineColor_Blue = 0x01;
- UnderlineColor_Aqua = 0x02;
- UnderlineColor_Lime = 0x03;
- UnderlineColor_Fuchsia = 0x04;
- UnderlineColor_Red = 0x05;
- UnderlineColor_Yellow = 0x06;
- UnderlineColor_White = 0x07;
- UnderlineColor_Navy = 0x08;
- UnderlineColor_Teal = 0x09;
- UnderlineColor_Green = 0x0A;
- UnderlineColor_Purple = 0x0B;
- UnderlineColor_Maroon = 0x0C;
- UnderlineColor_Olive = 0x0D;
- UnderlineColor_DkGray = 0x0E;
- UnderlineColor_LtGray = 0x0F;
Замечания
Чтобы отключить атрибут форматирования, задайте соответствующее значение в dwMask, но не задайте соответствующее значение в dwEffects. Например, чтобы отключить курсив, задайте CFM_ITALIC, но не устанавливайте CFE_ITALIC.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows Vista [только классические приложения] |
минимальный поддерживаемый сервер | Windows Server 2003 [только классические приложения] |
заголовка | richedit.h |