Азбука программирования в Win32 API


Азбука программирования в Win32 API - стр. 41


Мы прошли уже пять шагов алгоритма. Остались еще три шага - уда­ление совместимого контекста, объекта и контекста устройства - пусть чшатель сам определит, какие операторы программы их реализуют.

I (еужели мы добрались до конца нашего алгоритма? Мне он показался бесконечным! Давайте прежде чем рассматривать одиннадцатый аргу­мент упомянем об оставшихся «могучих Bit».

Функция BitBltQ тоже копирует bitmap с одного контекста на другой, но без масштабирования. Следовательно, ей не нужны девятый и десятый аргументы - ширина и высота отображаемой области - отображается все ю, что поместится в отведенную для этого область (светло-серый прямо­угольник на рис. 3).

Последняя из «могучих» - функция PatBltQ - просто закрашивает пря­моугольник на экране, используя для этого выбранную в контексте устройства кисть. Раз нет отображаемого объекта, то зачем нам сто контекст и координаты? Отбрасываем аргументы с шестого по десятый включительно и получаем список аргументов PatBltQ.

Наконец мы подошли к тому, чтобы уяснить, что же представляет со­бой одиннадцатый аргумент функции StretchBltQ. Сейчас мы поговорим о том, что же такое

КОДЫ РАСТРОВЫХ ОПЕРАЦИЙ

Выше уже было сказано, что одиннадцатый аргумент функции SiretchBltO - это код растровой операции. Другими словами, это код, который определяет, как при операции будут взаимодействовать биты, определяющие заливку и изображение совместимого контекста с изобра-

47

жением на действительном контексте. Комбинируются биты на основе логических операций над ними. По укоренившейся в книгах по програм­мированию для Windows традиции, эти операции записываются в обрат­ной польской нотации (не путать с венгерской, автор польской нотации не имеет к Microsoft ни малейшего отношения).

По той же традиции, биты, определяющие bitmap совместимого кон­текста, обозначают буквой S (source - источник, исходный), биты заливки - буквой Р (pattern - образец), а биты, на которых будет прорисовываться изображение - буквой D (destination - назначение, место назначения). Операции обозначаются следующим образом: а - побитовое И (AND), n -побитовое НЕТ (NO), о - побитовое ИЛИ (OR), x - побитовое ис­ключающее ИЛИ (XOR).




Начало  Назад  Вперед



Книжный магазин