Шаг 732 - CDC::SelectClipRgn.

Автор Каев А. Г.
virtual int SelectClipRgn( CRgn* pRgn );
int SelectClipRgn( CRgn* pRgn, int nMode );

Возвращаемое значение
Тип области. Это может быть любое из следующих значений:

COMPLEXREGION 	Новая область отсечения имеет накладывающиеся рамки.
ERROR 		Контекст устройства ошибочен или область не допустим.
NULLREGION 	Новая область отсечения пустая.
SIMPLEREGION 	Новая область отсечения не имеет никаких рамок перекрывания.

Параметры
pRgn
Идентифицирует область, которая будет выбрана.
Для первой версии этой функции, если это значение NULL, вся клиентская область выбрана и выводится, а вывод отсекаеться к окну.
Для второй версии этой функции, этот дескриптор может быть NULL только, когда RGN_COPY режим определен.
nMode
Определяет операцию, которую нужно выполнить. Это должно быть одно из следующих значений:

RGN_AND 		Новая область отсечения получаеться пересечением текущей области отсечения и области, 
		идентифицированной pRgn.
RGN_COPY 		Новая область отсечения - копия области, идентифицированной pRgn. Эта возможность,  идентична 
		к первой версии SelectClipRgn. Если область, идентифицированная pRgn NULL, новая область отсечения 
		становится значением по умолчанию (пустая).
RGN_DIFF 		Новая область отсечения объединяет текущею область отсечения с теми областями, исключенными из области, 
		идентифицированной pRgn.
RGN_OR 		Новая область отсечения объединяет текущую область отсечения и область, идентифицированную pRgn.
RGN_XOR 		Новая область отсечения объединяет текущую область отсечения и область, идентифицированную pRgn, 
		но исключает любые области перекрывания. 

Замечания
Выбирает данную область как текущую область отсечения для контекста устройства. Только копия выбранной области используется. Область непосредственно может быть выбрана для любого числа других контекстов устройства, или она может быть удалена.
Функция принимает, что координаты для данной области определены в модулях устройства. Некоторые устройства принтера поддерживают текстовый вывод в более высокой разрешающей способности чем графический вывод, чтобы сохранить точность, необходимую, чтобы выразить текстовую метрику. Эти устройства сообщают модули устройства в более высокой разрешающей способности, то есть в текстовых модулях. Эти устройства затем масштабируют координаты для графики так, чтобы несколько модулей устройства отобразили к только 1 графическому модуль. Вы должны всегда вызывать функцию SelectClipRgn, использующую текстовые модули.
Прикладные программы, которые должны масштабировать графические объекты в GDI, могут использовать GETSCALINGFACTOR Escape команду принтера, чтобы определить коэффициент масштабирования. Этот коэффициент масштабирования воздействует на отсечение. Если область используется, чтобы отсечь графику, GDI делит координаты коэффициентом масштабирования. Если область используется, чтобы отсечь текст, GDI не делает никакую корректировку масштабирования. Коэффициент масштабирования 1 приводит к делению координат на 2, коэффициент масштабирования 2 приводит к делению координат на 4 и так далее.

Hosted by uCoz