Таблица 1. Некоторые текстовые функции Windows API

type TLogFont = record

  lfHeight: Integer; lfWidth: Integer; lfEscapment: Integer; lfOrientation: Integer; lfWeight: Integer; lfItalic: Byte; lfUnderline: Byte; lfStrikeOut: Byte; lfCharSet: Byte;  lfOutPrecision: Byte; lfClipPrecision: Byte; lfQuality: Byte; lfPitchAndFamily: Byte; lfFaceName: PChar;

end;

function CreateFont(Font: TLogFont): hFont;

Создает новый шрифт на основе данных в параметре Font (назначение полей структуры TLogFont см. в тексте после таблицы)

function DrawText(DC: hDC; pText: PChar; var Rect: TRect; Format: Wodr): Integer;

В прямоугольнике Rect выводит многострочный текст, на который указывает pText. Параметр Format используется для форматирования (см. ниже)

function ExtTextOut(DC: hDC; X, Y: Integer; Options: Integer; Rect: TRect; pText: PChar; Count: Integer; PX: PInteger): Bool;

Выводит текст с нестандартными межсимвольными расстояниями: X, Y — верхняя левая точка текста; Options — параметр, управляющий выводом (см. ниже); Rect — ограничивающий прямоугольник; pText — указатель на строку вывода; Count — количество выводимых символов; PX — указатель на массив целочисленных значений, определяющих межсимвольные расстояния: 1-й параметр — расстояние от 1-го до 2-го символа; 2-й параметр — расстояние от 2-го до 3-го символа и т.д.; если какой-то параметр равен 0, используется умалчиваемое межсимвольное расстояние

function GetBkColor(DC: hDC): TColor;

Возвращает цвет фона

function GetBkMode(DC: hDC): Integer;

Возвращает режим прорисовки фона: Opaque — фон прорисовывается заново при выводе текста; Transparent — фон не прорисовывается.

function GetTextAlign(DC: hDC): Integer;

Возвращает выравнивание текста

function GetTextCharacterExtra(DC: hDC): Integer;

Возвращает межсимвольное расстояние

function SetBkColor(DC: hDC; Color: TColor): TColor;

Устанавливает новый цвет фона и возвращает старый, если обращение успешно

function SetBkMode(DC: hDC; Mode: Integer): Integer;

Устанавливает новый режим прорисовки фона и возвращает старый, если операция успешна

function SetTextAlign(DC: hDC; Flags: Integer): Integer;

Устанавливает новое выравнивание текста и возвращает старое, если вызов успешен

function SetTextCharacterExtra(DC: hDC; CharExtra: Integer): Integer;

Устанавливает новое межсимвольное расстояние и возвращает старое, если вызов успешен

возврат