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]

프린터 또는 디스플레이의 "친숙한" 이름을 지정하는 0으로 끝나는 문자 배열입니다. 예를 들어 PCL/HP LaserJet의 경우 "PCL/HP LaserJet"입니다. 이 문자열은 디바이스 드라이버에서 고유합니다. 이 이름은 dmDeviceName 배열에 맞게 잘릴 수 있습니다.

dmSpecVersion

구조체의 기반이 되는 초기화 데이터 사양의 버전 번호입니다. 올바른 버전이 모든 운영 체제에 사용되도록 하려면 DM_SPECVERSION 사용합니다.

dmDriverVersion

드라이버 개발자가 할당한 드라이버 버전 번호입니다.

dmSize

구조체의 공용 멤버를 따를 수 있는 프라이빗 드라이버 관련 데이터를 포함하지 않고 DEVMODE 구조체의 크기(바이트)를 지정합니다. 사용 중인 DEVMODE 구조체의 버전을 나타내려면 이 멤버 sizeof (DEVMODE) 를 로 설정합니다.

dmDriverExtra

이 구조를 따르는 프라이빗 드라이버 데이터의 바이트 수를 포함합니다. 디바이스 드라이버가 디바이스 관련 정보를 사용하지 않는 경우 이 멤버를 0으로 설정합니다.

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 멤버에 의해 설정된 경우 이 멤버를 0 으로 설정할 수 있습니다. 그렇지 않으면 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 594mm
DMPAPER_A3 A3 시트, 297 - 420mm
DMPAPER_A3_EXTRA A3 추가 322 x 445mm
DMPAPER_A3_EXTRA_TRAVERSE A3 추가 횡적 322 x 445mm
DMPAPER_A3_ROTATED A3 회전 시트, 420- 297mm
DMPAPER_A3_TRAVERSE A3 횡적 297 x 420mm
DMPAPER_A4 A4 시트, 210 - 297mm
DMPAPER_A4_EXTRA A4 시트, 9.27 x 12.69 인치
DMPAPER_A4_PLUS A4 Plus 210 x 330mm
DMPAPER_A4_ROTATED A4 회전 시트, 297- 210mm
DMPAPER_A4SMALL A4 작은 시트, 210 - 297mm
DMPAPER_A4_TRANSVERSE A4 횡적 210 x 297밀리미터
DMPAPER_A5 A5 시트, 148 - 210mm
DMPAPER_A5_EXTRA A5 추가 174 x 235mm
DMPAPER_A5_ROTATED A5 회전 시트, 210- 148mm
DMPAPER_A5_TRANSVERSE A5 횡적 148 x 210mm
DMPAPER_A6 A6시트, 105- 148밀리미터
DMPAPER_A6_ROTATED A6 회전 시트, 148- 105mm
DMPAPER_A_PLUS SuperA/A4 227 x 356 -밀리미터
DMPAPER_B4 B4 시트, 250 - 354mm
DMPAPER_B4_JIS_ROTATED B4(JIS) 회전 시트, 364- 257mm
DMPAPER_B5 B5 용지, 182- 257mm 용지
DMPAPER_B5_EXTRA B5(ISO) 추가 201 x 276mm
DMPAPER_B5_JIS_ROTATED B5(JIS) 회전 시트, 257- 182mm
DMPAPER_B6_JIS B6(JIS) 시트, 128- 182mm
DMPAPER_B6_JIS_ROTATED B6(JIS) 회전 시트, 182- 128mm
DMPAPER_B_PLUS SuperB/A3 305 x 487mm
DMPAPER_CSHEET C 시트, 17- 22인치
DMPAPER_DBL_JAPANESE_POSTCARD 이중 일본어 엽서, 200 - 148mm
DMPAPER_DBL_JAPANESE_POSTCARD_ROTATED 이중 일본어 엽서 회전, 148 - 200mm
DMPAPER_DSHEET D 시트, 22- 34인치
DMPAPER_ENV_9 #9 봉투, 3 7/8- x 8 7/8 인치
DMPAPER_ENV_10 #10 봉투, 4 1/8- x 9 1/2 인치
DMPAPER_ENV_11 #11 봉투, 4 1/2- x 10 3/8 인치
DMPAPER_ENV_12 #12 봉투, 4 3/4- x 11인치
DMPAPER_ENV_14 #14 봉투, 5 x 11 1/2 인치
DMPAPER_ENV_C5 C5 봉투, 162 - 229mm
DMPAPER_ENV_C3 C3 봉투, 324- x 458mm
DMPAPER_ENV_C4 C4 봉투, 229- x 324mm
DMPAPER_ENV_C6 C6 봉투, 114 - 162mm
DMPAPER_ENV_C65 C65 봉투, 114 - 229mm
DMPAPER_ENV_B4 B4 봉투, 250- x 353mm
DMPAPER_ENV_B5 B5 봉투, 176 - 250mm
DMPAPER_ENV_B6 B6 봉투, 176 - 125mm
DMPAPER_ENV_DL DL 봉투, 110- x 220mm
DMPAPER_ENV_INVITE 봉투 초대 220 x 220mm
DMPAPER_ENV_ITALY 이탈리아 봉투, 110 - 230mm
DMPAPER_ENV_MONARCH 군주 봉투, 3 7/8- 7 1/2 인치
DMPAPER_ENV_PERSONAL 6 3/4 봉투, 3 5/8- x 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 독일 세인트 판폴드, 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 일본어 봉투 추 #3
DMPAPER_JENV_CHOU3_ROTATED 일본어 봉투 추 #3 회전
DMPAPER_JENV_CHOU4 일본어 봉투 추 #4
DMPAPER_JENV_CHOU4_ROTATED 일본어 봉투 추 #4 회전
DMPAPER_JENV_KAKU2 일본어 봉투 카쿠 #2
DMPAPER_JENV_KAKU2_ROTATED 일본어 봉투 카쿠 #2 회전
DMPAPER_JENV_KAKU3 일본어 봉투 카쿠 #3
DMPAPER_JENV_KAKU3_ROTATED 일본어 봉투 카쿠 #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 Letter Extra 9 1/2 x 12인치.
DMPAPER_LETTER_EXTRA_TRANSVERSE Letter Extra Transverse 9 1/2 x 12인치.
DMPAPER_LETTER_ROTATED 문자 회전 11 by 8 1/2 인치
DMPAPER_LETTERSMALL Letter Small, 8 1/2- by 11-inches
DMPAPER_LETTER_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(Big) 97- by 151mm
DMPAPER_P32KBIG_ROTATED PRC 32K(Big) 회전, 151- 97밀리미터
DMPAPER_PENV_1 PRC 봉투 #1, 102- 165밀리미터
DMPAPER_PENV_1_ROTATED PRC 봉투 #1 회전, 165- 102밀리미터
DMPAPER_PENV_2 PRC 봉투 #2, 102 - 176밀리미터
DMPAPER_PENV_2_ROTATED PRC 봉투 #2 회전, 176- 102밀리미터
DMPAPER_PENV_3 PRC 봉투 #3, 125 - 176밀리미터
DMPAPER_PENV_3_ROTATED PRC 봉투 #3 회전, 176- 125밀리미터
DMPAPER_PENV_4 PRC 봉투 #4, 110- 208밀리미터
DMPAPER_PENV_4_ROTATED PRC 봉투 #4 회전, 208- 110밀리미터
DMPAPER_PENV_5 PRC 봉투 #5, 110- x 220밀리미터
DMPAPER_PENV_5_ROTATED PRC 봉투 #5 회전, 220- x 110밀리미터
DMPAPER_PENV_6 PRC 봉투 #6, 120- x 230밀리미터
DMPAPER_PENV_6_ROTATED PRC 봉투 #6 회전, 230- x 120밀리미터
DMPAPER_PENV_7 PRC 봉투 #7, 160- x 230밀리미터
DMPAPER_PENV_7_ROTATED PRC 봉투 #7 회전, 230- x 160밀리미터
DMPAPER_PENV_8 PRC 봉투 #8, 120- x 309mm
DMPAPER_PENV_8_ROTATED PRC 봉투 #8 회전, 309 - 120mm
DMPAPER_PENV_9 PRC 봉투 #9, 229- x 324mm
DMPAPER_PENV_9_ROTATED PRC 봉투 #9 회전, 324- x 229mm
DMPAPER_PENV_10 PRC 봉투 #10, 324- x 458mm
DMPAPER_PENV_10_ROTATED PRC 봉투 #10 회전, 458- x 324mm
DMPAPER_QUARTO 쿼토, 215- 275mm 용지
DMPAPER_STATEMENT 문, 5 1/2 - 8 1/2 인치
DMPAPER_TABLOID 타블로이드, 11- 17인치
DMPAPER_TABLOID_EXTRA 타블로이드, 11.69 x 18인치

DUMMYUNIONNAME.DUMMYSTRUCTNAME.dmPaperLength

프린터 디바이스의 경우 사용자 지정 용지 크기 또는 임의 길이 페이지에 인쇄할 수 있는 도트 매트릭스 프린터와 같은 디바이스에 대해 dmPaperSize 멤버가 지정한 용지의 길이를 재정의합니다. 이러한 값은 실제 길이를 지정하는 이 구조체의 다른 모든 값과 함께 1/10mm입니다.

DUMMYUNIONNAME.DUMMYSTRUCTNAME.dmPaperWidth

프린터 디바이스의 경우에만 dmPaperSize 멤버가 지정한 용지의 너비를 재정의합니다.

DUMMYUNIONNAME.DUMMYSTRUCTNAME.dmScale

인쇄된 출력의 크기를 조정할 요소를 지정합니다. 명백한 페이지 크기는 실제 페이지 크기에서 dmScale /100의 요소로 크기가 조정됩니다. 예를 들어 dmScale 값이 50인 문자 크기의 페이지에는 출력 텍스트와 그래픽이 원래 높이와 너비의 절반이므로 17x22인치의 페이지만큼 많은 데이터가 포함됩니다.

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 설정되지 않은 경우 이 멤버는 0이어야 합니다. DM_DISPLAYORIENTATION 설정된 경우 이 멤버는 다음 값 중 하나여야 합니다.

의미
DMDO_DEFAULT 디스플레이 방향은 디스플레이 디바이스의 자연 방향입니다. 기본값으로 사용해야 합니다.
DMDO_90 디스플레이 방향은 DMDO_DEFAULT 90도(시계 방향으로 측정됨)로 회전됩니다.
DMDO_180 디스플레이 방향은 DMDO_DEFAULT 180도(시계 방향으로 측정됨)로 회전됩니다.
DMDO_270 디스플레이 방향은 DMDO_DEFAULT 270도(시계 방향으로 측정됨)로 회전됩니다.
 

디스플레이 방향이 세로 방향인지 가로 방향인지 확인하려면 dmPelsWidthdmPelsHeight의 비율을 검사.

Windows 2000: 지원되지 않습니다.

DUMMYUNIONNAME.DUMMYSTRUCTNAME2.dmDisplayFixedOutput

고정 해상도 디스플레이 디바이스의 경우에만 디스플레이가 고해상도 디스플레이에 저해상도 모드를 표시하는 방법입니다. 예를 들어 디스플레이 장치의 해상도가 1024 x 768픽셀로 고정되었지만 해당 모드가 640 x 480픽셀로 설정된 경우 디바이스는 1024 x 768 화면 공간의 내부 어딘가에 640 x 480 이미지를 표시하거나 640 x 480 이미지를 확장하여 더 큰 화면 공간을 채울 수 있습니다. DM_DISPLAYFIXEDOUTPUT 설정되지 않은 경우 이 멤버는 0이어야 합니다. 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 글꼴을 그래픽으로 인쇄합니다. 이는 점 행렬 프린터의 기본 작업입니다.
DMTT_DOWNLOAD TrueType 글꼴을 소프트 글꼴로 다운로드합니다. PCL(프린터 제어 언어)을 사용하는 Hewlett-Packard 프린터의 기본 작업입니다.
DMTT_DOWNLOAD_OUTLINE TrueType 글꼴을 개요 소프트 글꼴로 다운로드합니다.
DMTT_SUBDEV 디바이스 글꼴을 TrueType 글꼴로 대체합니다. PostScript 프린터의 기본 작업입니다.

dmCollate

여러 복사본을 인쇄할 때 데이터 정렬을 사용할지 여부를 지정합니다. (프린터 드라이버가 dmFields 멤버를 DM_COLLATE 설정하여 데이터 정렬에 대한 지원을 나타내지 않는 한 이 멤버는 무시됩니다.) 이 멤버는 다음 값 중 하나일 수 있습니다.

의미
DMCOLLATE_TRUE 여러 복사본을 인쇄할 때 데이터 정렬
DMCOLLATE_FALSE 여러 복사본을 인쇄할 때는 데이터 정렬하지 마세요.

dmFormName[CCHFORMNAME]

사용할 폼의 이름을 지정하는 0으로 끝나는 문자 배열입니다. 예를 들어 "Letter" 또는 "Legal"입니다. EnumForms 함수를 사용하여 전체 이름 집합을 검색할 수 있습니다.

dmLogPixels

논리 인치당 픽셀 수입니다. 프린터 드라이버는 이 멤버를 사용하지 않습니다.

dmBitsPerPel

디스플레이 디바이스의 색상 해상도를 픽셀당 비트 단위로 지정합니다(예: 16가지 색의 경우 4비트, 256색의 경우 8비트 또는 65,536색의 경우 16비트). 예를 들어 표시 드라이버는 ChangeDisplaySettings 함수에서 이 멤버를 사용합니다. 프린터 드라이버는 이 멤버를 사용하지 않습니다.

dmPelsWidth

표시되는 디바이스 표면의 너비를 픽셀 단위로 지정합니다. 예를 들어 표시 드라이버는 ChangeDisplaySettings 함수에서 이 멤버를 사용합니다. 프린터 드라이버는 이 멤버를 사용하지 않습니다.

dmPelsHeight

표시되는 디바이스 표면의 높이를 픽셀 단위로 지정합니다. 예를 들어 표시 드라이버는 ChangeDisplaySettings 함수에서 이 멤버를 사용합니다. 프린터 드라이버는 이 멤버를 사용하지 않습니다.

DUMMYUNIONNAME2

DUMMYUNIONNAME2.dmDisplayFlags

디바이스의 디스플레이 모드를 지정합니다. 이 멤버는 다음 값의 조합일 수 있습니다.

의미
DM_GRAYSCALE 디스플레이가 비색 디바이스임을 지정합니다. 이 플래그가 설정되지 않은 경우 색이 가정됩니다. 이 플래그는 더 이상 유효하지 않습니다.
DM_INTERLACED 표시 모드가 인터레이스되도록 지정합니다. 플래그가 설정되지 않은 경우 비대화되지 않은 것으로 간주됩니다.
 

예를 들어 표시 드라이버는 ChangeDisplaySettings 함수에서 이 멤버를 사용합니다. 프린터 드라이버는 이 멤버를 사용하지 않습니다.

DUMMYUNIONNAME2.dmNup

NUP가 수행되는 위치를 지정합니다. 다음 중 하나일 수 있습니다.

의미
DMNUP_SYSTEM 인쇄 스풀러는 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

사용되지 않음, 0이어야 합니다.

dmReserved2

사용되지 않음, 0이어야 합니다.

dmPanningWidth

이 멤버는 0이어야 합니다.

dmPanningHeight

이 멤버는 0이어야 합니다.

설명

디바이스 드라이버의 프라이빗 데이터는 DEVMODE 구조의 공용 부분을 따릅니다. 공용 데이터의 크기는 구조의 다양한 버전에 따라 달라질 수 있습니다. dmSize 멤버는 공용 데이터의 바이트 수를 지정하고 dmDriverExtra 멤버는 프라이빗 데이터의 바이트 수를 지정합니다.

참고

wingdi.h 헤더는 DEVMODE를 유니코드 전처리기 상수의 정의에 따라 이 함수의 ANSI 또는 유니코드 버전을 자동으로 선택하는 별칭으로 정의합니다. 인코딩 중립 별칭을 인코딩 중립이 아닌 코드와 혼합하면 컴파일 또는 런타임 오류가 발생하는 불일치가 발생할 수 있습니다. 자세한 내용은 함수 프로토타입에 대한 규칙을 참조하세요.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
머리글 wingdi.h(Windows.h 포함)

추가 정보

AdvancedDocumentProperties

ChangeDisplaySettings

CreateDC

CreateIC

DeviceCapabilities

DocumentProperties

EnumDisplaySettings

OpenPrinter

스풀러 API 구조 인쇄

인쇄