Текущий раздел:

Описания RDS

Приложения

Приложение А. Функции, константы и структуры RDS

А.4. Структуры RDS

А.4.15. RDS_SERVFONTPARAMS – описание шрифта

# Приложения

## Приложение А. Функции, константы и структуры RDS

### А.4. Структуры RDS

#### А.4.15. RDS_SERVFONTPARAMS – описание шрифта

Структура RDS_SERVFONTPARAMS используется в некоторых сервисных функциях для описания параметров шрифта при программном рисовании внешнего вида блока. Пример ее применения приведен в §2.10.1 руководства программиста.

      #define RDS_SERVFONTPARAMSNAMESIZE 256         // Размер массива имени
      typedef struct {
        DWORD servSize;                              // Размер этой структуры в байтах
        char NameA[RDS_SERVFONTPARAMSNAMESIZE];      // Имя шрифта (UTF8)
        wchar_t NameW[RDS_SERVFONTPARAMSNAMESIZE];   // Имя шрифта (UTF16)
        //RDSXCHAR Name[RDS_SERVFONTPARAMSNAMESIZE]; // Имя шрифта (поле-псевдоним)
        RDSINT32 CharSet;                            // Набор символов
        RDSINT32 Height;                             // Высота (в точках экрана)
        RDSINT32 Size;                               // Высота (в типографских точках)
        BOOL SizePriority;                           // TRUE - использовать Size,
                                                     // FALSE - использовать Height
        COLORREF Color;                              // Цвет шрифта
        BOOL Bold;                                   // Жирный
        BOOL Italic;                                 // Курсив
        BOOL Underline;                              // Подчеркнутый
        BOOL StrikeOut;                              // Зачеркнутый
      } RDS_SERVFONTPARAMS;
      typedef RDS_SERVFONTPARAMS *RDS_PSERVFONTPARAMS;

Поля структуры

servSize(DWORD)
  Размер этой структуры в байтах. Перед вызовом любой сервисной функции, работающей с этой структурой, полю servSize необходимо присвоить значение sizeof(RDS_SERVFONTPARAMS).
NameA(char[…]),NameW(wchar_t[…]),Name(RDSXCHAR[…])
  Массив, в котором находится строка названия шрифта. Размер этого массива задан define-константой RDS_SERVFONTPARAMSNAMESIZE, равной 256 – таким образом, длина строки названия шрифта не может превышать 255 символов.
CharSet(RDSINT32)
  Стандартная константа Windows API, определяющая набор символов (язык) шрифта. Чаще всего употребляются следующие константы:

  ANSI_CHARSET | Шрифт ANSI.
  DEFAULT_CHARSET | Символы определяется названием и размером шрифта.
  RUSSIAN_CHARSET | Русские символы.
  SYMBOL_CHARSET | Различные символические обозначения.

  Полный список возможных наборов символов приведен в описании Windows API.
Height(RDSINT32)
  Высота шрифта в точках экрана.
Size(RDSINT32)
  Высота шрифта в типографских точках (стандартная единица задания размера шрифта во всех диалогах Windows).
SizePriority(BOOL)
  Это поле используется только в том случае, когда структура RDS_SERVFONTPARAMS используется для установки, а не для получения параметров шрифта. Если в нем будет записано значение TRUE, высота шрифта будет считана из поля Size и будет задана в типографских точках. Если же в нем будет записано FALSE, высота шрифта будет считана из поля Height и будет задана в точках экрана. Если структура используется для получения параметров, в ней всегда заполняются и поле Height, и поле Size, и работающая со структурой модель блока может испольовать значения обоих этих полей.
Color(COLORREF)
  Цвет шрифта.
Bold(BOOL)
  TRUE, если шрифт имеет полужирное начертание.
Italic(BOOL)
  TRUE, если шрифт имеет курсивное начертание.
Underline(BOOL)
  TRUE, если включено подчеркивание.
StrikeOut(BOOL)
  TRUE, если шрифт перечеркнут.

См. также

rdsStructToFontText, rdsFontTextToStruct, rdsXGSetFontByParStr.