Поделиться через


Структура DEVMODEA (wingdi.h)

Структура данных DEVMODE содержит сведения о инициализации и среде принтера или устройства отображения.

Синтаксис

typedef struct _devicemodeA {
  BYTE  dmDeviceName[CCHDEVICENAME];
  WORD  dmSpecVersion;
  WORD  dmDriverVersion;
  WORD  dmSize;
  WORD  dmDriverExtra;
  DWORD dmFields;
  union {
    struct {
      short dmOrientation;
      short dmPaperSize;
      short dmPaperLength;
      short dmPaperWidth;
      short dmScale;
      short dmCopies;
      short dmDefaultSource;
      short dmPrintQuality;
    } DUMMYSTRUCTNAME;
    POINTL dmPosition;
    struct {
      POINTL dmPosition;
      DWORD  dmDisplayOrientation;
      DWORD  dmDisplayFixedOutput;
    } DUMMYSTRUCTNAME2;
  } DUMMYUNIONNAME;
  short dmColor;
  short dmDuplex;
  short dmYResolution;
  short dmTTOption;
  short dmCollate;
  BYTE  dmFormName[CCHFORMNAME];
  WORD  dmLogPixels;
  DWORD dmBitsPerPel;
  DWORD dmPelsWidth;
  DWORD dmPelsHeight;
  union {
    DWORD dmDisplayFlags;
    DWORD dmNup;
  } DUMMYUNIONNAME2;
  DWORD dmDisplayFrequency;
  DWORD dmICMMethod;
  DWORD dmICMIntent;
  DWORD dmMediaType;
  DWORD dmDitherType;
  DWORD dmReserved1;
  DWORD dmReserved2;
  DWORD dmPanningWidth;
  DWORD dmPanningHeight;
} DEVMODEA, *PDEVMODEA, *NPDEVMODEA, *LPDEVMODEA;

Члены

dmDeviceName[CCHDEVICENAME]

Неоканированный массив символов, указывающий понятное имя принтера или дисплея; Например, "PCL/HP LaserJet" в случае PCL/HP LaserJet. Эта строка уникальна среди драйверов устройств. Обратите внимание, что это имя может быть усечено для размещения в массиве dmDeviceName.

dmSpecVersion

Номер версии спецификации данных инициализации, на которой основана структура. Чтобы убедиться, что для любой операционной системы используется правильная версия, используйте DM_SPECVERSION.

dmDriverVersion

Номер версии драйвера, назначенный разработчиком драйвера.

dmSize

Задает размер в байтах структуры DEVMODE, не включая данные, относящиеся к частному драйверу, которые могут следовать общедоступным членам структуры. Задайте этому элементу значение sizeof (DEVMODE), чтобы указать версию используемой структуры DEVMOD E.

dmDriverExtra

Содержит количество байтов данных частного драйвера, которые соответствуют этой структуре. Если драйвер устройства не использует сведения, относящиеся к устройству, установите для этого элемента значение нулю.

dmFields

Указывает, были ли инициализированы определенные члены структуры DEVMODE. Если элемент инициализирован, его соответствующий бит задан, в противном случае бит очищается. Драйвер поддерживает только те DEVMODE члены, которые подходят для принтера или технологии отображения.

Следующие значения определены и перечислены здесь с соответствующими элементами структуры.

Ценность Элемент структуры
DM_ORIENTATION dmOrientation
DM_PAPERSIZE dmPaperSize
DM_PAPERLENGTH dmPaperLength
DM_PAPERWIDTH dmPaperWidth
DM_SCALE dmScale
DM_COPIES dmCopies
DM_DEFAULTSOURCE dmDefaultSource
DM_PRINTQUALITY dmPrintQuality
DM_POSITION dmPosition
DM_DISPLAYORIENTATION dmDisplayOrientation
DM_DISPLAYFIXEDOUTPUT dmDisplayFixedOutput
DM_COLOR dmColor
DM_DUPLEX dmDuplex
DM_YRESOLUTION dmYResolution
DM_TTOPTION dmTTOption
DM_COLLATE dmCollate
DM_FORMNAME dmFormName
DM_LOGPIXELS dmLogPixels
DM_BITSPERPEL dmBitsPerPel
DM_PELSWIDTH dmPelsWidth
DM_PELSHEIGHT dmPelsHeight
DM_DISPLAYFLAGS dmDisplayFlags
DM_NUP dmNup
DM_DISPLAYFREQUENCY dmDisplayFrequency
DM_ICMMETHOD dmICMMethod
DM_ICMINTENT dmICMIntent
DM_MEDIATYPE dmMediaType
DM_DITHERTYPE dmDitherType
DM_PANNINGWIDTH dmPanningWidth
DM_PANNINGHEIGHT dmPanningHeight

DUMMYUNIONNAME

DUMMYUNIONNAME.DUMMYSTRUCTNAME

DUMMYUNIONNAME.DUMMYSTRUCTNAME.dmOrientation

Только для устройств принтера выбирает ориентацию бумаги. Этот элемент может быть либо DMORIENT_PORTRAIT (1), либо DMORIENT_LANDSCAPE (2).

DUMMYUNIONNAME.DUMMYSTRUCTNAME.dmPaperSize

Только для устройств принтера выбирает размер бумаги для печати. Этот элемент можно задать равным нулю, если длина и ширина бумаги задаются dmPaperLength и dmPaperWidth. В противном случае элемент dmPaperSize можно задать для конкретного устройства значение, превышающее или равное DMPAPER_USER или одному из следующих предопределенных значений.

Ценность Значение
DMPAPER_LETTER Буква, 8 1/2- на 11 дюймов
DMPAPER_LEGAL Юридический, 8 1/2- на 14-дюймов
DMPAPER_9X11 9- на 11-дюймовый лист
DMPAPER_10X11 10- на 11-дюймовом листе
DMPAPER_10X14 10- на 14-дюймовом листе
DMPAPER_15X11 15- на 11-дюймовый лист
DMPAPER_11X17 11- на 17-дюймовый лист
DMPAPER_12X11 12- на 11-дюймовый лист
DMPAPER_A2 Лист A2, 420 x 594-миллиметров
DMPAPER_A3 Лист A3, 297 - к 420 миллиметрам
DMPAPER_A3_EXTRA A3 Extra 322 x 445-миллиметров
DMPAPER_A3_EXTRA_TRAVERSE A3 Extra Transverse 322 x 445-миллиметров
DMPAPER_A3_ROTATED A3 повернутый лист, 420- к 297-миллиметрам
DMPAPER_A3_TRAVERSE A3 Transverse 297 x 420-миллиметров
DMPAPER_A4 A4 лист, 210 - к 297 миллиметрам
DMPAPER_A4_EXTRA Лист A4, 9,27 x 12,69 дюйма
DMPAPER_A4_PLUS A4 Plus 210 x 330-миллиметров
DMPAPER_A4_ROTATED A4 повернутый лист, 297 - на 210 миллиметров
DMPAPER_A4SMALL A4 небольшой лист, 210- к 297-миллиметрам
DMPAPER_A4_TRANSVERSE A4 Transverse 210 x 297 миллиметров
DMPAPER_A5 A5 лист, 148- к 210 миллиметрам
DMPAPER_A5_EXTRA A5 Extra 174 x 235-миллиметров
DMPAPER_A5_ROTATED A5 повернутый лист, 210- на 148-миллиметров
DMPAPER_A5_TRANSVERSE A5 Transverse 148 x 210-миллиметров
DMPAPER_A6 A6 лист, 105- к 148-миллиметровым
DMPAPER_A6_ROTATED A6 повернутый лист, 148- на 105-миллиметров
DMPAPER_A_PLUS SuperA/A4 227 x 356 -millimeters
DMPAPER_B4 Лист B4, 250-к 354-миллиметров
DMPAPER_B4_JIS_ROTATED B4 (JIS) повернутый лист, 364 - на 257 миллиметров
DMPAPER_B5 Лист B5, 182- к 257-миллиметровой бумаге
DMPAPER_B5_EXTRA B5 (ISO) Экстра 201 x 276-миллиметров
DMPAPER_B5_JIS_ROTATED B5 (JIS) повернутый лист, 257 на 182 миллиметров
DMPAPER_B6_JIS Лист B6 (JIS), 128- к 182-миллиметровым
DMPAPER_B6_JIS_ROTATED B6 (JIS) повернутый лист, 182 на 128 миллиметров
DMPAPER_B_PLUS SuperB/A3 305 x 487-миллиметров
DMPAPER_CSHEET Лист C, 17-к 22-дюймовым
DMPAPER_DBL_JAPANESE_POSTCARD Двойный японский открытка, 200- к 148-миллиметровым
DMPAPER_DBL_JAPANESE_POSTCARD_ROTATED Двойной японский почтовый знак вращался, 148- к 200-миллиметрам
DMPAPER_DSHEET Лист D, 22- на 34-дюймовые
DMPAPER_ENV_9 #9 Конверт, 3 7/8- на 8 7/8 дюйма
DMPAPER_ENV_10 #10 Конверт, 4 1/8- на 9 1/2 дюйма
DMPAPER_ENV_11 #11 Конверт, 4 1/2- на 10 3/8 дюйма
DMPAPER_ENV_12 #12 Конверт, 4 3/4- на 11 дюймов
DMPAPER_ENV_14 #14 Конверт, 5- к 11 1/2 дюйма
DMPAPER_ENV_C5 Конверт C5, 162- к 229 миллиметрам
DMPAPER_ENV_C3 Конверт C3, 324 - на 458 миллиметров
DMPAPER_ENV_C4 Конверт C4, 229- к 324-миллиметрам
DMPAPER_ENV_C6 Конверт C6, 114- на 162-миллиметров
DMPAPER_ENV_C65 Конверт C65, 114- к 229-миллиметрам
DMPAPER_ENV_B4 B4 Конверт, 250-к 353-миллиметров
DMPAPER_ENV_B5 B5 Конверт, 176 - к 250 миллиметрам
DMPAPER_ENV_B6 Конверт B6, 176 - к 125 миллиметрам
DMPAPER_ENV_DL Конверт DL, 110 к 220 миллиметрам
DMPAPER_ENV_INVITE Приглашение конверта 220 x 220 мм
DMPAPER_ENV_ITALY Конверт Италии, 110- к 230 миллиметрам
DMPAPER_ENV_MONARCH Конверт монарха, 3 7/8- на 7 1/2 дюйма
DMPAPER_ENV_PERSONAL 6 3/4 Конверт, 3 5/8- на 6 1/2 дюйма
DMPAPER_ESHEET Лист E, 34- на 44-дюймовые
DMPAPER_EXECUTIVE Исполнительный, 7 1/4- на 10 1/2 дюйма
DMPAPER_FANFOLD_US US Std Fanfold, 14 7/8- на 11-дюймов
DMPAPER_FANFOLD_STD_GERMAN Немецкий Std Fanfold, 8 1/2- на 12-дюймов
DMPAPER_FANFOLD_LGL_GERMAN Немецкий юридический вентилятор, 8 - на 13 дюймов
DMPAPER_FOLIO Folio, 8 1/2- на 13-дюймовой бумаге
DMPAPER_ISO_B4 B4 (ISO) 250- к 353-миллиметровой бумаге
DMPAPER_JAPANESE_POSTCARD Японский почтовый знак, 100- к 148-миллиметровым
DMPAPER_JAPANESE_POSTCARD_ROTATED Японский почтовый знак вращался, 148 - на 100 миллиметров
DMPAPER_JENV_CHOU3 Японский конверт Chou #3
DMPAPER_JENV_CHOU3_ROTATED Японский конверт Chou #3 вращался
DMPAPER_JENV_CHOU4 Японский конверт Chou #4
DMPAPER_JENV_CHOU4_ROTATED Японский конверт Chou #4 вращался
DMPAPER_JENV_KAKU2 Японский конверт Kaku #2
DMPAPER_JENV_KAKU2_ROTATED Японский конверт Kaku #2 вращался
DMPAPER_JENV_KAKU3 Японский конверт Kaku #3
DMPAPER_JENV_KAKU3_ROTATED Японский конверт Kaku #3 вращался
DMPAPER_JENV_YOU4 Японский конверт # 4
DMPAPER_JENV_YOU4_ROTATED Японский конверт, который вы 4 вращали
DMPAPER_LAST DMPAPER_PENV_10_ROTATED
DMPAPER_LEDGER Реестр, 17-к 11-дюймовым
DMPAPER_LEGAL_EXTRA Юридический дополнительный 9 1/2 x 15 дюймов.
DMPAPER_LETTER_EXTRA Буква Экстра 9 1/2 x 12 дюймов.
DMPAPER_LETTER_EXTRA_TRANSVERSE Буква экстра трансверсии 9 1/2 x 12 дюймов.
DMPAPER_LETTER_ROTATED Буква вращалась 11 на 8 1/2 дюйма
DMPAPER_LETTERSMALL Буква небольшая, 8 1/2- на 11-дюймовые
DMPAPER_LETTER_TRANSVERSE Буква Transverse 8 1/2 x 11-дюймов
DMPAPER_NOTE Обратите внимание, 8 1/2- на 11 дюймов
DMPAPER_P16K PRC 16K, 146 - к 215 миллиметрам
DMPAPER_P16K_ROTATED PRC 16K вращался, 215- на 146-миллиметров
DMPAPER_P32K PRC 32K, 97- к 151-миллиметрам
DMPAPER_P32K_ROTATED PRC 32K вращался, 151- на 97-миллиметров
DMPAPER_P32KBIG PRC 32K(Большой) 97- на 151-миллиметров
DMPAPER_P32KBIG_ROTATED PRC 32K (Большой) вращался, 151- на 97-миллиметров
DMPAPER_PENV_1 Конверт PRC No 1, 102 - на 165 миллиметров
DMPAPER_PENV_1_ROTATED Конверт PRC No 1 вращался, 165- на 102-миллиметров
DMPAPER_PENV_2 Конверт PRC No 2, 102- на 176-миллиметров
DMPAPER_PENV_2_ROTATED Конверт PRC No 2 вращался, 176- на 102-миллиметров
DMPAPER_PENV_3 Конверт PRC No 3, 125 - на 176 миллиметров
DMPAPER_PENV_3_ROTATED Конверт PRC No 3 вращался, 176 - на 125 миллиметров
DMPAPER_PENV_4 Конверт PRC No 4, 110- к 208-миллиметрам
DMPAPER_PENV_4_ROTATED Конверт PRC No 4 вращался, 208 - на 110 миллиметров
DMPAPER_PENV_5 Конверт PRC No 5, 110 - к 220 миллиметрам
DMPAPER_PENV_5_ROTATED Конверт PRC No 5 вращался, 220 на 110 миллиметров
DMPAPER_PENV_6 Конверт PRC No 6, 120 - к 230 миллиметрам
DMPAPER_PENV_6_ROTATED Конверт PRC No 6 вращался, 230 на 120 миллиметров
DMPAPER_PENV_7 Конверт PRC No 7, 160- к 230-миллиметровым
DMPAPER_PENV_7_ROTATED Конверт PRC No 7 вращался, 230 на 160 миллиметров
DMPAPER_PENV_8 Конверт PRC No 8, 120- к 309-миллиметрам
DMPAPER_PENV_8_ROTATED Конверт PRC No 8 вращался, 309 - на 120 миллиметров
DMPAPER_PENV_9 Конверт PRC No 9, 229- к 324-миллиметрам
DMPAPER_PENV_9_ROTATED Конверт PRC No 9 вращался, 324 - на 229 миллиметров
DMPAPER_PENV_10 Конверт PRC No 10, 324- на 458-миллиметров
DMPAPER_PENV_10_ROTATED Конверт PRC No 10 вращался, 458- на 324-миллиметров
DMPAPER_QUARTO Quarto, 215- к 275-миллиметровой бумаге
DMPAPER_STATEMENT Оператор, 5 1/2- на 8 1/2 дюйма
DMPAPER_TABLOID Таблоид, 11- к 17-дюймовым
DMPAPER_TABLOID_EXTRA Таблоид, 11,69 x 18-дюймов

DUMMYUNIONNAME.DUMMYSTRUCTNAME.dmPaperLength

Только для устройств принтера переопределяет длину бумаги, указанной элементом dmPaperSize, для пользовательских размеров бумаги или для устройств, таких как принтеры dot-matrix, которые могут печатать на странице произвольной длины. Эти значения, а также все остальные значения в этой структуре, указывающие физическую длину, находятся в десятых минутах миллиметра.

DUMMYUNIONNAME.DUMMYSTRUCTNAME.dmPaperWidth

Только для устройств принтера переопределяет ширину бумаги, указанной элементом dmPaperSize.

DUMMYUNIONNAME.DUMMYSTRUCTNAME.dmScale

Указывает фактор, с помощью которого нужно масштабировать печатные выходные данные. Видимый размер страницы масштабируется с физического размера страницы на коэффициент dmScale /100. Например, страница размера буквы с dmScale значение 50 будет содержать столько данных, сколько страницы 17 на 22 дюйма, так как выходный текст и графика будут половины их исходной высоты и ширины.

DUMMYUNIONNAME.DUMMYSTRUCTNAME.dmCopies

Выбирает количество скопированных копий, если устройство поддерживает несколько страниц.

DUMMYUNIONNAME.DUMMYSTRUCTNAME.dmDefaultSource

Указывает источник бумаги. Чтобы получить список доступных источников бумаги для принтера, используйте функцию DeviceCapabilities с флагом DC_BINS.

Этот элемент может быть одним из следующих значений, или это может быть значение для конкретного устройства больше или равно DMBIN_USER.

DUMMYUNIONNAME.DUMMYSTRUCTNAME.dmPrintQuality

Указывает разрешение принтера. Существует четыре стандартных независимых от устройства значения:

Если указано положительное значение, оно указывает количество точек на дюйм (DPI) и, следовательно, зависит от устройства.

DUMMYUNIONNAME.dmPosition

DUMMYUNIONNAME.DUMMYSTRUCTNAME2

DUMMYUNIONNAME.DUMMYSTRUCTNAME2.dmPosition

Только для устройств отображения POINTL структура, указывающая позиционные координаты устройства отображения в ссылке на область рабочего стола. Основное устройство отображения всегда находится в координатах (0,0).

DUMMYUNIONNAME.DUMMYSTRUCTNAME2.dmDisplayOrientation

Только для устройств отображения ориентация, в которой должны быть представлены изображения. Если DM_DISPLAYORIENTATION не задано, этот элемент должен быть равен нулю. Если задано DM_DISPLAYORIENTATION, этот элемент должен быть одним из следующих значений.

Ценность Значение
DMDO_DEFAULT Ориентация дисплея — это естественная ориентация устройства отображения; он должен использоваться в качестве значения по умолчанию.
DMDO_90 Ориентация отображения поворачивается на 90 градусов (измеряемая по часовой стрелке) от DMDO_DEFAULT.
DMDO_180 Ориентация отображения повернута на 180 градусов (измеряемая по часовой стрелке) от DMDO_DEFAULT.
DMDO_270 Ориентация отображения поворачивается на 270 градусов (измеряемая по часовой стрелке) от DMDO_DEFAULT.
 

Чтобы определить, является ли ориентация отображения книжной или альбомной, проверьте соотношение dmPelsWidth с dmPelsHeight.

Windows 2000: Не поддерживается.

DUMMYUNIONNAME.DUMMYSTRUCTNAME2.dmDisplayFixedOutput

Только для устройств с фиксированным разрешением, как отображается режим низкого разрешения на дисплее с более высоким разрешением. Например, если разрешение устройства отображения исправлено на 1024 x 768 пикселей, но его режим имеет значение 640 x 480 пикселей, устройство может отобразить изображение 640 x 480 где-то в интерьере экрана 1024 x 768 или растянуть изображение 640 x 480, чтобы заполнить большее пространство экрана. Если DM_DISPLAYFIXEDOUTPUT не задано, этот элемент должен быть равен нулю. Если задано DM_DISPLAYFIXEDOUTPUT, этот элемент должен быть одним из следующих значений.

Ценность Значение
DMDFO_DEFAULT Параметр по умолчанию дисплея.
DMDFO_CENTER Изображение с низким разрешением находится в большом пространстве экрана.
DMDFO_STRETCH Изображение с низким разрешением растянуто для заполнения большего пространства экрана.
 

Windows 2000: Не поддерживается.

dmColor

Переключается между цветом и монохромным на цветных принтерах. Ниже приведены возможные значения:

  • DMCOLOR_COLOR
  • DMCOLOR_MONOCHROME

dmDuplex

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

Ценность Значение
DMDUP_SIMPLEX Обычная (недуплексная) печать.
DMDUP_HORIZONTAL Привязка с коротким краем, т. е. длинным краем страницы является горизонтальная.
DMDUP_VERTICAL Привязка длинных краев, то есть длинная ребра страницы вертикали.

dmYResolution

Задает разрешение y (в точках на дюйм) принтера. Если принтер инициализирует этот элемент, элемент dmPrintQuality указывает разрешение x в точках на дюйм принтера.

dmTTOption

Указывает способ печати шрифтов TrueType. Этот элемент может быть одним из следующих значений.

Ценность Значение
DMTT_BITMAP Печатает шрифты TrueType в виде графики. Это действие по умолчанию для принтеров dot-matrix.
DMTT_DOWNLOAD Загружает шрифты TrueType в виде мягких шрифтов. Это действие по умолчанию для принтеров Hewlett-Packard, использующих язык управления принтерами (PCL).
DMTT_DOWNLOAD_OUTLINE Загружает шрифты TrueType в виде мягких шрифтов структуры.
DMTT_SUBDEV Заменяет шрифты устройств для шрифтов TrueType. Это действие по умолчанию для принтеров PostScript.

dmCollate

Указывает, следует ли использовать параметры сортировки при печати нескольких копий. (Этот элемент игнорируется, если драйвер принтера не указывает на поддержку сортировки, задав элемент dmFields значение DM_COLLATE.) Этот элемент может быть одним из следующих значений.

Ценность Значение
DMCOLLATE_TRUE Сортировка при печати нескольких копий.
DMCOLLATE_FALSE Не сопоставляйте параметры при печати нескольких копий.

dmFormName[CCHFORMNAME]

Массив символов с нуля, указывающий имя используемой формы; Например, "Letter" или "Legal". Полный набор имен можно получить с помощью функции EnumForms.

dmLogPixels

Количество пикселей на логический дюйм. Драйверы принтера не используют этот элемент.

dmBitsPerPel

Задает разрешение цветов в битах на пиксель устройства отображения (например, 4 бита для 16 цветов, 8 бит для 256 цветов или 16 битов для 6536 цветов). Драйверы отображения используют этот элемент, например, в функции ChangeDisplaySettings. Драйверы принтера не используют этот элемент.

dmPelsWidth

Задает ширину (в пикселях) видимой поверхности устройства. Драйверы отображения используют этот элемент, например, в функции ChangeDisplaySettings. Драйверы принтера не используют этот элемент.

dmPelsHeight

Задает высоту (в пикселях) видимой поверхности устройства. Драйверы отображения используют этот элемент, например, в функции ChangeDisplaySettings. Драйверы принтера не используют этот элемент.

DUMMYUNIONNAME2

DUMMYUNIONNAME2.dmDisplayFlags

Указывает режим отображения устройства. Этот элемент может быть сочетанием следующих значений.

Ценность Значение
DM_GRAYSCALE Указывает, что дисплей является некрасивным устройством. Если этот флаг не задан, предполагается цвет. Этот флаг больше недействителен.
DM_INTERLACED Указывает, что режим отображения переплетается. Если флаг не задан, предполагается, что он не задан.
 

Драйверы отображения используют этот элемент, например, в функции ChangeDisplaySettings. Драйверы принтера не используют этот элемент.

DUMMYUNIONNAME2.dmNup

Указывает, где выполняется NUP. Это может быть одно из следующих вариантов.

Ценность Значение
DMNUP_SYSTEM Средство spooler печати выполняет NUP.
DMNUP_ONEUP Приложение выполняет NUP.

dmDisplayFrequency

Указывает частоту в герц (циклы в секунду) устройства отображения в определенном режиме. Это значение также называется вертикальной частотой обновления устройства отображения. Отображение драйверов использует этот элемент. Он используется, например, в функции ChangeDisplaySettings. Драйверы принтера не используют этот элемент.

При вызове функции EnumDisplaySettings элемент dmDisplayFrequency может возвращать значение 0 или 1. Эти значения представляют частоту обновления оборудования по умолчанию. Эта частота по умолчанию обычно устанавливается переключателями на карточке дисплея или компьютерной материнской платы или программой конфигурации, которая не использует такие функции отображения, как ChangeDisplaySettings.

dmICMMethod

Указывает способ обработки ICM. Для приложения, отличного от ICM, этот элемент определяет, включен ли или отключен ICM. Для приложений ICM система проверяет этот элемент, чтобы определить, как обрабатывать поддержку ICM. Этот элемент может быть одним из следующих предопределенных значений, или заданным драйвером значением, превышающим или равным значению DMICMMETHOD_USER.

Ценность Значение
DMICMMETHOD_NONE Указывает, что ICM отключен.
DMICMMETHOD_SYSTEM Указывает, что ICM обрабатывается Windows.
DMICMMETHOD_DRIVER Указывает, что ICM обрабатывается драйвером устройства.
DMICMMETHOD_DEVICE Указывает, что ICM обрабатывается конечным устройством.
 

Драйвер принтера должен предоставить пользовательский интерфейс для настройки этого элемента. Большинство драйверов принтера поддерживают только значение DMICMMETHOD_SYSTEM или DMICMMETHOD_NONE. Драйверы для принтеров PostScript поддерживают все значения.

dmICMIntent

Указывает, какой метод сопоставления цветов или намерение должен использоваться по умолчанию. Этот элемент предназначен в основном для приложений, отличных от ICM. Приложения ICM могут устанавливать намерения с помощью функций ICM. Этот элемент может быть одним из следующих предопределенных значений, или определенное драйвером значение больше или равно значению DMICM_USER.

Ценность Значение
DMICM_ABS_COLORIMETRIC Сопоставление цветов должно оптимизироваться, чтобы соответствовать точному цвету, запрошенного без сопоставления белых точек. Это значение наиболее подходит для использования с проверкой правописания.
DMICM_COLORIMETRIC Сопоставление цветов должно оптимизироваться в соответствии с точным запрошенным цветом. Это значение наиболее подходит для использования с бизнес-логотипами или другими изображениями, когда нужно точное соответствие цвета.
DMICM_CONTRAST Сопоставление цветов должно оптимизироваться для контрастности цвета. Это значение является наиболее подходящим выбором для сканированных или фотографических изображений при необходимости дитерирования.
DMICM_SATURATE Сопоставление цветов должно оптимизироваться для насыщенности цвета. Это значение является наиболее подходящим вариантом для бизнес-графов, когда дитерирование не нужно.

dmMediaType

Указывает тип печатных носителей. Элемент может быть одним из следующих предопределенных значений, или определяемое драйвером значение больше или равно значению DMMEDIA_USER.

Ценность Значение
DMMEDIA_STANDARD Обычная бумага.
DMMEDIA_GLOSSY Глянцевая бумага.
DMMEDIA_TRANSPARENCY Прозрачный фильм.
 

Чтобы получить список доступных типов носителей для принтера, используйте функцию deviceCapabilities с флагом DC_MEDIATYPES.

dmDitherType

Указывает, как выполняется дитерирование. Элемент может быть одним из следующих предопределенных значений, или определяемое драйвером значение больше или равно значению DMDITHER_USER.

Ценность Значение
DMDITHER_NONE Нет головокружения.
DMDITHER_COARSE Дитеринг с грубой кистью.
DMDITHER_FINE Дитеринг с тонкой кистью.
DMDITHER_LINEART Дитерирование линий, специальный метод дитеринга, который создает четко определенные границы между черным, белым и серым масштабированием. Это не подходит для изображений, которые включают непрерывные выпуски в интенсивности и оттенок, такие как сканированные фотографии.
DMDITHER_GRAYSCALE Устройство выполняет серое масштабирование.

dmReserved1

Не используется; должно быть равно нулю.

dmReserved2

Не используется; должно быть равно нулю.

dmPanningWidth

Этот элемент должен быть равен нулю.

dmPanningHeight

Этот элемент должен быть равен нулю.

Замечания

Частные данные драйвера устройства соответствуют общедоступной части структуры DEVMODE. Размер общедоступных данных может отличаться для разных версий структуры. Элемент dmSize указывает количество байтов общедоступных данных, а элемент dmDriverExtra указывает количество байт частных данных.

Заметка

Заголовок wingdi.h определяет DEVMODE как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 2000 Профессиональный [только классические приложения]
минимальный поддерживаемый сервер Windows 2000 Server [только классические приложения]
заголовка wingdi.h (включая Windows.h)

См. также

AdvancedDocumentProperties

ChangeDisplaySettings

CreateDC

CreateIC

DeviceCapabilities

DocumentProperties

EnumDisplaySettings

OpenPrinter

структуры API печати

печати