勇芳软件工作室.汉化:  Printing > GDI Print API > GDI Print API Structures >

DEVMODE

Previous pageReturn to chapter overviewNext page

描述

 

数据结构DEVMODE包含有关打印机或显示设备的初始化和环境的信息。

 

C++ 语法

 

typedef struct _devicemode {

BCHAR 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;

} ;

struct {

POINTL dmPosition;

DWORD dmDisplayOrientation;

DWORD dmDisplayFixedOutput;

} ;

} ;

short dmColor;

short dmDuplex;

short dmYResolution;

short dmTTOption;

short dmCollate;

BYTE  dmFormName[CCHFORMNAME];

DWORD dmLogPixels;

DWORD dmBitsPerPel;

DWORD dmPelsWidth;

DWORD dmPelsHeight;

union {

DWORD dmDisplayFlags;

DWORD dmNup;

} ;

DWORD dmDisplayFrequency;

#if (WINVER >= 0x0400)

DWORD dmICMMethod;

DWORD dmICMIntent;

DWORD dmMediaType;

DWORD dmDitherType;

DWORD dmReserved1;

DWORD dmReserved2;

#if (WINVER >= 0x0500) || (_WIN32_WINNT >= 0x0400)

DWORD dmPanningWidth;

DWORD dmPanningHeight;

#endif

#endif

} DEVMODE;

 

PowerBASIC 语法

 

TYPE DEVMODE_UNION1_STRUCT_1

dmOrientation   AS INTEGER

dmPaperSize     AS INTEGER

dmPaperLength   AS INTEGER

dmPaperWidth    AS INTEGER

dmScale         AS INTEGER

dmCopies        AS INTEGER

dmDefaultSource AS INTEGER

dmPrintQuality  AS INTEGER

END TYPE

 

TYPE DEVMODE_UNION1_STRUCT_2

dmPosition           AS POINTL

dmDisplayOrientation AS DWORD

dmDisplayFixedOutput AS DWORD

END TYPE

 

UNION DEVMODE_UNION_1

DEVMODE_UNION1_STRUCT_1

DEVMODE_UNION1_STRUCT_2

END UNION

 

UNION DEVMODE_UNION_2

dmDisplayFlags AS DWORD

dmNup          AS DWORD

END UNION

 

TYPE DEVMODEA

dmDeviceName       AS ASCIIZ * %CCHDEVICENAME

dmSpecVersion      AS WORD

dmDriverVersion    AS WORD

dmSize             AS WORD

dmDriverExtra      AS WORD

dmFields           AS DWORD

DEVMODE_UNION_1

dmColor            AS INTEGER

dmDuplex           AS INTEGER

dmYResolution      AS INTEGER

dmTTOption         AS INTEGER

dmCollate          AS INTEGER

dmFormName         AS ASCIIZ * %CCHFORMNAME

dmLogPixels        AS WORD

dmBitsPerPel       AS DWORD

dmPelsWidth        AS DWORD

dmPelsHeight       AS DWORD

DEVMODE_UNION_2

dmDisplayFrequency AS DWORD

dmICMMethod        AS DWORD

dmICMIntent        AS DWORD

dmMediaType        AS DWORD

dmDitherType       AS DWORD

dmICCManufacturer  AS DWORD

dmICCModel         AS DWORD

dmPanningWidth     AS DWORD

dmPanningHeight    AS DWORD

END TYPE

 

Unicode版本:

 

TYPE DEVMODE_UNION1_STRUCT_1

dmOrientation   AS INTEGER

dmPaperSize     AS INTEGER

dmPaperLength   AS INTEGER

dmPaperWidth    AS INTEGER

dmScale         AS INTEGER

dmCopies        AS INTEGER

dmDefaultSource AS INTEGER

dmPrintQuality  AS INTEGER

END TYPE

 

TYPE DEVMODE_UNION1_STRUCT_2

dmPosition           AS POINTL

dmDisplayOrientation AS DWORD

dmDisplayFixedOutput AS DWORD

END TYPE

 

UNION DEVMODE_UNION_1

DEVMODE_UNION1_STRUCT_1

DEVMODE_UNION1_STRUCT_2

END UNION

 

UNION DEVMODE_UNION_2

dmDisplayFlags AS DWORD

dmNup          AS DWORD

END UNION

 

TYPE DEVMODEW

dmDeviceName       AS WSTRINGZ * %CCHDEVICENAME

dmSpecVersion      AS WORD

dmDriverVersion    AS WORD

dmSize             AS WORD

dmDriverExtra      AS WORD

dmFields           AS DWORD

DEVMODE_UNION_1

dmColor            AS INTEGER

dmDuplex           AS INTEGER

dmYResolution      AS INTEGER

dmTTOption         AS INTEGER

dmCollate          AS INTEGER

dmFormName         AS WSTRINGZ * %CCHFORMNAME

dmLogPixels        AS WORD

dmBitsPerPel       AS DWORD

dmPelsWidth        AS DWORD

dmPelsHeight       AS DWORD

DEVMODE_UNION_2

dmDisplayFrequency AS DWORD

dmICMMethod        AS DWORD

dmICMIntent        AS DWORD

dmMediaType        AS DWORD

dmDitherType       AS DWORD

dmICCManufacturer  AS DWORD

dmICCModel         AS DWORD

dmPanningWidth     AS DWORD

dmPanningHeight    AS DWORD

END TYPE

 

成员

 

dmDeviceName

 

指定打印机或显示器的“友好”名称的零终止字符数组;在PCL / HP LaserJet的情况下,例如“PCL / HP LaserJet”。该字符串在设备驱动程序中是唯一的。请注意,此名称可能会被截断以符合dmDeviceName数组。

 

dmSpecVersion

 

指定结构所基于的初始化数据规范的版本号。为了确保任何操作系统都使用正确的版本,请使用DM_SPECVERSION。

 

dmDriverVersion

 

指定驱动程序开发人员分配的驱动程序版本号。

 

dmSize

 

指定DEVMODE结构的大小(以字节为单位),不包括可能遵循结构公共成员的任何私有驱动程序特定的数据。将此成员设置为SIZEOFDEVMODE)以指示正在使用的DEVMODE结构的版本。

 

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

dmCollat??e

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

Windows 2000 / XP / Vista / Windows 7:dmPanningWidth

DM_PANNINGHEIGHT

Windows 2000 / XP / Vista / Windows 7:dmPanningHeight

 

dmOrientation

 

仅适用于打印机设备,选择纸张的方向。该成员可以是DMORIENT_PORTRAIT(1)或DMORIENT_LANDSCAPE(2)。

 

dmPaperSize

 

仅适用于打印机设备,选择要打印的纸张尺寸。如果纸张的长度和宽度都由dmPaperLengthdmPaperWidth成员设置,则该成员可以设置为零。否则,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

Windows 98 / Me,Windows NT 4.0及更高版本:12英寸×11英寸的纸张

DMPAPER_A2

A2纸,420 x 594毫米

DMPAPER_A3

A3纸,297- 420毫米

DMPAPER_A3_EXTRA

A3额外322 x 445毫米

DMPAPER_A3_EXTRA_TRAVERSE

A3 Extra横向322 x 445毫米

DMPAPER_A3_ROTATED

Windows 98 / Me,Windows NT 4.0及更高版本:A3旋转片材,420-297毫米

DMPAPER_A3_TRAVERSE

A3横向297 x 420毫米

DMPAPER_A4

A4纸,210-297毫米

DMPAPER_A4_EXTRA

A4纸,9.27 x 12.69英寸

DMPAPER_A4_PLUS

更A4 210 X330毫米,

DMPAPER_A4_ROTATED

Windows 98 / Me,Windows NT 4.0及更高版本:A4旋转纸,297- 210毫米

DMPAPER_A4SMALL

A4小片,210-297毫米

DMPAPER_A4_TRANSVERSE

A4横向210 x 297毫米

DMPAPER_A5

A5片,148- 210毫米

DMPAPER_A5_EXTRA

A5 Extra 174 x 235-mm

DMPAPER_A5_ROTATED

Windows 98 / Me,Windows NT 4.0及更高版本:A5旋转片,210-×148毫米

DMPAPER_A5_TRANSVERSE

A5横向148 x 210毫米

DMPAPER_A6

Windows 98 / Me,Windows NT 4.0及更高版本:A6张,105-×148毫米

DMPAPER_A6_ROTATED

Windows 98 / Me,Windows NT 4.0及更高版本:A6旋转的纸张,148-105毫米

DMPAPER_A_PLUS

Windows 98 / Me,Windows NT 4.0及更高版本:B4(JIS)旋转片,364-257毫米

DMPAPER_B5

B5片,182-257毫米纸

DMPAPER_B5_EXTRA

B5(ISO)额外201 x 276毫米

DMPAPER_B5_JIS_ROTATED

Windows 98 / Me,Windows NT 4.0及更高版本:B5(JIS)旋转片,257- 182毫米

DMPAPER_B6_JIS

Windows 98 / Me,Windows NT 4.0及更高版本:B6(JIS)片,128- 182毫米

DMPAPER_B6_JIS_ROTATED

Windows 98 / Me,Windows NT 4.0及更高版本:B6(JIS)旋转纸张,182- 128毫米

DMPAPER_B_PLUS

SuperB / A3 305 x 487毫米

DMPAPER_CSHEET

C纸,17- 22寸

DMPAPER_DBL_JAPANESE_

POSTCARD

Windows 98 / Me,Windows NT 4.0及更高版本:双日本明信片,200-48毫米

DMPAPER_DBL_JAPANESE_

POSTCARD_ROTATED

Windows 98 / Me,Windows NT 4.0及更高版本:双日本明信片旋转,148- 200毫米

DMPAPER_DSHEET

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-292毫米

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 Sheet,34-44英寸

DMPAPER_EXECUTIVE

执行,7 1 / 4-乘10 1/2英寸

DMPAPER_FANFOLD_US

美国标准Fanfold,14 7 / 8-乘11英寸

DMPAPER_FANFOLD_STD_GERMAN

德国标准Fanfold,8 1 / 2-乘12英寸

DMPAPER_FANFOLD_LGL_GERMAN

德国Legal Fanfold,8 - 13英寸

DMPAPER_FOLIO

对开,8 1 / 2- 13英寸纸

DMPAPER_ISO_B4

B4(ISO)250-353毫米纸张

DMPAPER_JAPANESE_POSTCARD

日本明信片,100-48毫米

DMPAPER_JAPANESE_

POSTCARD_ROTATED

Windows 98 / Me,Windows NT 4.0及更高版本:日本明信片旋转,148-乘100毫米

DMPAPER_JENV_CHOU3

Windows 98 / Me,Windows NT 4.0及更高版本:日本信封周三

DMPAPER_JENV_CHOU3_ROTATED

Windows 98 / Me,Windows NT 4.0及更高版本:日本信封C#3旋转

DMPAPER_JENV_CHOU4

Windows 98 / Me,Windows NT 4.0及更高版本:日本信封周四

DMPAPER_JENV_CHOU4_ROTATED

Windows 98 / Me,Windows NT 4.0及更高版本:日本信封周四旋转

DMPAPER_JENV_KAKU2

Windows 98 / Me,Windows NT 4.0及更高版本:日本信封Kaku#2

DMPAPER_JENV_KAKU2_ROTATED

Windows 98 / Me,Windows NT 4.0及更高版本:日本信封Kaku#2旋转

DMPAPER_JENV_KAKU3

Windows 98 / Me,Windows NT 4.0及更高版本:日本信封Kaku#3

DMPAPER_JENV_KAKU3_ROTATED

Windows 98 / Me,Windows NT 4.0及更高版本:日文信封Kaku#3旋转

DMPAPER_JENV_YOU4

Windows 98 / Me,Windows NT 4.0及更高版本:日本信封你#4

DMPAPER_JENV_YOU4_ROTATED

Windows 98 / Me,Windows NT 4.0及更高版本:日本信封你#4旋转

DMPAPER_LAST

Windows 2000 / XP / Vista / Windows 7: 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

Letter Extra横向9 1/2 x 12英寸。

DMPAPER_LETTER_ROTATED

字母旋转11乘8 1/2英寸

DMPAPER_LETTERSMALL

字母小,8 1 / 2-乘11英寸

DMPAPER_LETTER_TRANSVERSE

字母横向8 1/2 x 11英寸

DMPAPER_NOTE

注意,8 1 / 2-乘11英寸

DMPAPER_P16K

Windows 98 / Me,Windows NT 4.0及更高版本:PRC 16K,146-255毫米

DMPAPER_P16K_ROTATED

Windows 98 / Me,Windows NT 4.0及更高版本:中国16K旋转,215-144毫米

DMPAPER_P32K_ROTATED

Windows 98 / Me,Windows NT 4.0及更高版本:PRC 32K旋转,151-乘97毫米

DMPAPER_P32KBIG

Windows 98 / Me,Windows NT 4.0及更高版本:中国32K(大)97-×151毫米

DMPAPER_P32KBIG_ROTATED

Windows 98 / Me,Windows NT 4.0及更高版本:中国32K(大)旋转,151-乘97毫米

DMPAPER_PENV_1

Windows 98 / Me,Windows NT 4.0及更高版本:中国信封#1,102- 165毫米

DMPAPER_PENV_1_ROTATED

Windows 98 / Me,Windows NT 4.0及更高版本:PRC信封#1旋转,165乘102毫米

DMPAPER_PENV_2

Windows 98 / Me,Windows NT 4.0及更高版本:中国信封#2,102- 176毫米

DMPAPER_PENV_2_ROTATED

Windows 98 / Me,Windows NT 4.0及更高版本:PRC信封#2旋转,176乘102毫米

DMPAPER_PENV_3

Windows 98 / Me,Windows NT 4.0及更高版本:中国信封#3,125- 176毫米

DMPAPER_PENV_3_ROTATED

Windows 98 / Me,Windows NT 4.0及更高版本:PRC信封#3旋转,176- 125毫米

DMPAPER_PENV_4

Windows 98 / Me,Windows NT 4.0及更高版本:中国信封#4,110-×208毫米

DMPAPER_PENV_4_ROTATED

Windows 98 / Me,Windows NT 4.0及更高版本:中国信封#4旋转,208-×110毫米

DMPAPER_PENV_5

Windows 98 / Me,Windows NT 4.0及更高版本:中国信封#5,110-220毫米

DMPAPER_PENV_5_ROTATED

Windows 98 / Me,Windows NT 4.0及更高版本: PRC信封#5旋转,220-×110毫米

DMPAPER_PENV_6

Windows 98 / Me,Windows NT 4.0及更高版本:中国信封#6,120- 230毫米

DMPAPER_PENV_6_ROTATED

Windows 98 / Me,Windows NT 4.0及更高版本:PRC信封#6旋转,230-×120毫米

DMPAPER_PENV_7

Windows 98 / Me,Windows NT 4.0及更高版本:PRC信封#7,160- 230毫米

DMPAPER_PENV_7_ROTATED

Windows 98 / Me,Windows NT 4.0及更高版本:PRC信封#7旋转,230- 160毫米

DMPAPER_PENV_8

Windows 98 / Me,Windows NT 4.0及更高版本:中华人民共和国信封#8,120-加上309毫米

DMPAPER_PENV_8_ROTATED

Windows 98 / Me,Windows NT 4.0及更高版本:中国信封#8旋转,309-×120毫米

DMPAPER_PENV_9

Windows 98 / Me,Windows NT 4.0及更高版本:中国信封#9,229-乘324毫米

DMPAPER_PENV_9_ROTATED

Windows 98 / Me,Windows NT 4.0及更高版本:中国信封#9旋转,324- 229毫米

DMPAPER_PENV_10_ROTATED

Windows 98 / Me,Windows NT 4.0及更高版本:中国信封#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英寸

 

dmPaperLength

 

仅适用于打印机设备,可以覆盖由dmPaperSize成员指定的纸张长度,用于自定义纸张尺寸,或者可以在任意长度的页面上打印的点阵式打印机等设备。这些值以及该结构中指定物理长度的所有其他值都在十分之一毫米。

 

dmPaperWidth

 

仅适用于打印机设备,覆盖由dmPaperSize成员指定的纸张的宽度。

 

dmScale

 

指定要缩放打印输出的因子。明显的页面大小从物理页面大小缩放了dmScale/ 100的因子。例如,dmScale值为50的字母大小的页面将包含与17英寸到22英寸的页面数量相同的数据,因为输出文本和图形将是原始高度和宽度的一半。

 

dmCopies

 

如果设备支持多页复印,则选择打印份数。

 

dmDefaultSource

 

指定纸张来源。要检索打印机可用纸张来源的列表,请使用带有DC_BINS标志的DeviceCapabilities功能。

 

该成员可以是以下值之一,或者它可以是大于或等于DMBIN_USER的设备特定值。

 

DMBIN_AUTO

DMBIN_CASSETTE

DMBIN_ENVELOPE

DMBIN_ENVMANUAL

DMBIN_FIRST

DMBIN_FORMSOURCE

DMBIN_LARGECAPACITY

DMBIN_LARGEFMT

DMBIN_LAST

DMBIN_LOWER

DMBIN_MANUAL

DMBIN_MIDDLE

DMBIN_ONLYONE

DMBIN_TRACTOR

DMBIN_SMALLFMT

DMBIN_UPPER

 

dmPrintQuality

 

指定打印机分辨率。有四个预定义的与设备无关的值:

 

DMRES_HIGH

DMRES_MEDIUM

DMRES_LOW

DMRES_DRAFT

 

如果指定了正值,则它指定每英寸点数(DPI),因此与设备有关。

 

dmPosition

 

Windows 98 / Me,Windows 2000 / XP / Vista / Windows 7:仅适用于显示设备,POINTL结构,指示显示设备参考桌面区域的位置坐标。主显示设备始终位于坐标(0,0)处。

 

dmDisplayOrientation

 

Windows XP / Vista / Windows 7:仅适用于显示设备,应显示图像的方向。如果DM_DISPLAYORIENTATION未设置,则此成员必须为零。如果设置了DM_DISPLAYORIENTATION,则此成员必须是以下值之一

 

含义

DMDO_DEFAULT

显示方向是显示装置的自然取向;它应该被用作默认值。

DMDO_90

显示方向从DMDO_DEFAULT旋转90度(顺时针测量)。

DMDO_180

显示方向从DMDO_DEFAULT旋转180度(顺时针测量)。

DMDO_270

显示方向从DMDO_DEFAULT旋转270度(顺时针测量)。

 

要确定显示方向是纵向还是横向,请查看dmPelsWidthdmPelsHeight的比例。

 

dmDisplayFixedOutput

 

Windows XP / Vista / Windows 7:仅适用于固定分辨率显示设备,显示屏在较高分辨率显示屏上呈现低分辨率模式。例如,如果显示设备的分辨率固定为1024 x 768像素,但其模式设置为640 x 480像素,则设备可以在1024 x 768屏幕空间内部的某处显示640 x 480图像,或将640 x 480图像以填满较大的屏幕空间。如果DM_DISPLAYFIXEDOUTPUT未设置,则该成员必须为零。如果设置了DM_DISPLAYFIXEDOUTPUT,则此成员必须是以下值之一。

 

含义

DMDFO_DEFAULT

显示屏的默认设置。

DMDFO_CENTER

低分辨率图像集中在较大的屏幕空间中。

DMDFO_STRETCH

低分辨率图像被拉伸以填满较大的屏幕空间。

 

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

Windows 95/98 / Me,Windows NT 4.0及更高版本:将TrueType字体下载为轮廓软字体。

DMTT_SUBDEV

替换TrueType字体的设备字体。这是PostScript打印机的默认操作。

 

dmCollate

 

指定打印多个副本时是否应使用归类。(除非打印机驱动程序通过将dmFieldsno成员设置为DM_COLLATE来指示排序规则,否则将忽略此成员。)该成员可以是以下值之一。

 

含义

DMCOLLATE_TRUE

打印多份副本时整理。

DMCOLLATE_FALSE

打印多份时不要整理。

 

dmFormName

 

Windows NT / 2000 / XP / Vista / Windows 7:一个零终止的字符数组,指定要使用的表单的名称;例如“信”或“法定”。可以使用EnumForms功能检索完整的名称集。

 

Windows 95/98 / Me:打印机驱动程序不使用此成员。

 

dmLogPixels

 

指定每个逻辑英寸的像素数。打印机驱动程序不使用此成员。

 

dmBitsPerPel

 

指定显示设备的颜色分辨率(以像素为单位)(例如:16种颜色为4位,256色为8位,65,536色为16位)。显示驱动程序使用此成员,例如,在ChangeDisplaySettings功能中。打印机驱动程序不使用此成员。

 

dmPelsWidth

 

指定可见设备表面的宽度(以像素为单位)。显示驱动程序使用此成员,例如,在ChangeDisplaySettings功能中。打印机驱动程序不使用此成员。

 

dmPelsHeight

 

指定可见设备表面的高度(以像素为单位)。显示驱动程序使用此成员,例如,在ChangeDisplaySettings功能中。打印机驱动程序不使用此成员。

 

dmDisplayFlags

 

指定设备的显示模式。该成员可以是以下值的组合。

 

含义

DM_GRAYSCALE

指定显示器是非彩色设备。如果未设置此标志,则假定为颜色。

DM_INTERLACED

指定显示模式是隔行扫描。如果未设置标志,则假定为非隔行扫描。

 

显示驱动程序使用此成员,例如,在ChangeDisplaySettings功能中。打印机驱动程序不使用此成员。

 

dmNup

 

指定NUP完成的位置。它可以是以下之一。

 

含义

DMNUP_SYSTEM

打印后台处理程序是NUP。

DMNUP_ONEUP

该应用程序是NUP。

 

dmDisplayFrequency

 

以特定模式指定显示设备的频率,单位为赫兹(每秒的周期数)。该值也称为显示设备的垂直刷新率。显示驱动程序使用此成员。例如,它在ChangeDisplaySettings功能中使用。打印机驱动程序不使用此成员。

 

当您调用EnumDisplaySettings函数时,dmDisplayFrequency成员返回值为0或1。这些值表示显示硬件的默认刷新率。此默认速率通常由显示卡或计算机主板上的开关或不使用显示功能的配置程序(例如ChangeDisplaySettings)设置。

 

dmICMMethod

 

Windows 95/98 / Me; Windows 2000 / XP / Vista / Windows 7:指定如何处理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

 

Windows 95/98 / Me,Windows 2000 / XP / Vista / Windows 7:指定默认情况下应使用的颜色匹配方法或意图。该成员主要用于非ICM应用程序。ICM应用程序可以通过使用ICM功能来建立意图。该成员可以是以下预定义值之一,也可以是大于或等于DMICM_USER值的驱动程序定义值。

 

含义

DMICM_ABS_COLORIMETRIC

颜色匹配应优化以匹配所要求的准确颜色,而不需要白点映射。该值最适用于打样。

DMICM_COLORIMETRIC

颜色匹配应优化以匹配所要求的确切颜色。当需要确切的颜色匹配时,此值最适合用于商业标志或其他图像。

DMICM_CONTRAST

颜色匹配应优化颜色对比度。当需要抖动时,该值是扫描或摄影图像最合适的选择。

DMICM_SATURATE

颜色匹配应优化色彩饱和度。当不希望进行抖动时,该值是商业图表中最合适的选择。

 

dmMediaType

 

Windows 95/98 / Me,Windows 2000 / XP / Vista / Windows 7:指定打印介质的类型。该成员可以是以下预定义值之一,或大于或等于DMMEDIA_USER值的驱动程序定义值。

 

含义

DMMEDIA_STANDARD

普通纸

DMMEDIA_GLOSSY

光面纸。

DMMEDIA_TRANSPARENCY

透明膜。

 

Windows XP:要检索打印机可用介质类型的列表,请使用带有DC_MEDIATYPES标志的DeviceCapabilities功能。

 

dmDitherType

 

Windows 95/98 / Me,Windows 2000 / XP / Vista / Windows 7:指定抖动的完成方式。该成员可以是以下预定义值之一,或大于或等于DMDITHER_USER值的驱动程序定义值。

 

含义

DMDITHER_NONE

没有抖动。

DMDITHER_COARSE

用粗刷抖动。

DMDITHER_FINE

用精细的刷子抖动。

DMDITHER_LINEART

线条艺术抖动,一种特殊的抖动方法,可以在黑色,白色和灰色缩放之间产生明确的边界。它不适用于包含强度和色调的连续刻度的图像,例如扫描的照片。

DMDITHER_ERRORDIFFUSION

Windows 95/98 / Me:抖动,其中使用算法来扩展或扩散在相邻像素上逼近指定颜色的错误。相比之下,DMDITHER_COARSE,DMDITHER_FINE和DMDITHER_LINEART使用图案化的色调近似颜色。

DMDITHER_GRAYSCALE

设备执行灰度缩放。

 

dmReserved1

 

Windows 95/98 / Me,Windows 2000 / XP / Vista / Windows 7:未使用;必须为零。

 

dmReserved2

 

Windows 95/98 / Me,Windows 2000 / XP / Vista / Windows 7:未使用;必须为零。

 

dmPanningWidth

 

Windows NT / 2000 / XP / Vista / Windows 7:该成员必须为零。

 

Windows 95/98 / Me:不支持此成员。

 

dmPanningHeight

 

Windows NT / 2000 / XP / Vista / Windows 7:该成员必须为零。

 

Windows 95/98 / Me:不支持此成员。

 

注意 - dmUnusedPadding:用于将结构对齐到DWORD边界。这不被使用或引用。其名称和用法保留,并可在将来的版本中更改。

 

备注

 

设备驱动程序的私有数据遵循DEVMODE结构的公开部分。对于不同版本的结构,公共数据的大小可能会有所不同。dmsiz到成员指定公共数据的字节数,dmDriverExtra成员指定私有数据的字节数。

 

引用文件 #INCLUDE Once

 

WinGdi.inc(包括Windows.inc)