Листинг 6.9.
Объявление переменных
var
hCurDC: HDC; //описатель контекста устройства,
//который мы создадим
bf: BLENDFUNCTION; //запись альфа-смешивания
hbmp: HBITMAP; //дескриптор точечного рисунка
bmi: BITMAPINFO; //заголовок точечного рисунка
pvBits: Pointer; //pointer to DIB section
ulWindowWidth, ulWindowHeight: ULONG; //ширина/высота
//клиентской области
ulBitmapWidth, ulBitmapHeight: ULONG; //ширина/высота
//точечного рисунка
rt: TRect; //используется для получения размера
//клиентской области
x,y: Integer; //циклические переменные
ubAlpha: UCHAR; //используется для создания
//прозрачного градиента
ubRed: UCHAR;
ubGreen: UCHAR;
ubBlue: UCHAR;
fAlphaFactor: Real;
r, g, b: UCHAR;
В самом начале процедуры осуществляем подготовку необходимых данных для альфа-смешивания. Данные содержат информацию о требуемых размерах, а также необходимые данные точечного рисунка. Рассмотрите листинг 6.10 с необходимыми комментариями.