Функция SetMapMode

Функция SetMapMode устанавливает режим отображения указанного контекста устройства. Режим отображения определяет единицу измерения, используемые для преобразования единиц измерения пространства страницы в единицы измерения пространства устройства, а также определяет ориентацию осей X и Y устройства.

Синтаксис

int SetMapMode(
  HDC hdc,        // дескриптор контекста устройства
  int fnMapMode   // новый режим отображения
);

Параметры

hdc

[in] Дескриптор контекста устройства.

fnMapMode

[in] Определяет новый режим отображения. Этот параметр может быть одним из нижеследующих значений.

Значение Описание
MM_ANISOTROPIC Логические единицы измерения отображаются произвольными единицами измерения с произвольно масштабируемыми осями. Используйте функции SetWindowExtEx и SetViewportExtEx, чтобы определить  эти единицы измерения, ориентацию и масштаб.
MM_HIENGLISH Каждая логическая единица измерения отображается как 0.001 дюйма. Положительные значения x идут вправо; положительные значения y - вверх.
MM_HIMETRIC Каждая логическая единица измерения отображается как 0.01 миллиметра. Положительные значения x идут вправо; положительные значения y - вверх.
MM_ISOTROPIC Логические единицы измерения отображаются произвольными единицами с одинаково масштабируемыми осями; то есть, одна единица по оси X равна одной единице по оси Y. Используйте функции SetWindowExtEx и SetViewportExtEx, чтобы определить эти единицы и ориентацию осей. Интерфейс графического устройства (GDI) вносит поправки по мере необходимости, чтобы гарантировать, что единицы измерения по x и y остаются с тем же самым размером. (Когда устанавливаются размеры окна, область просмотра будет выравнивается так, чтобы сохранить единицы измерения изотропическими).
MM_LOENGLISH Каждая логическая единица измерения отображается как 0.01 дюйма. Положительные значения x идут вправо; положительные значения y - вверх.
MM_LOMETRIC Каждая логическая единица измерения отображается как 0.1 миллиметра. Положительные значения x идут вправо; положительные значения y - вверх.
MM_TEXT Каждая логическая единица измерения отображается как один пиксель устройства. Положительные значения x идут вправо; положительные значения y - вниз.
MM_TWIPS Каждая логическая единица измерения отображается как 1/20 полиграфического пункта (1/1440 дюйма, также называемого "твип" (twip)). Положительные значения x идут вправо; положительные значения y - вверх.

Возвращаемые значения

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

Если функция завершается ошибкой, возвращаемое значение - нуль.

Windows NT/2000/XP: Чтобы получить дополнительную информацию об ошибке, вызовите GetLastError.

Замечания

Режим MM_TEXT дает возможность приложениям работать с пикселями устройства, размер которых изменяется от устройства к устройству.

Режимы MM_HIENGLISH, MM_HIMETRIC, MM_LOENGLISH, MM_LOMETRIC и MM_TWIPS полезны для приложений, рисующих в физически значимых единицах измерения (таких как дюймы или миллиметры).

Режим MM_ISOTROPIC гарантирует 1:1 формат изображения.

Режим MM_ANISOTROPIC дает возможность координатам x и координатам y настраиваться независимо.

Демонстрационный код

Пример смотри в статье Использование координатных пространств и преобразований.

Смотри также

Обзор Координатные пространства и преобразования, Функции, используемые координатными пространствами и преобразованиями, GetMapMode, SetViewportExtEx, SetViewportOrgEx, SetWindowExtEx, SetWindowOrgEx 

Размещение и совместимость SetMapMode  

К Windows XP Да 
л Windows 2000 Professional Да
и Windows NT Workstation Да версии 3.1 и старше
е Windows Me Да
н Windows 98 Да
т Windows 95 Да
 
С Windows Server 2003 Нет
е Windows 2000 Server Да
р Windows NT Server Да
в    
е    
р    
Используемая библиотека Gdi32.lib
Используемая DLL -
 Заголовочный файл  
- объявлено в Wingdi.h
 - включено в Windows.h
 Unicode Нет
 Замечания по платформе Не имеется

 

Назад в оглавление
На главную страницу
В оглавление справки

Hosted by uCoz