0000: 0a 2f 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ./**************
0010: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
0020: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
0030: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
0040: 2a 2a 2a 2a 2a 2a 2a 2a 2a 5c 0a 2a 20 20 20 20 *********\.*
0050: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0060: 20 20 20 20 20 20 20 20 20 20 20 20 77 69 6e 67 wing
0070: 64 69 2e 64 20 20 20 20 20 20 20 20 20 20 20 20 di.d
0080: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0090: 20 20 20 2a 0a 2a 20 20 20 20 20 20 20 20 20 20 *.*
00a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
00b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
00c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
00d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 2a 0a 2a *.*
00e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
00f0: 20 20 20 20 20 20 20 57 69 6e 64 6f 77 73 20 41 Windows A
0100: 50 49 20 68 65 61 64 65 72 20 6d 6f 64 75 6c 65 PI header module
0110: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0120: 20 20 20 20 20 20 20 2a 0a 2a 20 20 20 20 20 20 *.*
0130: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0140: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0150: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0160: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0170: 20 2a 0a 2a 20 20 20 20 20 20 20 20 20 20 20 20 *.*
0180: 20 20 20 20 20 54 72 61 6e 73 6c 61 74 65 64 20 Translated
0190: 66 72 6f 6d 20 4d 69 6e 47 57 20 57 69 6e 64 6f from MinGW Windo
01a0: 77 73 20 68 65 61 64 65 72 73 20 20 20 20 20 20 ws headers
01b0: 20 20 20 20 20 20 20 20 20 20 20 2a 0a 2a 20 20 *.*
01c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
01d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
01e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
01f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0200: 20 20 20 20 20 2a 0a 2a 20 20 20 20 20 20 20 20 *.*
0210: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 50 P
0220: 6c 61 63 65 64 20 69 6e 74 6f 20 70 75 62 6c 69 laced into publi
0230: 63 20 64 6f 6d 61 69 6e 20 20 20 20 20 20 20 20 c domain
0240: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2a *
0250: 0a 5c 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a .\**************
0260: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
0270: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
0280: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
0290: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2f 0a 6d 6f 64 75 6c *********/.modul
02a0: 65 20 77 69 6e 33 32 2e 77 69 6e 67 64 69 3b 0a e win32.wingdi;.
02b0: 70 72 61 67 6d 61 28 6c 69 62 2c 20 22 67 64 69 pragma(lib, "gdi
02c0: 33 32 2e 6c 69 62 22 29 3b 0a 0a 2f 2f 20 46 49 32.lib");..// FI
02d0: 58 4d 45 3a 20 63 6c 65 61 6e 20 75 70 20 57 69 XME: clean up Wi
02e0: 6e 64 6f 77 73 20 76 65 72 73 69 6f 6e 20 73 75 ndows version su
02f0: 70 70 6f 72 74 0a 0a 70 72 69 76 61 74 65 20 69 pport..private i
0300: 6d 70 6f 72 74 20 77 69 6e 33 32 2e 77 33 32 61 mport win32.w32a
0310: 70 69 2c 20 77 69 6e 33 32 2e 77 69 6e 64 65 66 pi, win32.windef
0320: 2c 20 77 69 6e 33 32 2e 77 69 6e 76 65 72 3b 0a , win32.winver;.
0330: 0a 2f 2f 20 42 49 54 4d 41 50 49 4e 46 4f 48 45 .// BITMAPINFOHE
0340: 41 44 45 52 2e 62 69 43 6f 6d 70 72 65 73 73 69 ADER.biCompressi
0350: 6f 6e 0a 65 6e 75 6d 20 3a 20 44 57 4f 52 44 20 on.enum : DWORD
0360: 7b 0a 20 20 20 20 42 49 5f 52 47 42 20 3d 20 30 {. BI_RGB = 0
0370: 2c 0a 20 20 20 20 42 49 5f 52 4c 45 38 2c 0a 20 ,. BI_RLE8,.
0380: 20 20 20 42 49 5f 52 4c 45 34 2c 0a 20 20 20 20 BI_RLE4,.
0390: 42 49 5f 42 49 54 46 49 45 4c 44 53 2c 0a 20 20 BI_BITFIELDS,.
03a0: 20 20 42 49 5f 4a 50 45 47 2c 0a 20 20 20 20 42 BI_JPEG,. B
03b0: 49 5f 50 4e 47 0a 7d 0a 0a 2f 2f 20 2d 2d 2d 0a I_PNG.}..// ---.
03c0: 2f 2f 20 43 4f 4c 4f 52 41 44 4a 55 53 54 4d 45 // COLORADJUSTME
03d0: 4e 54 20 2d 2d 20 6f 6e 6c 79 20 66 6f 72 20 4e NT -- only for N
03e0: 54 20 33 2e 31 2b 2c 20 57 69 6e 32 30 30 30 2b T 3.1+, Win2000+
03f0: 0a 63 6f 6e 73 74 20 57 4f 52 44 0a 43 41 5f 4e .const WORD.CA_N
0400: 45 47 41 54 49 56 45 20 20 20 3d 20 31 2c 0a 43 EGATIVE = 1,.C
0410: 41 5f 4c 4f 47 5f 46 49 4c 54 45 52 20 3d 20 32 A_LOG_FILTER = 2
0420: 3b 0a 0a 2f 2f 20 43 4f 4c 4f 52 41 44 4a 55 53 ;..// COLORADJUS
0430: 54 4d 45 4e 54 0a 65 6e 75 6d 20 3a 20 57 4f 52 TMENT.enum : WOR
0440: 44 20 20 7b 0a 20 20 20 20 49 4c 4c 55 4d 49 4e D {. ILLUMIN
0450: 41 4e 54 5f 44 45 56 49 43 45 5f 44 45 46 41 55 ANT_DEVICE_DEFAU
0460: 4c 54 20 3d 20 30 2c 0a 20 20 20 20 49 4c 4c 55 LT = 0,. ILLU
0470: 4d 49 4e 41 4e 54 5f 41 2c 0a 20 20 20 20 49 4c MINANT_A,. IL
0480: 4c 55 4d 49 4e 41 4e 54 5f 42 2c 0a 20 20 20 20 LUMINANT_B,.
0490: 49 4c 4c 55 4d 49 4e 41 4e 54 5f 43 2c 0a 20 20 ILLUMINANT_C,.
04a0: 20 20 49 4c 4c 55 4d 49 4e 41 4e 54 5f 44 35 30 ILLUMINANT_D50
04b0: 2c 0a 20 20 20 20 49 4c 4c 55 4d 49 4e 41 4e 54 ,. ILLUMINANT
04c0: 5f 44 35 35 2c 0a 20 20 20 20 49 4c 4c 55 4d 49 _D55,. ILLUMI
04d0: 4e 41 4e 54 5f 44 36 35 2c 0a 20 20 20 20 49 4c NANT_D65,. IL
04e0: 4c 55 4d 49 4e 41 4e 54 5f 44 37 35 2c 0a 20 20 LUMINANT_D75,.
04f0: 20 20 49 4c 4c 55 4d 49 4e 41 4e 54 5f 46 32 2c ILLUMINANT_F2,
0500: 0a 20 20 20 20 49 4c 4c 55 4d 49 4e 41 4e 54 5f . ILLUMINANT_
0510: 4d 41 58 5f 49 4e 44 45 58 20 20 20 3d 20 49 4c MAX_INDEX = IL
0520: 4c 55 4d 49 4e 41 4e 54 5f 46 32 2c 0a 20 20 20 LUMINANT_F2,.
0530: 20 49 4c 4c 55 4d 49 4e 41 4e 54 5f 54 55 4e 47 ILLUMINANT_TUNG
0540: 53 54 45 4e 20 20 20 20 3d 20 49 4c 4c 55 4d 49 STEN = ILLUMI
0550: 4e 41 4e 54 5f 41 2c 0a 20 20 20 20 49 4c 4c 55 NANT_A,. ILLU
0560: 4d 49 4e 41 4e 54 5f 44 41 59 4c 49 47 48 54 20 MINANT_DAYLIGHT
0570: 20 20 20 3d 20 49 4c 4c 55 4d 49 4e 41 4e 54 5f = ILLUMINANT_
0580: 43 2c 0a 20 20 20 20 49 4c 4c 55 4d 49 4e 41 4e C,. ILLUMINAN
0590: 54 5f 46 4c 55 4f 52 45 53 43 45 4e 54 20 3d 20 T_FLUORESCENT =
05a0: 49 4c 4c 55 4d 49 4e 41 4e 54 5f 46 32 2c 0a 20 ILLUMINANT_F2,.
05b0: 20 20 20 49 4c 4c 55 4d 49 4e 41 4e 54 5f 4e 54 ILLUMINANT_NT
05c0: 53 43 20 20 20 20 20 20 20 20 3d 20 49 4c 4c 55 SC = ILLU
05d0: 4d 49 4e 41 4e 54 5f 43 0a 7d 0a 0a 65 6e 75 6d MINANT_C.}..enum
05e0: 20 7b 0a 20 20 20 20 52 47 42 5f 47 41 4d 4d 41 {. RGB_GAMMA
05f0: 5f 4d 49 4e 20 20 20 20 20 20 20 3d 20 32 35 30 _MIN = 250
0600: 30 2c 0a 20 20 20 20 52 47 42 5f 47 41 4d 4d 41 0,. RGB_GAMMA
0610: 5f 4d 41 58 20 20 20 20 20 20 20 3d 20 36 35 30 _MAX = 650
0620: 30 30 2c 0a 20 20 20 20 52 45 46 45 52 45 4e 43 00,. REFERENC
0630: 45 5f 57 48 49 54 45 5f 4d 49 4e 20 3d 20 36 30 E_WHITE_MIN = 60
0640: 30 30 2c 0a 20 20 20 20 52 45 46 45 52 45 4e 43 00,. REFERENC
0650: 45 5f 57 48 49 54 45 5f 4d 41 58 20 3d 20 31 30 E_WHITE_MAX = 10
0660: 30 30 30 2c 0a 20 20 20 20 52 45 46 45 52 45 4e 000,. REFEREN
0670: 43 45 5f 42 4c 41 43 4b 5f 4d 49 4e 20 3d 20 30 CE_BLACK_MIN = 0
0680: 2c 0a 20 20 20 20 52 45 46 45 52 45 4e 43 45 5f ,. REFERENCE_
0690: 42 4c 41 43 4b 5f 4d 41 58 20 3d 20 34 30 30 30 BLACK_MAX = 4000
06a0: 2c 0a 20 20 20 20 43 4f 4c 4f 52 5f 41 44 4a 5f ,. COLOR_ADJ_
06b0: 4d 49 4e 20 20 20 20 20 20 20 3d 20 2d 31 30 30 MIN = -100
06c0: 2c 0a 20 20 20 20 43 4f 4c 4f 52 5f 41 44 4a 5f ,. COLOR_ADJ_
06d0: 4d 41 58 20 20 20 20 20 20 20 3d 20 31 30 30 2c MAX = 100,
06e0: 0a 7d 0a 0a 2f 2f 20 2d 2d 2d 0a 0a 2f 2a 20 46 .}..// ---../* F
06f0: 49 58 4d 45 3a 20 6d 6f 76 65 20 74 6f 20 77 69 IXME: move to wi
0700: 6e 33 32 2e 77 69 6e 75 73 65 72 20 3f 20 2a 2f n32.winuser ? */
0710: 0a 0a 2f 2f 20 44 72 61 77 49 63 6f 6e 45 78 28 ..// DrawIconEx(
0720: 29 0a 65 6e 75 6d 20 3a 20 55 49 4e 54 20 7b 0a ).enum : UINT {.
0730: 20 20 20 20 44 49 5f 4d 41 53 4b 20 20 20 20 20 DI_MASK
0740: 20 20 20 3d 20 31 2c 0a 20 20 20 20 44 49 5f 49 = 1,. DI_I
0750: 4d 41 47 45 20 20 20 20 20 20 20 3d 20 32 2c 0a MAGE = 2,.
0760: 20 20 20 20 44 49 5f 4e 4f 52 4d 41 4c 20 20 20 DI_NORMAL
0770: 20 20 20 3d 20 33 2c 0a 20 20 20 20 44 49 5f 43 = 3,. DI_C
0780: 4f 4d 50 41 54 20 20 20 20 20 20 3d 20 34 2c 0a OMPAT = 4,.
0790: 20 20 20 20 44 49 5f 44 45 46 41 55 4c 54 53 49 DI_DEFAULTSI
07a0: 5a 45 20 3d 20 38 0a 7d 0a 0a 2f 2f 20 44 4f 43 ZE = 8.}..// DOC
07b0: 49 4e 46 4f 0a 65 6e 75 6d 20 3a 20 44 57 4f 52 INFO.enum : DWOR
07c0: 44 20 7b 0a 20 20 20 20 44 49 5f 41 50 50 42 41 D {. DI_APPBA
07d0: 4e 44 49 4e 47 20 3d 20 31 2c 0a 20 20 20 20 44 NDING = 1,. D
07e0: 49 5f 52 4f 50 53 5f 52 45 41 44 5f 44 45 53 54 I_ROPS_READ_DEST
07f0: 49 4e 41 54 49 4f 4e 20 3d 20 32 2c 0a 7d 0a 0a INATION = 2,.}..
0800: 2f 2f 20 45 4e 48 4d 45 54 41 48 45 41 44 45 52 // ENHMETAHEADER
0810: 0a 65 6e 75 6d 20 3a 20 44 57 4f 52 44 20 7b 0a .enum : DWORD {.
0820: 20 20 20 20 45 4d 52 5f 48 45 41 44 45 52 20 3d EMR_HEADER =
0830: 20 31 2c 0a 20 20 20 20 45 4d 52 5f 50 4f 4c 59 1,. EMR_POLY
0840: 42 45 5a 49 45 52 2c 0a 20 20 20 20 45 4d 52 5f BEZIER,. EMR_
0850: 50 4f 4c 59 47 4f 4e 2c 0a 20 20 20 20 45 4d 52 POLYGON,. EMR
0860: 5f 50 4f 4c 59 4c 49 4e 45 2c 0a 20 20 20 20 45 _POLYLINE,. E
0870: 4d 52 5f 50 4f 4c 59 42 45 5a 49 45 52 54 4f 2c MR_POLYBEZIERTO,
0880: 0a 20 20 20 20 45 4d 52 5f 50 4f 4c 59 4c 49 4e . EMR_POLYLIN
0890: 45 54 4f 2c 0a 20 20 20 20 45 4d 52 5f 50 4f 4c ETO,. EMR_POL
08a0: 59 50 4f 4c 59 4c 49 4e 45 2c 0a 20 20 20 20 45 YPOLYLINE,. E
08b0: 4d 52 5f 50 4f 4c 59 50 4f 4c 59 47 4f 4e 2c 0a MR_POLYPOLYGON,.
08c0: 20 20 20 20 45 4d 52 5f 53 45 54 57 49 4e 44 4f EMR_SETWINDO
08d0: 57 45 58 54 45 58 2c 0a 20 20 20 20 45 4d 52 5f WEXTEX,. EMR_
08e0: 53 45 54 57 49 4e 44 4f 57 4f 52 47 45 58 2c 0a SETWINDOWORGEX,.
08f0: 20 20 20 20 45 4d 52 5f 53 45 54 56 49 45 57 50 EMR_SETVIEWP
0900: 4f 52 54 45 58 54 45 58 2c 0a 20 20 20 20 45 4d ORTEXTEX,. EM
0910: 52 5f 53 45 54 56 49 45 57 50 4f 52 54 4f 52 47 R_SETVIEWPORTORG
0920: 45 58 2c 0a 20 20 20 20 45 4d 52 5f 53 45 54 42 EX,. EMR_SETB
0930: 52 55 53 48 4f 52 47 45 58 2c 0a 20 20 20 20 45 RUSHORGEX,. E
0940: 4d 52 5f 45 4f 46 2c 0a 20 20 20 20 45 4d 52 5f MR_EOF,. EMR_
0950: 53 45 54 50 49 58 45 4c 56 2c 0a 20 20 20 20 45 SETPIXELV,. E
0960: 4d 52 5f 53 45 54 4d 41 50 50 45 52 46 4c 41 47 MR_SETMAPPERFLAG
0970: 53 2c 0a 20 20 20 20 45 4d 52 5f 53 45 54 4d 41 S,. EMR_SETMA
0980: 50 4d 4f 44 45 2c 0a 20 20 20 20 45 4d 52 5f 53 PMODE,. EMR_S
0990: 45 54 42 4b 4d 4f 44 45 2c 0a 20 20 20 20 45 4d ETBKMODE,. EM
09a0: 52 5f 53 45 54 50 4f 4c 59 46 49 4c 4c 4d 4f 44 R_SETPOLYFILLMOD
09b0: 45 2c 0a 20 20 20 20 45 4d 52 5f 53 45 54 52 4f E,. EMR_SETRO
09c0: 50 32 2c 0a 20 20 20 20 45 4d 52 5f 53 45 54 53 P2,. EMR_SETS
09d0: 54 52 45 54 43 48 42 4c 54 4d 4f 44 45 2c 0a 20 TRETCHBLTMODE,.
09e0: 20 20 20 45 4d 52 5f 53 45 54 54 45 58 54 41 4c EMR_SETTEXTAL
09f0: 49 47 4e 2c 0a 20 20 20 20 45 4d 52 5f 53 45 54 IGN,. EMR_SET
0a00: 43 4f 4c 4f 52 41 44 4a 55 53 54 4d 45 4e 54 2c COLORADJUSTMENT,
0a10: 0a 20 20 20 20 45 4d 52 5f 53 45 54 54 45 58 54 . EMR_SETTEXT
0a20: 43 4f 4c 4f 52 2c 0a 20 20 20 20 45 4d 52 5f 53 COLOR,. EMR_S
0a30: 45 54 42 4b 43 4f 4c 4f 52 2c 0a 20 20 20 20 45 ETBKCOLOR,. E
0a40: 4d 52 5f 4f 46 46 53 45 54 43 4c 49 50 52 47 4e MR_OFFSETCLIPRGN
0a50: 2c 0a 20 20 20 20 45 4d 52 5f 4d 4f 56 45 54 4f ,. EMR_MOVETO
0a60: 45 58 2c 0a 20 20 20 20 45 4d 52 5f 53 45 54 4d EX,. EMR_SETM
0a70: 45 54 41 52 47 4e 2c 0a 20 20 20 20 45 4d 52 5f ETARGN,. EMR_
0a80: 45 58 43 4c 55 44 45 43 4c 49 50 52 45 43 54 2c EXCLUDECLIPRECT,
0a90: 0a 20 20 20 20 45 4d 52 5f 49 4e 54 45 52 53 45 . EMR_INTERSE
0aa0: 43 54 43 4c 49 50 52 45 43 54 2c 0a 20 20 20 20 CTCLIPRECT,.
0ab0: 45 4d 52 5f 53 43 41 4c 45 56 49 45 57 50 4f 52 EMR_SCALEVIEWPOR
0ac0: 54 45 58 54 45 58 2c 0a 20 20 20 20 45 4d 52 5f TEXTEX,. EMR_
0ad0: 53 43 41 4c 45 57 49 4e 44 4f 57 45 58 54 45 58 SCALEWINDOWEXTEX
0ae0: 2c 0a 20 20 20 20 45 4d 52 5f 53 41 56 45 44 43 ,. EMR_SAVEDC
0af0: 2c 0a 20 20 20 20 45 4d 52 5f 52 45 53 54 4f 52 ,. EMR_RESTOR
0b00: 45 44 43 2c 0a 20 20 20 20 45 4d 52 5f 53 45 54 EDC,. EMR_SET
0b10: 57 4f 52 4c 44 54 52 41 4e 53 46 4f 52 4d 2c 0a WORLDTRANSFORM,.
0b20: 20 20 20 20 45 4d 52 5f 4d 4f 44 49 46 59 57 4f EMR_MODIFYWO
0b30: 52 4c 44 54 52 41 4e 53 46 4f 52 4d 2c 0a 20 20 RLDTRANSFORM,.
0b40: 20 20 45 4d 52 5f 53 45 4c 45 43 54 4f 42 4a 45 EMR_SELECTOBJE
0b50: 43 54 2c 0a 20 20 20 20 45 4d 52 5f 43 52 45 41 CT,. EMR_CREA
0b60: 54 45 50 45 4e 2c 0a 20 20 20 20 45 4d 52 5f 43 TEPEN,. EMR_C
0b70: 52 45 41 54 45 42 52 55 53 48 49 4e 44 49 52 45 REATEBRUSHINDIRE
0b80: 43 54 2c 0a 20 20 20 20 45 4d 52 5f 44 45 4c 45 CT,. EMR_DELE
0b90: 54 45 4f 42 4a 45 43 54 2c 0a 20 20 20 20 45 4d TEOBJECT,. EM
0ba0: 52 5f 41 4e 47 4c 45 41 52 43 2c 0a 20 20 20 20 R_ANGLEARC,.
0bb0: 45 4d 52 5f 45 4c 4c 49 50 53 45 2c 0a 20 20 20 EMR_ELLIPSE,.
0bc0: 20 45 4d 52 5f 52 45 43 54 41 4e 47 4c 45 2c 0a EMR_RECTANGLE,.
0bd0: 20 20 20 20 45 4d 52 5f 52 4f 55 4e 44 52 45 43 EMR_ROUNDREC
0be0: 54 2c 0a 20 20 20 20 45 4d 52 5f 41 52 43 2c 0a T,. EMR_ARC,.
0bf0: 20 20 20 20 45 4d 52 5f 43 48 4f 52 44 2c 0a 20 EMR_CHORD,.
0c00: 20 20 20 45 4d 52 5f 50 49 45 2c 0a 20 20 20 20 EMR_PIE,.
0c10: 45 4d 52 5f 53 45 4c 45 43 54 50 41 4c 45 54 54 EMR_SELECTPALETT
0c20: 45 2c 0a 20 20 20 20 45 4d 52 5f 43 52 45 41 54 E,. EMR_CREAT
0c30: 45 50 41 4c 45 54 54 45 2c 0a 20 20 20 20 45 4d EPALETTE,. EM
0c40: 52 5f 53 45 54 50 41 4c 45 54 54 45 45 4e 54 52 R_SETPALETTEENTR
0c50: 49 45 53 2c 0a 20 20 20 20 45 4d 52 5f 52 45 53 IES,. EMR_RES
0c60: 49 5a 45 50 41 4c 45 54 54 45 2c 0a 20 20 20 20 IZEPALETTE,.
0c70: 45 4d 52 5f 52 45 41 4c 49 5a 45 50 41 4c 45 54 EMR_REALIZEPALET
0c80: 54 45 2c 0a 20 20 20 20 45 4d 52 5f 45 58 54 46 TE,. EMR_EXTF
0c90: 4c 4f 4f 44 46 49 4c 4c 2c 0a 20 20 20 20 45 4d LOODFILL,. EM
0ca0: 52 5f 4c 49 4e 45 54 4f 2c 0a 20 20 20 20 45 4d R_LINETO,. EM
0cb0: 52 5f 41 52 43 54 4f 2c 0a 20 20 20 20 45 4d 52 R_ARCTO,. EMR
0cc0: 5f 50 4f 4c 59 44 52 41 57 2c 0a 20 20 20 20 45 _POLYDRAW,. E
0cd0: 4d 52 5f 53 45 54 41 52 43 44 49 52 45 43 54 49 MR_SETARCDIRECTI
0ce0: 4f 4e 2c 0a 20 20 20 20 45 4d 52 5f 53 45 54 4d ON,. EMR_SETM
0cf0: 49 54 45 52 4c 49 4d 49 54 2c 0a 20 20 20 20 45 ITERLIMIT,. E
0d00: 4d 52 5f 42 45 47 49 4e 50 41 54 48 2c 0a 20 20 MR_BEGINPATH,.
0d10: 20 20 45 4d 52 5f 45 4e 44 50 41 54 48 2c 0a 20 EMR_ENDPATH,.
0d20: 20 20 20 45 4d 52 5f 43 4c 4f 53 45 46 49 47 55 EMR_CLOSEFIGU
0d30: 52 45 2c 0a 20 20 20 20 45 4d 52 5f 46 49 4c 4c RE,. EMR_FILL
0d40: 50 41 54 48 2c 0a 20 20 20 20 45 4d 52 5f 53 54 PATH,. EMR_ST
0d50: 52 4f 4b 45 41 4e 44 46 49 4c 4c 50 41 54 48 2c ROKEANDFILLPATH,
0d60: 0a 20 20 20 20 45 4d 52 5f 53 54 52 4f 4b 45 50 . EMR_STROKEP
0d70: 41 54 48 2c 0a 20 20 20 20 45 4d 52 5f 46 4c 41 ATH,. EMR_FLA
0d80: 54 54 45 4e 50 41 54 48 2c 0a 20 20 20 20 45 4d TTENPATH,. EM
0d90: 52 5f 57 49 44 45 4e 50 41 54 48 2c 0a 20 20 20 R_WIDENPATH,.
0da0: 20 45 4d 52 5f 53 45 4c 45 43 54 43 4c 49 50 50 EMR_SELECTCLIPP
0db0: 41 54 48 2c 0a 20 20 20 20 45 4d 52 5f 41 42 4f ATH,. EMR_ABO
0dc0: 52 54 50 41 54 48 2c 20 20 20 20 20 2f 2f 20 36 RTPATH, // 6
0dd0: 38 0a 20 20 20 20 2f 2f 20 72 65 73 65 72 76 65 8. // reserve
0de0: 64 20 36 39 0a 20 20 20 20 45 4d 52 5f 47 44 49 d 69. EMR_GDI
0df0: 43 4f 4d 4d 45 4e 54 20 3d 20 37 30 2c 0a 20 20 COMMENT = 70,.
0e00: 20 20 45 4d 52 5f 46 49 4c 4c 52 47 4e 2c 0a 20 EMR_FILLRGN,.
0e10: 20 20 20 45 4d 52 5f 46 52 41 4d 45 52 47 4e 2c EMR_FRAMERGN,
0e20: 0a 20 20 20 20 45 4d 52 5f 49 4e 56 45 52 54 52 . EMR_INVERTR
0e30: 47 4e 2c 0a 20 20 20 20 45 4d 52 5f 50 41 49 4e GN,. EMR_PAIN
0e40: 54 52 47 4e 2c 0a 20 20 20 20 45 4d 52 5f 45 58 TRGN,. EMR_EX
0e50: 54 53 45 4c 45 43 54 43 4c 49 50 52 47 4e 2c 0a TSELECTCLIPRGN,.
0e60: 20 20 20 20 45 4d 52 5f 42 49 54 42 4c 54 2c 0a EMR_BITBLT,.
0e70: 20 20 20 20 45 4d 52 5f 53 54 52 45 54 43 48 42 EMR_STRETCHB
0e80: 4c 54 2c 0a 20 20 20 20 45 4d 52 5f 4d 41 53 4b LT,. EMR_MASK
0e90: 42 4c 54 2c 0a 20 20 20 20 45 4d 52 5f 50 4c 47 BLT,. EMR_PLG
0ea0: 42 4c 54 2c 0a 20 20 20 20 45 4d 52 5f 53 45 54 BLT,. EMR_SET
0eb0: 44 49 42 49 54 53 54 4f 44 45 56 49 43 45 2c 0a DIBITSTODEVICE,.
0ec0: 20 20 20 20 45 4d 52 5f 53 54 52 45 54 43 48 44 EMR_STRETCHD
0ed0: 49 42 49 54 53 2c 0a 20 20 20 20 45 4d 52 5f 45 IBITS,. EMR_E
0ee0: 58 54 43 52 45 41 54 45 46 4f 4e 54 49 4e 44 49 XTCREATEFONTINDI
0ef0: 52 45 43 54 57 2c 0a 20 20 20 20 45 4d 52 5f 45 RECTW,. EMR_E
0f00: 58 54 54 45 58 54 4f 55 54 41 2c 0a 20 20 20 20 XTTEXTOUTA,.
0f10: 45 4d 52 5f 45 58 54 54 45 58 54 4f 55 54 57 2c EMR_EXTTEXTOUTW,
0f20: 0a 20 20 20 20 45 4d 52 5f 50 4f 4c 59 42 45 5a . EMR_POLYBEZ
0f30: 49 45 52 31 36 2c 0a 20 20 20 20 45 4d 52 5f 50 IER16,. EMR_P
0f40: 4f 4c 59 47 4f 4e 31 36 2c 0a 20 20 20 20 45 4d OLYGON16,. EM
0f50: 52 5f 50 4f 4c 59 4c 49 4e 45 31 36 2c 0a 20 20 R_POLYLINE16,.
0f60: 20 20 45 4d 52 5f 50 4f 4c 59 42 45 5a 49 45 52 EMR_POLYBEZIER
0f70: 54 4f 31 36 2c 0a 20 20 20 20 45 4d 52 5f 50 4f TO16,. EMR_PO
0f80: 4c 59 4c 49 4e 45 54 4f 31 36 2c 0a 20 20 20 20 LYLINETO16,.
0f90: 45 4d 52 5f 50 4f 4c 59 50 4f 4c 59 4c 49 4e 45 EMR_POLYPOLYLINE
0fa0: 31 36 2c 0a 20 20 20 20 45 4d 52 5f 50 4f 4c 59 16,. EMR_POLY
0fb0: 50 4f 4c 59 47 4f 4e 31 36 2c 0a 20 20 20 20 45 POLYGON16,. E
0fc0: 4d 52 5f 50 4f 4c 59 44 52 41 57 31 36 2c 0a 20 MR_POLYDRAW16,.
0fd0: 20 20 20 45 4d 52 5f 43 52 45 41 54 45 4d 4f 4e EMR_CREATEMON
0fe0: 4f 42 52 55 53 48 2c 0a 20 20 20 20 45 4d 52 5f OBRUSH,. EMR_
0ff0: 43 52 45 41 54 45 44 49 42 50 41 54 54 45 52 4e CREATEDIBPATTERN
1000: 42 52 55 53 48 50 54 2c 0a 20 20 20 20 45 4d 52 BRUSHPT,. EMR
1010: 5f 45 58 54 43 52 45 41 54 45 50 45 4e 2c 0a 20 _EXTCREATEPEN,.
1020: 20 20 20 45 4d 52 5f 50 4f 4c 59 54 45 58 54 4f EMR_POLYTEXTO
1030: 55 54 41 2c 0a 20 20 20 20 45 4d 52 5f 50 4f 4c UTA,. EMR_POL
1040: 59 54 45 58 54 4f 55 54 57 2c 20 20 20 20 20 2f YTEXTOUTW, /
1050: 2f 20 39 37 0a 20 20 20 20 45 4d 52 5f 53 45 54 / 97. EMR_SET
1060: 49 43 4d 4d 4f 44 45 2c 0a 20 20 20 20 45 4d 52 ICMMODE,. EMR
1070: 5f 43 52 45 41 54 45 43 4f 4c 4f 52 53 50 41 43 _CREATECOLORSPAC
1080: 45 2c 0a 20 20 20 20 45 4d 52 5f 53 45 54 43 4f E,. EMR_SETCO
1090: 4c 4f 52 53 50 41 43 45 2c 0a 20 20 20 20 45 4d LORSPACE,. EM
10a0: 52 5f 44 45 4c 45 54 45 43 4f 4c 4f 52 53 50 41 R_DELETECOLORSPA
10b0: 43 45 2c 0a 20 20 20 20 45 4d 52 5f 47 4c 53 52 CE,. EMR_GLSR
10c0: 45 43 4f 52 44 2c 0a 20 20 20 20 45 4d 52 5f 47 ECORD,. EMR_G
10d0: 4c 53 42 4f 55 4e 44 45 44 52 45 43 4f 52 44 2c LSBOUNDEDRECORD,
10e0: 0a 20 20 20 20 45 4d 52 5f 50 49 58 45 4c 46 4f . EMR_PIXELFO
10f0: 52 4d 41 54 2c 20 20 20 20 20 2f 2f 20 3d 20 31 RMAT, // = 1
1100: 30 34 0a 20 20 20 20 2f 2f 20 72 65 73 65 72 76 04. // reserv
1110: 65 64 20 31 30 35 20 2d 20 31 31 30 0a 20 20 20 ed 105 - 110.
1120: 20 45 4d 52 5f 43 4f 4c 4f 52 43 4f 52 52 45 43 EMR_COLORCORREC
1130: 54 50 41 4c 45 54 54 45 20 3d 20 31 31 31 2c 0a TPALETTE = 111,.
1140: 20 20 20 20 45 4d 52 5f 53 45 54 49 43 4d 50 52 EMR_SETICMPR
1150: 4f 46 49 4c 45 41 2c 0a 20 20 20 20 45 4d 52 5f OFILEA,. EMR_
1160: 53 45 54 49 43 4d 50 52 4f 46 49 4c 45 57 2c 0a SETICMPROFILEW,.
1170: 20 20 20 20 45 4d 52 5f 41 4c 50 48 41 42 4c 45 EMR_ALPHABLE
1180: 4e 44 2c 0a 20 20 20 20 45 4d 52 5f 53 45 54 4c ND,. EMR_SETL
1190: 41 59 4f 55 54 2c 0a 20 20 20 20 45 4d 52 5f 54 AYOUT,. EMR_T
11a0: 52 41 4e 53 50 41 52 45 4e 54 42 4c 54 2c 20 20 RANSPARENTBLT,
11b0: 20 20 20 2f 2f 20 31 31 36 0a 20 20 20 20 2f 2f // 116. //
11c0: 20 72 65 73 65 72 76 65 64 20 31 31 37 0a 20 20 reserved 117.
11d0: 20 20 45 4d 52 5f 47 52 41 44 49 45 4e 54 46 49 EMR_GRADIENTFI
11e0: 4c 4c 20 3d 20 31 31 38 2c 0a 0a 20 20 20 20 2f LL = 118,.. /
11f0: 2f 20 72 65 73 65 72 76 65 64 20 31 31 39 2c 20 / reserved 119,
1200: 31 32 30 0a 20 20 20 20 45 4d 52 5f 43 4f 4c 4f 120. EMR_COLO
1210: 52 4d 41 54 43 48 54 4f 54 41 52 47 45 54 57 20 RMATCHTOTARGETW
1220: 3d 20 31 32 31 2c 0a 20 20 20 20 45 4d 52 5f 43 = 121,. EMR_C
1230: 52 45 41 54 45 43 4f 4c 4f 52 53 50 41 43 45 57 REATECOLORSPACEW
1240: 20 20 20 20 20 2f 2f 20 31 32 32 0a 7d 0a 0a 63 // 122.}..c
1250: 6f 6e 73 74 20 45 4d 52 5f 4d 49 4e 20 3d 20 45 onst EMR_MIN = E
1260: 4d 52 5f 48 45 41 44 45 52 3b 0a 0a 73 74 61 74 MR_HEADER;..stat
1270: 69 63 0a 0a 69 66 20 28 57 49 4e 56 45 52 20 3e ic..if (WINVER >
1280: 3d 20 30 78 30 35 30 30 29 0a 20 20 20 20 63 6f = 0x0500). co
1290: 6e 73 74 20 45 4d 52 5f 4d 41 58 20 3d 20 45 4d nst EMR_MAX = EM
12a0: 52 5f 43 52 45 41 54 45 43 4f 4c 4f 52 53 50 41 R_CREATECOLORSPA
12b0: 43 45 57 3b 0a 65 6c 73 65 20 73 74 61 74 69 63 CEW;.else static
12c0: 0a 0a 20 20 20 20 69 66 20 28 57 49 4e 56 45 52 .. if (WINVER
12d0: 20 3e 3d 20 30 78 30 34 30 30 29 0a 20 20 20 20 >= 0x0400).
12e0: 20 20 20 20 63 6f 6e 73 74 20 45 4d 52 5f 4d 41 const EMR_MA
12f0: 58 20 3d 20 45 4d 52 5f 50 49 58 45 4c 46 4f 52 X = EMR_PIXELFOR
1300: 4d 41 54 3b 0a 20 20 20 20 65 6c 73 65 0a 20 20 MAT;. else.
1310: 20 20 20 20 20 20 63 6f 6e 73 74 20 45 4d 52 5f const EMR_
1320: 4d 41 58 20 3d 20 45 4d 52 5f 50 4f 4c 59 54 45 MAX = EMR_POLYTE
1330: 58 54 4f 55 54 57 3b 0a 0a 2f 2f 20 45 4e 48 4d XTOUTW;..// ENHM
1340: 45 54 41 48 45 41 44 45 52 2e 64 53 69 67 6e 61 ETAHEADER.dSigna
1350: 74 75 72 65 2c 20 45 4e 48 4d 45 54 41 48 45 41 ture, ENHMETAHEA
1360: 44 45 52 33 2e 64 53 69 67 6e 61 74 75 72 65 2c DER3.dSignature,
1370: 0a 2f 2f 20 45 4d 52 46 4f 52 4d 41 54 2e 64 53 .// EMRFORMAT.dS
1380: 69 67 6e 61 74 75 72 65 0a 65 6e 75 6d 20 3a 20 ignature.enum :
1390: 44 57 4f 52 44 20 7b 0a 20 20 20 20 45 4e 48 4d DWORD {. ENHM
13a0: 45 54 41 5f 53 49 47 4e 41 54 55 52 45 20 3d 20 ETA_SIGNATURE =
13b0: 31 31 37 39 34 36 39 30 38 38 2c 0a 20 20 20 20 1179469088,.
13c0: 45 50 53 5f 53 49 47 4e 41 54 55 52 45 20 20 20 EPS_SIGNATURE
13d0: 20 20 3d 20 30 78 34 36 35 33 35 30 34 35 0a 7d = 0x46535045.}
13e0: 0a 0a 73 74 61 74 69 63 0a 0a 69 66 20 28 5f 57 ..static..if (_W
13f0: 49 4e 33 32 5f 57 49 4e 4e 54 20 3e 3d 20 30 78 IN32_WINNT >= 0x
1400: 30 35 30 30 29 0a 7b 0a 20 20 20 20 2f 2f 20 41 0500).{. // A
1410: 64 64 46 6f 6e 74 52 65 73 6f 75 72 63 65 45 78 ddFontResourceEx
1420: 28 29 0a 20 20 20 20 65 6e 75 6d 20 3a 20 44 57 (). enum : DW
1430: 4f 52 44 20 7b 0a 20 20 20 20 20 20 20 20 46 52 ORD {. FR
1440: 5f 50 52 49 56 41 54 45 20 20 3d 20 30 78 31 30 _PRIVATE = 0x10
1450: 2c 0a 20 20 20 20 20 20 20 20 46 52 5f 4e 4f 54 ,. FR_NOT
1460: 5f 45 4e 55 4d 20 3d 20 30 78 32 30 0a 20 20 20 _ENUM = 0x20.
1470: 20 7d 0a 7d 0a 0a 65 6e 75 6d 20 7b 0a 20 20 20 }.}..enum {.
1480: 20 4d 45 54 41 5f 53 41 56 45 44 43 20 3d 20 30 META_SAVEDC = 0
1490: 78 31 45 2c 0a 20 20 20 20 4d 45 54 41 5f 52 45 x1E,. META_RE
14a0: 41 4c 49 5a 45 50 41 4c 45 54 54 45 20 20 20 20 ALIZEPALETTE
14b0: 20 20 20 20 3d 20 30 78 33 35 2c 0a 20 20 20 20 = 0x35,.
14c0: 4d 45 54 41 5f 53 45 54 50 41 4c 45 4e 54 52 49 META_SETPALENTRI
14d0: 45 53 20 20 20 20 20 20 20 20 20 3d 20 30 78 33 ES = 0x3
14e0: 37 2c 0a 20 20 20 20 4d 45 54 41 5f 43 52 45 41 7,. META_CREA
14f0: 54 45 50 41 4c 45 54 54 45 20 20 20 20 20 20 20 TEPALETTE
1500: 20 20 3d 20 30 78 66 37 2c 0a 20 20 20 20 4d 45 = 0xf7,. ME
1510: 54 41 5f 53 45 54 42 4b 4d 4f 44 45 20 20 20 20 TA_SETBKMODE
1520: 20 20 20 20 20 20 20 20 20 3d 20 30 78 31 30 32 = 0x102
1530: 2c 0a 20 20 20 20 4d 45 54 41 5f 53 45 54 4d 41 ,. META_SETMA
1540: 50 4d 4f 44 45 20 20 20 20 20 20 20 20 20 20 20 PMODE
1550: 20 3d 20 30 78 31 30 33 2c 0a 20 20 20 20 4d 45 = 0x103,. ME
1560: 54 41 5f 53 45 54 52 4f 50 32 20 20 20 20 20 20 TA_SETROP2
1570: 20 20 20 20 20 20 20 20 20 3d 20 30 78 31 30 34 = 0x104
1580: 2c 0a 20 20 20 20 4d 45 54 41 5f 53 45 54 52 45 ,. META_SETRE
1590: 4c 41 42 53 20 20 20 20 20 20 20 20 20 20 20 20 LABS
15a0: 20 3d 20 30 78 31 30 35 2c 0a 20 20 20 20 4d 45 = 0x105,. ME
15b0: 54 41 5f 53 45 54 50 4f 4c 59 46 49 4c 4c 4d 4f TA_SETPOLYFILLMO
15c0: 44 45 20 20 20 20 20 20 20 3d 20 30 78 31 30 36 DE = 0x106
15d0: 2c 0a 20 20 20 20 4d 45 54 41 5f 53 45 54 53 54 ,. META_SETST
15e0: 52 45 54 43 48 42 4c 54 4d 4f 44 45 20 20 20 20 RETCHBLTMODE
15f0: 20 3d 20 30 78 31 30 37 2c 0a 20 20 20 20 4d 45 = 0x107,. ME
1600: 54 41 5f 53 45 54 54 45 58 54 43 48 41 52 45 58 TA_SETTEXTCHAREX
1610: 54 52 41 20 20 20 20 20 20 3d 20 30 78 31 30 38 TRA = 0x108
1620: 2c 0a 20 20 20 20 4d 45 54 41 5f 52 45 53 54 4f ,. META_RESTO
1630: 52 45 44 43 20 20 20 20 20 20 20 20 20 20 20 20 REDC
1640: 20 3d 20 30 78 31 32 37 2c 0a 20 20 20 20 4d 45 = 0x127,. ME
1650: 54 41 5f 49 4e 56 45 52 54 52 45 47 49 4f 4e 20 TA_INVERTREGION
1660: 20 20 20 20 20 20 20 20 20 3d 20 30 78 31 32 41 = 0x12A
1670: 2c 0a 20 20 20 20 4d 45 54 41 5f 50 41 49 4e 54 ,. META_PAINT
1680: 52 45 47 49 4f 4e 20 20 20 20 20 20 20 20 20 20 REGION
1690: 20 3d 20 30 78 31 32 42 2c 0a 20 20 20 20 4d 45 = 0x12B,. ME
16a0: 54 41 5f 53 45 4c 45 43 54 43 4c 49 50 52 45 47 TA_SELECTCLIPREG
16b0: 49 4f 4e 20 20 20 20 20 20 3d 20 30 78 31 32 43 ION = 0x12C
16c0: 2c 0a 20 20 20 20 4d 45 54 41 5f 53 45 4c 45 43 ,. META_SELEC
16d0: 54 4f 42 4a 45 43 54 20 20 20 20 20 20 20 20 20 TOBJECT
16e0: 20 3d 20 30 78 31 32 44 2c 0a 20 20 20 20 4d 45 = 0x12D,. ME
16f0: 54 41 5f 53 45 54 54 45 58 54 41 4c 49 47 4e 20 TA_SETTEXTALIGN
1700: 20 20 20 20 20 20 20 20 20 3d 20 30 78 31 32 45 = 0x12E
1710: 2c 0a 20 20 20 20 4d 45 54 41 5f 52 45 53 49 5a ,. META_RESIZ
1720: 45 50 41 4c 45 54 54 45 20 20 20 20 20 20 20 20 EPALETTE
1730: 20 3d 20 30 78 31 33 39 2c 0a 20 20 20 20 4d 45 = 0x139,. ME
1740: 54 41 5f 44 49 42 43 52 45 41 54 45 50 41 54 54 TA_DIBCREATEPATT
1750: 45 52 4e 42 52 55 53 48 20 3d 20 30 78 31 34 32 ERNBRUSH = 0x142
1760: 2c 0a 20 20 20 20 4d 45 54 41 5f 53 45 54 4c 41 ,. META_SETLA
1770: 59 4f 55 54 20 20 20 20 20 20 20 20 20 20 20 20 YOUT
1780: 20 3d 20 30 78 31 34 39 2c 0a 20 20 20 20 4d 45 = 0x149,. ME
1790: 54 41 5f 44 45 4c 45 54 45 4f 42 4a 45 43 54 20 TA_DELETEOBJECT
17a0: 20 20 20 20 20 20 20 20 20 3d 20 30 78 31 46 30 = 0x1F0
17b0: 2c 0a 20 20 20 20 4d 45 54 41 5f 43 52 45 41 54 ,. META_CREAT
17c0: 45 50 41 54 54 45 52 4e 42 52 55 53 48 20 20 20 EPATTERNBRUSH
17d0: 20 3d 20 30 78 31 46 39 2c 0a 20 20 20 20 4d 45 = 0x1F9,. ME
17e0: 54 41 5f 53 45 54 42 4b 43 4f 4c 4f 52 20 20 20 TA_SETBKCOLOR
17f0: 20 20 20 20 20 20 20 20 20 3d 20 30 78 32 30 31 = 0x201
1800: 2c 0a 20 20 20 20 4d 45 54 41 5f 53 45 54 54 45 ,. META_SETTE
1810: 58 54 43 4f 4c 4f 52 20 20 20 20 20 20 20 20 20 XTCOLOR
1820: 20 3d 20 30 78 32 30 39 2c 0a 20 20 20 20 4d 45 = 0x209,. ME
1830: 54 41 5f 53 45 54 54 45 58 54 4a 55 53 54 49 46 TA_SETTEXTJUSTIF
1840: 49 43 41 54 49 4f 4e 20 20 3d 20 30 78 32 30 41 ICATION = 0x20A
1850: 2c 0a 20 20 20 20 4d 45 54 41 5f 53 45 54 57 49 ,. META_SETWI
1860: 4e 44 4f 57 4f 52 47 20 20 20 20 20 20 20 20 20 NDOWORG
1870: 20 3d 20 30 78 32 30 42 2c 0a 20 20 20 20 4d 45 = 0x20B,. ME
1880: 54 41 5f 53 45 54 57 49 4e 44 4f 57 45 58 54 20 TA_SETWINDOWEXT
1890: 20 20 20 20 20 20 20 20 20 3d 20 30 78 32 30 43 = 0x20C
18a0: 2c 0a 20 20 20 20 4d 45 54 41 5f 53 45 54 56 49 ,. META_SETVI
18b0: 45 57 50 4f 52 54 4f 52 47 20 20 20 20 20 20 20 EWPORTORG
18c0: 20 3d 20 30 78 32 30 44 2c 0a 20 20 20 20 4d 45 = 0x20D,. ME
18d0: 54 41 5f 53 45 54 56 49 45 57 50 4f 52 54 45 58 TA_SETVIEWPORTEX
18e0: 54 20 20 20 20 20 20 20 20 3d 20 30 78 32 30 45 T = 0x20E
18f0: 2c 0a 20 20 20 20 4d 45 54 41 5f 4f 46 46 53 45 ,. META_OFFSE
1900: 54 57 49 4e 44 4f 57 4f 52 47 20 20 20 20 20 20 TWINDOWORG
1910: 20 3d 20 30 78 32 30 46 2c 0a 20 20 20 20 4d 45 = 0x20F,. ME
1920: 54 41 5f 4f 46 46 53 45 54 56 49 45 57 50 4f 52 TA_OFFSETVIEWPOR
1930: 54 4f 52 47 20 20 20 20 20 3d 20 30 78 32 31 31 TORG = 0x211
1940: 2c 0a 20 20 20 20 4d 45 54 41 5f 4c 49 4e 45 54 ,. META_LINET
1950: 4f 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 O
1960: 20 3d 20 30 78 32 31 33 2c 0a 20 20 20 20 4d 45 = 0x213,. ME
1970: 54 41 5f 4d 4f 56 45 54 4f 20 20 20 20 20 20 20 TA_MOVETO
1980: 20 20 20 20 20 20 20 20 20 3d 20 30 78 32 31 34 = 0x214
1990: 2c 0a 20 20 20 20 4d 45 54 41 5f 4f 46 46 53 45 ,. META_OFFSE
19a0: 54 43 4c 49 50 52 47 4e 20 20 20 20 20 20 20 20 TCLIPRGN
19b0: 20 3d 20 30 78 32 32 30 2c 0a 20 20 20 20 4d 45 = 0x220,. ME
19c0: 54 41 5f 46 49 4c 4c 52 45 47 49 4f 4e 20 20 20 TA_FILLREGION
19d0: 20 20 20 20 20 20 20 20 20 3d 20 30 78 32 32 38 = 0x228
19e0: 2c 0a 20 20 20 20 4d 45 54 41 5f 53 45 54 4d 41 ,. META_SETMA
19f0: 50 50 45 52 46 4c 41 47 53 20 20 20 20 20 20 20 PPERFLAGS
1a00: 20 3d 20 30 78 32 33 31 2c 0a 20 20 20 20 4d 45 = 0x231,. ME
1a10: 54 41 5f 53 45 4c 45 43 54 50 41 4c 45 54 54 45 TA_SELECTPALETTE
1a20: 20 20 20 20 20 20 20 20 20 3d 20 30 78 32 33 34 = 0x234
1a30: 2c 0a 20 20 20 20 4d 45 54 41 5f 43 52 45 41 54 ,. META_CREAT
1a40: 45 50 45 4e 49 4e 44 49 52 45 43 54 20 20 20 20 EPENINDIRECT
1a50: 20 3d 20 30 78 32 46 41 2c 0a 20 20 20 20 4d 45 = 0x2FA,. ME
1a60: 54 41 5f 43 52 45 41 54 45 46 4f 4e 54 49 4e 44 TA_CREATEFONTIND
1a70: 49 52 45 43 54 20 20 20 20 3d 20 30 78 32 46 42 IRECT = 0x2FB
1a80: 2c 0a 20 20 20 20 4d 45 54 41 5f 43 52 45 41 54 ,. META_CREAT
1a90: 45 42 52 55 53 48 49 4e 44 49 52 45 43 54 20 20 EBRUSHINDIRECT
1aa0: 20 3d 20 30 78 32 46 43 2c 0a 20 20 20 20 4d 45 = 0x2FC,. ME
1ab0: 54 41 5f 50 4f 4c 59 47 4f 4e 20 20 20 20 20 20 TA_POLYGON
1ac0: 20 20 20 20 20 20 20 20 20 3d 20 30 78 33 32 34 = 0x324
1ad0: 2c 0a 20 20 20 20 4d 45 54 41 5f 50 4f 4c 59 4c ,. META_POLYL
1ae0: 49 4e 45 20 20 20 20 20 20 20 20 20 20 20 20 20 INE
1af0: 20 3d 20 30 78 33 32 35 2c 0a 20 20 20 20 4d 45 = 0x325,. ME
1b00: 54 41 5f 53 43 41 4c 45 57 49 4e 44 4f 57 45 58 TA_SCALEWINDOWEX
1b10: 54 20 20 20 20 20 20 20 20 3d 20 30 78 34 31 30 T = 0x410
1b20: 2c 0a 20 20 20 20 4d 45 54 41 5f 53 43 41 4c 45 ,. META_SCALE
1b30: 56 49 45 57 50 4f 52 54 45 58 54 20 20 20 20 20 VIEWPORTEXT
1b40: 20 3d 20 30 78 34 31 32 2c 0a 20 20 20 20 4d 45 = 0x412,. ME
1b50: 54 41 5f 45 58 43 4c 55 44 45 43 4c 49 50 52 45 TA_EXCLUDECLIPRE
1b60: 43 54 20 20 20 20 20 20 20 3d 20 30 78 34 31 35 CT = 0x415
1b70: 2c 0a 20 20 20 20 4d 45 54 41 5f 49 4e 54 45 52 ,. META_INTER
1b80: 53 45 43 54 43 4c 49 50 52 45 43 54 20 20 20 20 SECTCLIPRECT
1b90: 20 3d 20 30 78 34 31 36 2c 0a 20 20 20 20 4d 45 = 0x416,. ME
1ba0: 54 41 5f 45 4c 4c 49 50 53 45 20 20 20 20 20 20 TA_ELLIPSE
1bb0: 20 20 20 20 20 20 20 20 20 3d 20 30 78 34 31 38 = 0x418
1bc0: 2c 0a 20 20 20 20 4d 45 54 41 5f 46 4c 4f 4f 44 ,. META_FLOOD
1bd0: 46 49 4c 4c 20 20 20 20 20 20 20 20 20 20 20 20 FILL
1be0: 20 3d 20 30 78 34 31 39 2c 0a 20 20 20 20 4d 45 = 0x419,. ME
1bf0: 54 41 5f 52 45 43 54 41 4e 47 4c 45 20 20 20 20 TA_RECTANGLE
1c00: 20 20 20 20 20 20 20 20 20 3d 20 30 78 34 31 42 = 0x41B
1c10: 2c 0a 20 20 20 20 4d 45 54 41 5f 53 45 54 50 49 ,. META_SETPI
1c20: 58 45 4c 20 20 20 20 20 20 20 20 20 20 20 20 20 XEL
1c30: 20 3d 20 30 78 34 31 46 2c 0a 20 20 20 20 4d 45 = 0x41F,. ME
1c40: 54 41 5f 46 52 41 4d 45 52 45 47 49 4f 4e 20 20 TA_FRAMEREGION
1c50: 20 20 20 20 20 20 20 20 20 3d 20 30 78 34 32 39 = 0x429
1c60: 2c 0a 20 20 20 20 4d 45 54 41 5f 41 4e 49 4d 41 ,. META_ANIMA
1c70: 54 45 50 41 4c 45 54 54 45 20 20 20 20 20 20 20 TEPALETTE
1c80: 20 3d 20 30 78 34 33 36 2c 0a 20 20 20 20 4d 45 = 0x436,. ME
1c90: 54 41 5f 54 45 58 54 4f 55 54 20 20 20 20 20 20 TA_TEXTOUT
1ca0: 20 20 20 20 20 20 20 20 20 3d 20 30 78 35 32 31 = 0x521
1cb0: 2c 0a 20 20 20 20 4d 45 54 41 5f 50 4f 4c 59 50 ,. META_POLYP
1cc0: 4f 4c 59 47 4f 4e 20 20 20 20 20 20 20 20 20 20 OLYGON
1cd0: 20 3d 20 30 78 35 33 38 2c 0a 20 20 20 20 4d 45 = 0x538,. ME
1ce0: 54 41 5f 45 58 54 46 4c 4f 4f 44 46 49 4c 4c 20 TA_EXTFLOODFILL
1cf0: 20 20 20 20 20 20 20 20 20 3d 20 30 78 35 34 38 = 0x548
1d00: 2c 0a 20 20 20 20 4d 45 54 41 5f 52 4f 55 4e 44 ,. META_ROUND
1d10: 52 45 43 54 20 20 20 20 20 20 20 20 20 20 20 20 RECT
1d20: 20 3d 20 30 78 36 31 43 2c 0a 20 20 20 20 4d 45 = 0x61C,. ME
1d30: 54 41 5f 50 41 54 42 4c 54 20 20 20 20 20 20 20 TA_PATBLT
1d40: 20 20 20 20 20 20 20 20 20 3d 20 30 78 36 31 44 = 0x61D
1d50: 2c 0a 20 20 20 20 4d 45 54 41 5f 45 53 43 41 50 ,. META_ESCAP
1d60: 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 E
1d70: 20 3d 20 30 78 36 32 36 2c 0a 20 20 20 20 4d 45 = 0x626,. ME
1d80: 54 41 5f 43 52 45 41 54 45 52 45 47 49 4f 4e 20 TA_CREATEREGION
1d90: 20 20 20 20 20 20 20 20 20 3d 20 30 78 36 46 46 = 0x6FF
1da0: 2c 0a 20 20 20 20 4d 45 54 41 5f 41 52 43 20 20 ,. META_ARC
1db0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dc0: 20 3d 20 30 78 38 31 37 2c 0a 20 20 20 20 4d 45 = 0x817,. ME
1dd0: 54 41 5f 50 49 45 20 20 20 20 20 20 20 20 20 20 TA_PIE
1de0: 20 20 20 20 20 20 20 20 20 3d 20 30 78 38 31 41 = 0x81A
1df0: 2c 0a 20 20 20 20 4d 45 54 41 5f 43 48 4f 52 44 ,. META_CHORD
1e00: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e10: 20 3d 20 30 78 38 33 30 2c 0a 20 20 20 20 4d 45 = 0x830,. ME
1e20: 54 41 5f 42 49 54 42 4c 54 20 20 20 20 20 20 20 TA_BITBLT
1e30: 20 20 20 20 20 20 20 20 20 3d 20 30 78 39 32 32 = 0x922
1e40: 2c 0a 20 20 20 20 4d 45 54 41 5f 44 49 42 42 49 ,. META_DIBBI
1e50: 54 42 4c 54 20 20 20 20 20 20 20 20 20 20 20 20 TBLT
1e60: 20 3d 20 30 78 39 34 30 2c 0a 20 20 20 20 4d 45 = 0x940,. ME
1e70: 54 41 5f 45 58 54 54 45 58 54 4f 55 54 20 20 20 TA_EXTTEXTOUT
1e80: 20 20 20 20 20 20 20 20 20 3d 20 30 78 41 33 32 = 0xA32
1e90: 2c 0a 20 20 20 20 4d 45 54 41 5f 53 54 52 45 54 ,. META_STRET
1ea0: 43 48 42 4c 54 20 20 20 20 20 20 20 20 20 20 20 CHBLT
1eb0: 20 3d 20 30 78 42 32 33 2c 0a 20 20 20 20 4d 45 = 0xB23,. ME
1ec0: 54 41 5f 44 49 42 53 54 52 45 54 43 48 42 4c 54 TA_DIBSTRETCHBLT
1ed0: 20 20 20 20 20 20 20 20 20 3d 20 30 78 42 34 31 = 0xB41
1ee0: 2c 0a 20 20 20 20 4d 45 54 41 5f 53 45 54 44 49 ,. META_SETDI
1ef0: 42 54 4f 44 45 56 20 20 20 20 20 20 20 20 20 20 BTODEV
1f00: 20 3d 20 30 78 44 33 33 2c 0a 20 20 20 20 4d 45 = 0xD33,. ME
1f10: 54 41 5f 53 54 52 45 54 43 48 44 49 42 20 20 20 TA_STRETCHDIB
1f20: 20 20 20 20 20 20 20 20 20 3d 20 30 78 46 34 33 = 0xF43
1f30: 0a 7d 0a 0a 2f 2f 20 45 4d 52 50 4f 4c 59 44 52 .}..// EMRPOLYDR
1f40: 41 57 0a 65 6e 75 6d 20 3a 20 42 59 54 45 20 7b AW.enum : BYTE {
1f50: 0a 20 20 20 20 50 54 5f 43 4c 4f 53 45 46 49 47 . PT_CLOSEFIG
1f60: 55 52 45 20 3d 20 31 2c 0a 20 20 20 20 50 54 5f URE = 1,. PT_
1f70: 4c 49 4e 45 54 4f 20 20 20 20 20 20 3d 20 32 2c LINETO = 2,
1f80: 0a 20 20 20 20 50 54 5f 42 45 5a 49 45 52 54 4f . PT_BEZIERTO
1f90: 20 20 20 20 3d 20 34 2c 0a 20 20 20 20 50 54 5f = 4,. PT_
1fa0: 4d 4f 56 45 54 4f 20 20 20 20 20 20 3d 20 36 0a MOVETO = 6.
1fb0: 7d 0a 0a 2f 2f 20 2d 2d 2d 2d 0a 2f 2f 20 50 49 }..// ----.// PI
1fc0: 58 45 4c 46 4f 52 4d 41 54 44 45 53 43 52 49 50 XELFORMATDESCRIP
1fd0: 54 4f 52 2e 69 50 69 78 65 6c 54 79 70 65 0a 65 TOR.iPixelType.e
1fe0: 6e 75 6d 20 3a 20 42 59 54 45 20 7b 0a 20 20 20 num : BYTE {.
1ff0: 20 50 46 44 5f 54 59 50 45 5f 52 47 42 41 20 20 PFD_TYPE_RGBA
2000: 20 20 20 20 20 3d 20 30 2c 0a 20 20 20 20 50 46 = 0,. PF
2010: 44 5f 54 59 50 45 5f 43 4f 4c 4f 52 49 4e 44 45 D_TYPE_COLORINDE
2020: 58 20 3d 20 31 0a 7d 0a 0a 64 65 70 72 65 63 61 X = 1.}..depreca
2030: 74 65 64 20 7b 0a 20 20 20 20 2f 2f 20 50 49 58 ted {. // PIX
2040: 45 4c 46 4f 52 4d 41 54 44 45 53 43 52 49 50 54 ELFORMATDESCRIPT
2050: 4f 52 2e 0a 20 20 20 20 63 6f 6e 73 74 20 62 79 OR.. const by
2060: 74 65 0a 20 20 20 20 50 46 44 5f 4d 41 49 4e 5f te. PFD_MAIN_
2070: 50 4c 41 4e 45 20 20 20 20 20 3d 20 30 2c 0a 20 PLANE = 0,.
2080: 20 20 20 50 46 44 5f 4f 56 45 52 4c 41 59 5f 50 PFD_OVERLAY_P
2090: 4c 41 4e 45 20 20 3d 20 31 2c 0a 20 20 20 20 50 LANE = 1,. P
20a0: 46 44 5f 55 4e 44 45 52 4c 41 59 5f 50 4c 41 4e FD_UNDERLAY_PLAN
20b0: 45 20 3d 20 2d 31 3b 0a 7d 0a 0a 2f 2f 20 50 49 E = -1;.}..// PI
20c0: 58 45 4c 46 4f 52 4d 41 54 44 45 53 43 52 49 50 XELFORMATDESCRIP
20d0: 54 4f 52 2e 64 77 46 6c 61 67 73 0a 63 6f 6e 73 TOR.dwFlags.cons
20e0: 74 20 44 57 4f 52 44 0a 50 46 44 5f 44 4f 55 42 t DWORD.PFD_DOUB
20f0: 4c 45 42 55 46 46 45 52 20 3d 20 30 78 30 30 30 LEBUFFER = 0x000
2100: 30 30 30 30 31 2c 0a 50 46 44 5f 53 54 45 52 45 00001,.PFD_STERE
2110: 4f 20 3d 20 30 78 30 30 30 30 30 30 30 32 2c 0a O = 0x00000002,.
2120: 50 46 44 5f 44 52 41 57 5f 54 4f 5f 57 49 4e 44 PFD_DRAW_TO_WIND
2130: 4f 57 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 OW = 0x0000
2140: 30 30 30 34 2c 0a 50 46 44 5f 44 52 41 57 5f 54 0004,.PFD_DRAW_T
2150: 4f 5f 42 49 54 4d 41 50 20 20 20 20 20 20 3d 20 O_BITMAP =
2160: 30 78 30 30 30 30 30 30 30 38 2c 0a 50 46 44 5f 0x00000008,.PFD_
2170: 53 55 50 50 4f 52 54 5f 47 44 49 20 20 20 20 20 SUPPORT_GDI
2180: 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 31 30 = 0x00000010
2190: 2c 0a 50 46 44 5f 53 55 50 50 4f 52 54 5f 4f 50 ,.PFD_SUPPORT_OP
21a0: 45 4e 47 4c 20 20 20 20 20 20 3d 20 30 78 30 30 ENGL = 0x00
21b0: 30 30 30 30 32 30 2c 0a 50 46 44 5f 47 45 4e 45 000020,.PFD_GENE
21c0: 52 49 43 5f 46 4f 52 4d 41 54 20 20 20 20 20 20 RIC_FORMAT
21d0: 3d 20 30 78 30 30 30 30 30 30 34 30 2c 0a 50 46 = 0x00000040,.PF
21e0: 44 5f 4e 45 45 44 5f 50 41 4c 45 54 54 45 20 20 D_NEED_PALETTE
21f0: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 = 0x000000
2200: 38 30 2c 0a 50 46 44 5f 4e 45 45 44 5f 53 59 53 80,.PFD_NEED_SYS
2210: 54 45 4d 5f 50 41 4c 45 54 54 45 20 3d 20 30 78 TEM_PALETTE = 0x
2220: 30 30 30 30 30 31 30 30 2c 0a 50 46 44 5f 53 57 00000100,.PFD_SW
2230: 41 50 5f 45 58 43 48 41 4e 47 45 20 20 20 20 20 AP_EXCHANGE
2240: 20 20 3d 20 30 78 30 30 30 30 30 32 30 30 2c 0a = 0x00000200,.
2250: 50 46 44 5f 53 57 41 50 5f 43 4f 50 59 20 20 20 PFD_SWAP_COPY
2260: 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 = 0x0000
2270: 30 34 30 30 2c 0a 50 46 44 5f 53 57 41 50 5f 4c 0400,.PFD_SWAP_L
2280: 41 59 45 52 5f 42 55 46 46 45 52 53 20 20 3d 20 AYER_BUFFERS =
2290: 30 78 30 30 30 30 30 38 30 30 2c 0a 50 46 44 5f 0x00000800,.PFD_
22a0: 47 45 4e 45 52 49 43 5f 41 43 43 45 4c 45 52 41 GENERIC_ACCELERA
22b0: 54 45 44 20 3d 20 30 78 30 30 30 30 31 30 30 30 TED = 0x00001000
22c0: 2c 0a 50 46 44 5f 53 55 50 50 4f 52 54 5f 44 49 ,.PFD_SUPPORT_DI
22d0: 52 45 43 54 44 52 41 57 20 20 3d 20 30 78 30 30 RECTDRAW = 0x00
22e0: 30 30 32 30 30 30 2c 0a 0a 2f 2a 20 50 49 58 45 002000,../* PIXE
22f0: 4c 46 4f 52 4d 41 54 44 45 53 43 52 49 50 54 4f LFORMATDESCRIPTO
2300: 52 20 66 6c 61 67 73 20 66 6f 72 20 75 73 65 20 R flags for use
2310: 69 6e 20 43 68 6f 6f 73 65 50 69 78 65 6c 46 6f in ChoosePixelFo
2320: 72 6d 61 74 20 6f 6e 6c 79 20 2a 2f 0a 50 46 44 rmat only */.PFD
2330: 5f 44 45 50 54 48 5f 44 4f 4e 54 43 41 52 45 20 _DEPTH_DONTCARE
2340: 20 20 20 20 20 20 20 3d 20 30 78 32 30 30 30 30 = 0x20000
2350: 30 30 30 2c 0a 50 46 44 5f 44 4f 55 42 4c 45 42 000,.PFD_DOUBLEB
2360: 55 46 46 45 52 5f 44 4f 4e 54 43 41 52 45 20 3d UFFER_DONTCARE =
2370: 20 30 78 34 30 30 30 30 30 30 30 2c 0a 50 46 44 0x40000000,.PFD
2380: 5f 53 54 45 52 45 4f 5f 44 4f 4e 54 43 41 52 45 _STEREO_DONTCARE
2390: 20 20 20 20 20 20 20 3d 20 30 78 38 30 30 30 30 = 0x80000
23a0: 30 30 30 3b 0a 0a 2f 2f 20 2d 2d 2d 2d 0a 0a 63 000;..// ----..c
23b0: 6f 6e 73 74 20 44 57 4f 52 44 0a 42 4c 41 43 4b onst DWORD.BLACK
23c0: 4e 45 53 53 20 20 20 3d 20 30 78 30 30 30 30 34 NESS = 0x00004
23d0: 32 2c 0a 4e 4f 54 53 52 43 45 52 41 53 45 20 3d 2,.NOTSRCERASE =
23e0: 20 30 78 31 31 30 30 41 36 2c 0a 4e 4f 54 53 52 0x1100A6,.NOTSR
23f0: 43 43 4f 50 59 20 20 3d 20 30 78 33 33 30 30 30 CCOPY = 0x33000
2400: 38 2c 0a 53 52 43 45 52 41 53 45 20 20 20 20 3d 8,.SRCERASE =
2410: 20 30 78 34 34 30 33 32 38 2c 0a 44 53 54 49 4e 0x440328,.DSTIN
2420: 56 45 52 54 20 20 20 3d 20 30 78 35 35 30 30 30 VERT = 0x55000
2430: 39 2c 0a 50 41 54 49 4e 56 45 52 54 20 20 20 3d 9,.PATINVERT =
2440: 20 30 78 35 41 30 30 34 39 2c 0a 53 52 43 49 4e 0x5A0049,.SRCIN
2450: 56 45 52 54 20 20 20 3d 20 30 78 36 36 30 30 34 VERT = 0x66004
2460: 36 2c 0a 53 52 43 41 4e 44 20 20 20 20 20 20 3d 6,.SRCAND =
2470: 20 30 78 38 38 30 30 43 36 2c 0a 4d 45 52 47 45 0x8800C6,.MERGE
2480: 50 41 49 4e 54 20 20 3d 20 30 78 42 42 30 32 32 PAINT = 0xBB022
2490: 36 2c 0a 4d 45 52 47 45 43 4f 50 59 20 20 20 3d 6,.MERGECOPY =
24a0: 20 30 78 43 30 30 30 43 41 2c 0a 53 52 43 43 4f 0xC000CA,.SRCCO
24b0: 50 59 20 20 20 20 20 3d 20 30 78 43 43 30 30 32 PY = 0xCC002
24c0: 30 2c 0a 53 52 43 50 41 49 4e 54 20 20 20 20 3d 0,.SRCPAINT =
24d0: 20 30 78 45 45 30 30 38 36 2c 0a 50 41 54 43 4f 0xEE0086,.PATCO
24e0: 50 59 20 20 20 20 20 3d 20 30 78 46 30 30 30 32 PY = 0xF0002
24f0: 31 2c 0a 50 41 54 50 41 49 4e 54 20 20 20 20 3d 1,.PATPAINT =
2500: 20 30 78 46 42 30 41 30 39 2c 0a 57 48 49 54 45 0xFB0A09,.WHITE
2510: 4e 45 53 53 20 20 20 3d 20 30 78 46 46 30 30 36 NESS = 0xFF006
2520: 32 3b 0a 73 74 61 74 69 63 0a 0a 69 66 20 28 57 2;.static..if (W
2530: 49 4e 56 45 52 20 3e 3d 20 30 78 30 35 30 30 29 INVER >= 0x0500)
2540: 0a 7b 0a 20 20 20 20 63 6f 6e 73 74 20 44 57 4f .{. const DWO
2550: 52 44 0a 20 20 20 20 4e 4f 4d 49 52 52 4f 52 42 RD. NOMIRRORB
2560: 49 54 4d 41 50 20 3d 20 30 78 38 30 30 30 30 30 ITMAP = 0x800000
2570: 30 30 2c 0a 20 20 20 20 43 41 50 54 55 52 45 42 00,. CAPTUREB
2580: 4c 54 20 20 20 20 20 3d 20 30 78 34 30 30 30 30 LT = 0x40000
2590: 30 30 30 3b 0a 7d 0a 0a 2f 2f 20 47 65 74 52 4f 000;.}..// GetRO
25a0: 50 32 28 29 2c 20 53 65 74 52 4f 50 32 28 29 0a P2(), SetROP2().
25b0: 65 6e 75 6d 20 3a 20 69 6e 74 20 7b 0a 20 20 20 enum : int {.
25c0: 20 52 32 5f 42 4c 41 43 4b 20 20 20 20 20 20 20 R2_BLACK
25d0: 3d 20 31 2c 0a 20 20 20 20 52 32 5f 4e 4f 54 4d = 1,. R2_NOTM
25e0: 45 52 47 45 50 45 4e 20 3d 20 32 2c 0a 20 20 20 ERGEPEN = 2,.
25f0: 20 52 32 5f 4d 41 53 4b 4e 4f 54 50 45 4e 20 20 R2_MASKNOTPEN
2600: 3d 20 33 2c 0a 20 20 20 20 52 32 5f 4e 4f 54 43 = 3,. R2_NOTC
2610: 4f 50 59 50 45 4e 20 20 3d 20 34 2c 0a 20 20 20 OPYPEN = 4,.
2620: 20 52 32 5f 4d 41 53 4b 50 45 4e 4e 4f 54 20 20 R2_MASKPENNOT
2630: 3d 20 35 2c 0a 20 20 20 20 52 32 5f 4e 4f 54 20 = 5,. R2_NOT
2640: 20 20 20 20 20 20 20 20 3d 20 36 2c 0a 20 20 20 = 6,.
2650: 20 52 32 5f 58 4f 52 50 45 4e 20 20 20 20 20 20 R2_XORPEN
2660: 3d 20 37 2c 0a 20 20 20 20 52 32 5f 4e 4f 54 4d = 7,. R2_NOTM
2670: 41 53 4b 50 45 4e 20 20 3d 20 38 2c 0a 20 20 20 ASKPEN = 8,.
2680: 20 52 32 5f 4d 41 53 4b 50 45 4e 20 20 20 20 20 R2_MASKPEN
2690: 3d 20 39 2c 0a 20 20 20 20 52 32 5f 4e 4f 54 58 = 9,. R2_NOTX
26a0: 4f 52 50 45 4e 20 20 20 3d 20 31 30 2c 0a 20 20 ORPEN = 10,.
26b0: 20 20 52 32 5f 4e 4f 50 20 20 20 20 20 20 20 20 R2_NOP
26c0: 20 3d 20 31 31 2c 0a 20 20 20 20 52 32 5f 4d 45 = 11,. R2_ME
26d0: 52 47 45 4e 4f 54 50 45 4e 20 3d 20 31 32 2c 0a RGENOTPEN = 12,.
26e0: 20 20 20 20 52 32 5f 43 4f 50 59 50 45 4e 20 20 R2_COPYPEN
26f0: 20 20 20 3d 20 31 33 2c 0a 20 20 20 20 52 32 5f = 13,. R2_
2700: 4d 45 52 47 45 50 45 4e 4e 4f 54 20 3d 20 31 34 MERGEPENNOT = 14
2710: 2c 0a 20 20 20 20 52 32 5f 4d 45 52 47 45 50 45 ,. R2_MERGEPE
2720: 4e 20 20 20 20 3d 20 31 35 2c 0a 20 20 20 20 52 N = 15,. R
2730: 32 5f 57 48 49 54 45 20 20 20 20 20 20 20 3d 20 2_WHITE =
2740: 31 36 0a 7d 0a 0a 63 6f 6e 73 74 20 52 32 5f 4c 16.}..const R2_L
2750: 41 53 54 20 3d 20 52 32 5f 57 48 49 54 45 3b 0a AST = R2_WHITE;.
2760: 0a 2f 2f 20 43 68 65 63 6b 43 6f 6c 6f 72 73 49 .// CheckColorsI
2770: 6e 47 61 6d 75 74 28 29 0a 63 6f 6e 73 74 20 75 nGamut().const u
2780: 62 79 74 65 0a 43 4d 5f 49 4e 5f 47 41 4d 55 54 byte.CM_IN_GAMUT
2790: 20 20 20 20 20 3d 20 30 2c 0a 43 4d 5f 4f 55 54 = 0,.CM_OUT
27a0: 5f 4f 46 5f 47 41 4d 55 54 20 3d 20 32 35 35 3b _OF_GAMUT = 255;
27b0: 0a 0a 2f 2a 20 55 70 64 61 74 65 49 43 4d 52 65 ../* UpdateICMRe
27c0: 67 4b 65 79 20 43 6f 6e 73 74 61 6e 74 73 20 20 gKey Constants
27d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 2a 2f 0a */.
27e0: 63 6f 6e 73 74 20 69 6e 74 0a 49 43 4d 5f 41 44 const int.ICM_AD
27f0: 44 50 52 4f 46 49 4c 45 20 20 20 20 20 20 20 20 DPROFILE
2800: 20 20 3d 20 31 2c 0a 49 43 4d 5f 44 45 4c 45 54 = 1,.ICM_DELET
2810: 45 50 52 4f 46 49 4c 45 20 20 20 20 20 20 20 3d EPROFILE =
2820: 20 32 2c 0a 49 43 4d 5f 51 55 45 52 59 50 52 4f 2,.ICM_QUERYPRO
2830: 46 49 4c 45 20 20 20 20 20 20 20 20 3d 20 33 2c FILE = 3,
2840: 0a 49 43 4d 5f 53 45 54 44 45 46 41 55 4c 54 50 .ICM_SETDEFAULTP
2850: 52 4f 46 49 4c 45 20 20 20 3d 20 34 2c 0a 49 43 ROFILE = 4,.IC
2860: 4d 5f 52 45 47 49 53 54 45 52 49 43 4d 41 54 43 M_REGISTERICMATC
2870: 48 45 52 20 20 20 3d 20 35 2c 0a 49 43 4d 5f 55 HER = 5,.ICM_U
2880: 4e 52 45 47 49 53 54 45 52 49 43 4d 41 54 43 48 NREGISTERICMATCH
2890: 45 52 20 3d 20 36 2c 0a 49 43 4d 5f 51 55 45 52 ER = 6,.ICM_QUER
28a0: 59 4d 41 54 43 48 20 20 20 20 20 20 20 20 20 20 YMATCH
28b0: 3d 20 37 3b 0a 0a 65 6e 75 6d 20 3a 20 69 6e 74 = 7;..enum : int
28c0: 20 7b 0a 20 20 20 20 52 47 4e 5f 41 4e 44 20 20 {. RGN_AND
28d0: 3d 20 31 2c 0a 20 20 20 20 52 47 4e 5f 4f 52 20 = 1,. RGN_OR
28e0: 20 20 3d 20 32 2c 0a 20 20 20 20 52 47 4e 5f 58 = 2,. RGN_X
28f0: 4f 52 20 20 3d 20 33 2c 0a 20 20 20 20 52 47 4e OR = 3,. RGN
2900: 5f 44 49 46 46 20 3d 20 34 2c 0a 20 20 20 20 52 _DIFF = 4,. R
2910: 47 4e 5f 43 4f 50 59 20 3d 20 35 0a 7d 0a 0a 63 GN_COPY = 5.}..c
2920: 6f 6e 73 74 20 52 47 4e 5f 4d 49 4e 20 3d 20 52 onst RGN_MIN = R
2930: 47 4e 5f 41 4e 44 3b 0a 63 6f 6e 73 74 20 52 47 GN_AND;.const RG
2940: 4e 5f 4d 41 58 20 3d 20 52 47 4e 5f 43 4f 50 59 N_MAX = RGN_COPY
2950: 3b 0a 0a 2f 2f 20 52 65 74 75 72 6e 20 76 61 6c ;..// Return val
2960: 75 65 73 20 66 6f 72 20 43 6f 6d 62 69 6e 65 52 ues for CombineR
2970: 67 6e 28 29 0a 65 6e 75 6d 20 7b 0a 20 20 20 20 gn().enum {.
2980: 4e 55 4c 4c 52 45 47 49 4f 4e 20 20 20 20 3d 20 NULLREGION =
2990: 31 2c 0a 20 20 20 20 53 49 4d 50 4c 45 52 45 47 1,. SIMPLEREG
29a0: 49 4f 4e 20 20 3d 20 32 2c 0a 20 20 20 20 43 4f ION = 2,. CO
29b0: 4d 50 4c 45 58 52 45 47 49 4f 4e 20 3d 20 33 0a MPLEXREGION = 3.
29c0: 7d 0a 0a 63 6f 6e 73 74 20 45 52 52 4f 52 20 3d }..const ERROR =
29d0: 20 30 3b 0a 61 6c 69 61 73 20 45 52 52 4f 52 20 0;.alias ERROR
29e0: 52 47 4e 5f 45 52 52 4f 52 3b 0a 0a 2f 2f 20 43 RGN_ERROR;..// C
29f0: 72 65 61 74 65 44 49 42 69 74 6d 61 70 28 29 0a reateDIBitmap().
2a00: 63 6f 6e 73 74 20 44 57 4f 52 44 20 43 42 4d 5f const DWORD CBM_
2a10: 49 4e 49 54 20 3d 20 34 3b 0a 0a 2f 2f 20 43 72 INIT = 4;..// Cr
2a20: 65 61 74 65 44 49 42 69 74 6d 61 70 28 29 0a 65 eateDIBitmap().e
2a30: 6e 75 6d 20 3a 20 55 49 4e 54 20 7b 0a 20 20 20 num : UINT {.
2a40: 20 44 49 42 5f 52 47 42 5f 43 4f 4c 4f 52 53 20 DIB_RGB_COLORS
2a50: 3d 20 30 2c 0a 20 20 20 20 44 49 42 5f 50 41 4c = 0,. DIB_PAL
2a60: 5f 43 4f 4c 4f 52 53 20 3d 20 31 0a 7d 0a 0a 2f _COLORS = 1.}../
2a70: 2f 20 2d 2d 2d 0a 2f 2f 20 20 56 61 6c 75 65 73 / ---.// Values
2a80: 20 66 6f 72 20 4c 4f 47 46 4f 4e 54 20 61 6e 64 for LOGFONT and
2a90: 20 43 72 65 61 74 65 46 6f 6e 74 28 29 0a 0a 2f CreateFont()../
2aa0: 2f 20 46 49 58 4d 45 3a 20 46 6f 72 20 44 2c 20 / FIXME: For D,
2ab0: 72 65 70 6c 61 63 65 20 77 69 74 68 20 6c 66 46 replace with lfF
2ac0: 61 63 65 4e 61 6d 65 2e 6c 65 6e 67 74 68 28 29 aceName.length()
2ad0: 0a 63 6f 6e 73 74 20 4c 46 5f 46 41 43 45 53 49 .const LF_FACESI
2ae0: 5a 45 20 20 20 20 20 3d 20 33 32 3b 0a 63 6f 6e ZE = 32;.con
2af0: 73 74 20 4c 46 5f 46 55 4c 4c 46 41 43 45 53 49 st LF_FULLFACESI
2b00: 5a 45 20 3d 20 36 34 3b 0a 0a 2f 2f 20 46 49 58 ZE = 64;..// FIX
2b10: 4d 45 3a 20 4e 6f 74 20 6e 65 65 64 65 64 20 66 ME: Not needed f
2b20: 6f 72 20 44 2c 20 6f 6e 6c 79 20 45 58 54 4c 4f or D, only EXTLO
2b30: 47 46 4f 4e 54 0a 63 6f 6e 73 74 20 45 4c 46 5f GFONT.const ELF_
2b40: 56 45 4e 44 4f 52 5f 53 49 5a 45 20 3d 20 34 3b VENDOR_SIZE = 4;
2b50: 0a 0a 2f 2f 20 3f 3f 3f 0a 63 6f 6e 73 74 20 45 ..// ???.const E
2b60: 4c 46 5f 56 45 52 53 49 4f 4e 20 20 20 20 20 20 LF_VERSION
2b70: 20 3d 20 30 3b 0a 63 6f 6e 73 74 20 45 4c 46 5f = 0;.const ELF_
2b80: 43 55 4c 54 55 52 45 5f 4c 41 54 49 4e 20 3d 20 CULTURE_LATIN =
2b90: 30 3b 0a 0a 2f 2f 20 4c 4f 47 46 4f 4e 54 2e 6c 0;..// LOGFONT.l
2ba0: 66 57 65 69 67 68 74 0a 63 6f 6e 73 74 20 4c 4f fWeight.const LO
2bb0: 4e 47 0a 46 57 5f 44 4f 4e 54 43 41 52 45 20 20 NG.FW_DONTCARE
2bc0: 20 3d 20 30 2c 0a 46 57 5f 54 48 49 4e 20 20 20 = 0,.FW_THIN
2bd0: 20 20 20 20 3d 20 31 30 30 2c 0a 46 57 5f 45 58 = 100,.FW_EX
2be0: 54 52 41 4c 49 47 48 54 20 3d 20 32 30 30 2c 0a TRALIGHT = 200,.
2bf0: 46 57 5f 55 4c 54 52 41 4c 49 47 48 54 20 3d 20 FW_ULTRALIGHT =
2c00: 46 57 5f 45 58 54 52 41 4c 49 47 48 54 2c 0a 46 FW_EXTRALIGHT,.F
2c10: 57 5f 4c 49 47 48 54 20 20 20 20 20 20 3d 20 33 W_LIGHT = 3
2c20: 30 30 2c 0a 46 57 5f 4e 4f 52 4d 41 4c 20 20 20 00,.FW_NORMAL
2c30: 20 20 3d 20 34 30 30 2c 0a 46 57 5f 52 45 47 55 = 400,.FW_REGU
2c40: 4c 41 52 20 20 20 20 3d 20 46 57 5f 4e 4f 52 4d LAR = FW_NORM
2c50: 41 4c 2c 0a 46 57 5f 4d 45 44 49 55 4d 20 20 20 AL,.FW_MEDIUM
2c60: 20 20 3d 20 35 30 30 2c 0a 46 57 5f 53 45 4d 49 = 500,.FW_SEMI
2c70: 42 4f 4c 44 20 20 20 3d 20 36 30 30 2c 0a 46 57 BOLD = 600,.FW
2c80: 5f 44 45 4d 49 42 4f 4c 44 20 20 20 3d 20 46 57 _DEMIBOLD = FW
2c90: 5f 53 45 4d 49 42 4f 4c 44 2c 0a 46 57 5f 42 4f _SEMIBOLD,.FW_BO
2ca0: 4c 44 20 20 20 20 20 20 20 3d 20 37 30 30 2c 0a LD = 700,.
2cb0: 46 57 5f 45 58 54 52 41 42 4f 4c 44 20 20 3d 20 FW_EXTRABOLD =
2cc0: 38 30 30 2c 0a 46 57 5f 55 4c 54 52 41 42 4f 4c 800,.FW_ULTRABOL
2cd0: 44 20 20 3d 20 46 57 5f 45 58 54 52 41 42 4f 4c D = FW_EXTRABOL
2ce0: 44 2c 0a 46 57 5f 48 45 41 56 59 20 20 20 20 20 D,.FW_HEAVY
2cf0: 20 3d 20 39 30 30 2c 0a 46 57 5f 42 4c 41 43 4b = 900,.FW_BLACK
2d00: 20 20 20 20 20 20 3d 20 46 57 5f 48 45 41 56 59 = FW_HEAVY
2d10: 3b 0a 0a 2f 2f 20 4c 4f 47 46 4f 4e 54 2e 6c 66 ;..// LOGFONT.lf
2d20: 43 68 61 72 53 65 74 0a 65 6e 75 6d 20 3a 20 44 CharSet.enum : D
2d30: 57 4f 52 44 20 7b 0a 20 20 20 20 41 4e 53 49 5f WORD {. ANSI_
2d40: 43 48 41 52 53 45 54 20 20 20 20 20 20 20 20 3d CHARSET =
2d50: 20 30 2c 0a 20 20 20 20 44 45 46 41 55 4c 54 5f 0,. DEFAULT_
2d60: 43 48 41 52 53 45 54 20 20 20 20 20 3d 20 31 2c CHARSET = 1,
2d70: 0a 20 20 20 20 53 59 4d 42 4f 4c 5f 43 48 41 52 . SYMBOL_CHAR
2d80: 53 45 54 20 20 20 20 20 20 3d 20 32 2c 0a 20 20 SET = 2,.
2d90: 20 20 4d 41 43 5f 43 48 41 52 53 45 54 20 20 20 MAC_CHARSET
2da0: 20 20 20 20 20 20 3d 20 37 37 2c 0a 20 20 20 20 = 77,.
2db0: 53 48 49 46 54 4a 49 53 5f 43 48 41 52 53 45 54 SHIFTJIS_CHARSET
2dc0: 20 20 20 20 3d 20 31 32 38 2c 0a 20 20 20 20 48 = 128,. H
2dd0: 41 4e 47 45 55 4c 5f 43 48 41 52 53 45 54 20 20 ANGEUL_CHARSET
2de0: 20 20 20 3d 20 31 32 39 2c 0a 20 20 20 20 48 41 = 129,. HA
2df0: 4e 47 55 4c 5f 43 48 41 52 53 45 54 20 20 20 20 NGUL_CHARSET
2e00: 20 20 3d 20 31 32 39 2c 0a 20 20 20 20 4a 4f 48 = 129,. JOH
2e10: 41 42 5f 43 48 41 52 53 45 54 20 20 20 20 20 20 AB_CHARSET
2e20: 20 3d 20 31 33 30 2c 0a 20 20 20 20 47 42 32 33 = 130,. GB23
2e30: 31 32 5f 43 48 41 52 53 45 54 20 20 20 20 20 20 12_CHARSET
2e40: 3d 20 31 33 34 2c 0a 20 20 20 20 43 48 49 4e 45 = 134,. CHINE
2e50: 53 45 42 49 47 35 5f 43 48 41 52 53 45 54 20 3d SEBIG5_CHARSET =
2e60: 20 31 33 36 2c 0a 20 20 20 20 47 52 45 45 4b 5f 136,. GREEK_
2e70: 43 48 41 52 53 45 54 20 20 20 20 20 20 20 3d 20 CHARSET =
2e80: 31 36 31 2c 0a 20 20 20 20 54 55 52 4b 49 53 48 161,. TURKISH
2e90: 5f 43 48 41 52 53 45 54 20 20 20 20 20 3d 20 31 _CHARSET = 1
2ea0: 36 32 2c 0a 20 20 20 20 56 49 45 54 4e 41 4d 45 62,. VIETNAME
2eb0: 53 45 5f 43 48 41 52 53 45 54 20 20 3d 20 31 36 SE_CHARSET = 16
2ec0: 33 2c 0a 20 20 20 20 48 45 42 52 45 57 5f 43 48 3,. HEBREW_CH
2ed0: 41 52 53 45 54 20 20 20 20 20 20 3d 20 31 37 37 ARSET = 177
2ee0: 2c 0a 20 20 20 20 41 52 41 42 49 43 5f 43 48 41 ,. ARABIC_CHA
2ef0: 52 53 45 54 20 20 20 20 20 20 3d 20 31 37 38 2c RSET = 178,
2f00: 0a 20 20 20 20 42 41 4c 54 49 43 5f 43 48 41 52 . BALTIC_CHAR
2f10: 53 45 54 20 20 20 20 20 20 3d 20 31 38 36 2c 0a SET = 186,.
2f20: 20 20 20 20 52 55 53 53 49 41 4e 5f 43 48 41 52 RUSSIAN_CHAR
2f30: 53 45 54 20 20 20 20 20 3d 20 32 30 34 2c 0a 20 SET = 204,.
2f40: 20 20 20 54 48 41 49 5f 43 48 41 52 53 45 54 20 THAI_CHARSET
2f50: 20 20 20 20 20 20 20 3d 20 32 32 32 2c 0a 20 20 = 222,.
2f60: 20 20 45 41 53 54 45 55 52 4f 50 45 5f 43 48 41 EASTEUROPE_CHA
2f70: 52 53 45 54 20 20 3d 20 32 33 38 2c 0a 20 20 20 RSET = 238,.
2f80: 20 4f 45 4d 5f 43 48 41 52 53 45 54 20 20 20 20 OEM_CHARSET
2f90: 20 20 20 20 20 3d 20 32 35 35 0a 7d 0a 0a 2f 2f = 255.}..//
2fa0: 20 4c 4f 47 46 4f 4e 54 2e 6c 66 4f 75 74 50 72 LOGFONT.lfOutPr
2fb0: 65 63 69 73 69 6f 6e 0a 65 6e 75 6d 20 3a 20 42 ecision.enum : B
2fc0: 59 54 45 20 7b 0a 20 20 20 20 4f 55 54 5f 44 45 YTE {. OUT_DE
2fd0: 46 41 55 4c 54 5f 50 52 45 43 49 53 20 3d 20 30 FAULT_PRECIS = 0
2fe0: 2c 0a 20 20 20 20 4f 55 54 5f 53 54 52 49 4e 47 ,. OUT_STRING
2ff0: 5f 50 52 45 43 49 53 2c 0a 20 20 20 20 4f 55 54 _PRECIS,. OUT
3000: 5f 43 48 41 52 41 43 54 45 52 5f 50 52 45 43 49 _CHARACTER_PRECI
3010: 53 2c 0a 20 20 20 20 4f 55 54 5f 53 54 52 4f 4b S,. OUT_STROK
3020: 45 5f 50 52 45 43 49 53 2c 0a 20 20 20 20 4f 55 E_PRECIS,. OU
3030: 54 5f 54 54 5f 50 52 45 43 49 53 2c 0a 20 20 20 T_TT_PRECIS,.
3040: 20 4f 55 54 5f 44 45 56 49 43 45 5f 50 52 45 43 OUT_DEVICE_PREC
3050: 49 53 2c 0a 20 20 20 20 4f 55 54 5f 52 41 53 54 IS,. OUT_RAST
3060: 45 52 5f 50 52 45 43 49 53 2c 0a 20 20 20 20 4f ER_PRECIS,. O
3070: 55 54 5f 54 54 5f 4f 4e 4c 59 5f 50 52 45 43 49 UT_TT_ONLY_PRECI
3080: 53 2c 0a 20 20 20 20 4f 55 54 5f 4f 55 54 4c 49 S,. OUT_OUTLI
3090: 4e 45 5f 50 52 45 43 49 53 2c 0a 20 20 20 20 4f NE_PRECIS,. O
30a0: 55 54 5f 53 43 52 45 45 4e 5f 4f 55 54 4c 49 4e UT_SCREEN_OUTLIN
30b0: 45 5f 50 52 45 43 49 53 2c 0a 20 20 20 20 4f 55 E_PRECIS,. OU
30c0: 54 5f 50 53 5f 4f 4e 4c 59 5f 50 52 45 43 49 53 T_PS_ONLY_PRECIS
30d0: 2c 20 20 20 20 20 2f 2f 20 31 30 0a 7d 0a 0a 2f , // 10.}../
30e0: 2f 20 4c 4f 47 46 4f 4e 54 2e 6c 66 43 6c 69 70 / LOGFONT.lfClip
30f0: 50 72 65 63 69 73 69 6f 6e 0a 65 6e 75 6d 20 3a Precision.enum :
3100: 20 42 59 54 45 20 20 7b 0a 20 20 20 20 43 4c 49 BYTE {. CLI
3110: 50 5f 44 45 46 41 55 4c 54 5f 50 52 45 43 49 53 P_DEFAULT_PRECIS
3120: 20 20 20 3d 20 30 2c 0a 20 20 20 20 43 4c 49 50 = 0,. CLIP
3130: 5f 43 48 41 52 41 43 54 45 52 5f 50 52 45 43 49 _CHARACTER_PRECI
3140: 53 20 3d 20 31 2c 0a 20 20 20 20 43 4c 49 50 5f S = 1,. CLIP_
3150: 53 54 52 4f 4b 45 5f 50 52 45 43 49 53 20 20 20 STROKE_PRECIS
3160: 20 3d 20 32 2c 0a 20 20 20 20 43 4c 49 50 5f 4d = 2,. CLIP_M
3170: 41 53 4b 20 20 20 20 20 20 20 20 20 20 20 20 20 ASK
3180: 3d 20 31 35 2c 0a 20 20 20 20 43 4c 49 50 5f 4c = 15,. CLIP_L
3190: 48 5f 41 4e 47 4c 45 53 20 20 20 20 20 20 20 20 H_ANGLES
31a0: 3d 20 31 36 2c 0a 20 20 20 20 43 4c 49 50 5f 54 = 16,. CLIP_T
31b0: 54 5f 41 4c 57 41 59 53 20 20 20 20 20 20 20 20 T_ALWAYS
31c0: 3d 20 33 32 2c 0a 20 20 20 20 43 4c 49 50 5f 44 = 32,. CLIP_D
31d0: 46 41 5f 44 49 53 41 42 4c 45 20 20 20 20 20 20 FA_DISABLE
31e0: 3d 20 36 34 2c 0a 20 20 20 20 43 4c 49 50 5f 45 = 64,. CLIP_E
31f0: 4d 42 45 44 44 45 44 20 20 20 20 20 20 20 20 20 MBEDDED
3200: 3d 20 31 32 38 0a 7d 0a 0a 2f 2f 20 4c 4f 47 46 = 128.}..// LOGF
3210: 4f 4e 54 2e 6c 66 51 75 61 6c 69 74 79 0a 65 6e ONT.lfQuality.en
3220: 75 6d 20 3a 20 42 59 54 45 20 7b 0a 20 20 20 20 um : BYTE {.
3230: 44 45 46 41 55 4c 54 5f 51 55 41 4c 49 54 59 20 DEFAULT_QUALITY
3240: 3d 20 30 2c 0a 20 20 20 20 44 52 41 46 54 5f 51 = 0,. DRAFT_Q
3250: 55 41 4c 49 54 59 2c 0a 20 20 20 20 50 52 4f 4f UALITY,. PROO
3260: 46 5f 51 55 41 4c 49 54 59 2c 0a 20 20 20 20 4e F_QUALITY,. N
3270: 4f 4e 41 4e 54 49 41 4c 49 41 53 45 44 5f 51 55 ONANTIALIASED_QU
3280: 41 4c 49 54 59 2c 0a 20 20 20 20 41 4e 54 49 41 ALITY,. ANTIA
3290: 4c 49 41 53 45 44 5f 51 55 41 4c 49 54 59 0a 7d LIASED_QUALITY.}
32a0: 0a 0a 2f 2f 20 4c 4f 47 46 4f 4e 54 2e 6c 66 50 ..// LOGFONT.lfP
32b0: 69 74 63 68 41 6e 64 46 61 6d 69 6c 79 0a 0a 63 itchAndFamily..c
32c0: 6f 6e 73 74 20 42 59 54 45 0a 44 45 46 41 55 4c onst BYTE.DEFAUL
32d0: 54 5f 50 49 54 43 48 20 20 3d 20 30 2c 0a 46 49 T_PITCH = 0,.FI
32e0: 58 45 44 5f 50 49 54 43 48 20 20 20 20 3d 20 31 XED_PITCH = 1
32f0: 2c 0a 56 41 52 49 41 42 4c 45 5f 50 49 54 43 48 ,.VARIABLE_PITCH
3300: 20 3d 20 32 2c 0a 4d 4f 4e 4f 5f 46 4f 4e 54 20 = 2,.MONO_FONT
3310: 20 20 20 20 20 3d 20 38 2c 0a 46 46 5f 44 4f 4e = 8,.FF_DON
3320: 54 43 41 52 45 20 20 20 20 3d 20 30 2c 0a 46 46 TCARE = 0,.FF
3330: 5f 52 4f 4d 41 4e 20 20 20 20 20 20 20 3d 20 31 _ROMAN = 1
3340: 36 2c 0a 46 46 5f 53 57 49 53 53 20 20 20 20 20 6,.FF_SWISS
3350: 20 20 3d 20 33 32 2c 0a 46 46 5f 53 43 52 49 50 = 32,.FF_SCRIP
3360: 54 20 20 20 20 20 20 3d 20 36 34 2c 0a 46 46 5f T = 64,.FF_
3370: 4d 4f 44 45 52 4e 20 20 20 20 20 20 3d 20 34 38 MODERN = 48
3380: 2c 0a 46 46 5f 44 45 43 4f 52 41 54 49 56 45 20 ,.FF_DECORATIVE
3390: 20 3d 20 38 30 3b 0a 0a 2f 2f 20 2d 2d 2d 2d 0a = 80;..// ----.
33a0: 2f 2f 20 45 6e 75 6d 73 20 66 6f 72 20 74 68 65 // Enums for the
33b0: 20 50 41 4e 4f 53 45 20 73 74 72 75 63 74 0a 0a PANOSE struct..
33c0: 63 6f 6e 73 74 20 50 41 4e 4f 53 45 5f 43 4f 55 const PANOSE_COU
33d0: 4e 54 3d 31 30 3b 0a 0a 65 6e 75 6d 20 7b 0a 20 NT=10;..enum {.
33e0: 20 20 20 50 41 4e 5f 46 41 4d 49 4c 59 54 59 50 PAN_FAMILYTYP
33f0: 45 5f 49 4e 44 45 58 20 3d 20 30 2c 0a 20 20 20 E_INDEX = 0,.
3400: 20 50 41 4e 5f 53 45 52 49 46 53 54 59 4c 45 5f PAN_SERIFSTYLE_
3410: 49 4e 44 45 58 2c 0a 20 20 20 20 50 41 4e 5f 57 INDEX,. PAN_W
3420: 45 49 47 48 54 5f 49 4e 44 45 58 2c 0a 20 20 20 EIGHT_INDEX,.
3430: 20 50 41 4e 5f 50 52 4f 50 4f 52 54 49 4f 4e 5f PAN_PROPORTION_
3440: 49 4e 44 45 58 2c 0a 20 20 20 20 50 41 4e 5f 43 INDEX,. PAN_C
3450: 4f 4e 54 52 41 53 54 5f 49 4e 44 45 58 2c 0a 20 ONTRAST_INDEX,.
3460: 20 20 20 50 41 4e 5f 53 54 52 4f 4b 45 56 41 52 PAN_STROKEVAR
3470: 49 41 54 49 4f 4e 5f 49 4e 44 45 58 2c 0a 20 20 IATION_INDEX,.
3480: 20 20 50 41 4e 5f 41 52 4d 53 54 59 4c 45 5f 49 PAN_ARMSTYLE_I
3490: 4e 44 45 58 2c 0a 20 20 20 20 50 41 4e 5f 4c 45 NDEX,. PAN_LE
34a0: 54 54 45 52 46 4f 52 4d 5f 49 4e 44 45 58 2c 0a TTERFORM_INDEX,.
34b0: 20 20 20 20 50 41 4e 5f 4d 49 44 4c 49 4e 45 5f PAN_MIDLINE_
34c0: 49 4e 44 45 58 2c 0a 20 20 20 20 50 41 4e 5f 58 INDEX,. PAN_X
34d0: 48 45 49 47 48 54 5f 49 4e 44 45 58 0a 7d 0a 0a HEIGHT_INDEX.}..
34e0: 63 6f 6e 73 74 20 50 41 4e 5f 43 55 4c 54 55 52 const PAN_CULTUR
34f0: 45 5f 4c 41 54 49 4e 3d 30 3b 0a 0a 2f 2f 20 4e E_LATIN=0;..// N
3500: 4f 54 45 3a 20 74 68 65 20 66 69 72 73 74 20 74 OTE: the first t
3510: 77 6f 20 76 61 6c 75 65 73 20 28 50 41 4e 5f 41 wo values (PAN_A
3520: 4e 59 20 61 6e 64 20 50 41 4e 5f 4e 4f 5f 46 49 NY and PAN_NO_FI
3530: 54 29 20 61 70 70 6c 79 20 74 6f 20 61 6c 6c 20 T) apply to all
3540: 74 68 65 73 65 20 65 6e 75 6d 73 21 0a 65 6e 75 these enums!.enu
3550: 6d 20 3a 20 42 59 54 45 20 7b 0a 20 20 20 20 50 m : BYTE {. P
3560: 41 4e 5f 41 4e 59 20 20 20 20 3d 20 30 2c 0a 20 AN_ANY = 0,.
3570: 20 20 20 50 41 4e 5f 4e 4f 5f 46 49 54 20 3d 20 PAN_NO_FIT =
3580: 31 2c 0a 7d 0a 0a 65 6e 75 6d 20 3a 20 42 59 54 1,.}..enum : BYT
3590: 45 20 7b 0a 20 20 20 20 50 41 4e 5f 46 41 4d 49 E {. PAN_FAMI
35a0: 4c 59 5f 54 45 58 54 5f 44 49 53 50 4c 41 59 20 LY_TEXT_DISPLAY
35b0: 3d 20 32 2c 0a 20 20 20 20 50 41 4e 5f 46 41 4d = 2,. PAN_FAM
35c0: 49 4c 59 5f 53 43 52 49 50 54 2c 0a 20 20 20 20 ILY_SCRIPT,.
35d0: 50 41 4e 5f 46 41 4d 49 4c 59 5f 44 45 43 4f 52 PAN_FAMILY_DECOR
35e0: 41 54 49 56 45 2c 0a 20 20 20 20 50 41 4e 5f 46 ATIVE,. PAN_F
35f0: 41 4d 49 4c 59 5f 50 49 43 54 4f 52 49 41 4c 0a AMILY_PICTORIAL.
3600: 7d 0a 65 6e 75 6d 20 3a 20 42 59 54 45 20 7b 0a }.enum : BYTE {.
3610: 20 20 20 20 50 41 4e 5f 53 45 52 49 46 5f 43 4f PAN_SERIF_CO
3620: 56 45 20 3d 20 32 2c 0a 20 20 20 20 50 41 4e 5f VE = 2,. PAN_
3630: 53 45 52 49 46 5f 4f 42 54 55 53 45 5f 43 4f 56 SERIF_OBTUSE_COV
3640: 45 2c 0a 20 20 20 20 50 41 4e 5f 53 45 52 49 46 E,. PAN_SERIF
3650: 5f 53 51 55 41 52 45 5f 43 4f 56 45 2c 0a 20 20 _SQUARE_COVE,.
3660: 20 20 50 41 4e 5f 53 45 52 49 46 5f 4f 42 54 55 PAN_SERIF_OBTU
3670: 53 45 5f 53 51 55 41 52 45 5f 43 4f 56 45 2c 0a SE_SQUARE_COVE,.
3680: 20 20 20 20 50 41 4e 5f 53 45 52 49 46 5f 53 51 PAN_SERIF_SQ
3690: 55 41 52 45 2c 0a 20 20 20 20 50 41 4e 5f 53 45 UARE,. PAN_SE
36a0: 52 49 46 5f 54 48 49 4e 2c 0a 20 20 20 20 50 41 RIF_THIN,. PA
36b0: 4e 5f 53 45 52 49 46 5f 42 4f 4e 45 2c 0a 20 20 N_SERIF_BONE,.
36c0: 20 20 50 41 4e 5f 53 45 52 49 46 5f 45 58 41 47 PAN_SERIF_EXAG
36d0: 47 45 52 41 54 45 44 2c 0a 20 20 20 20 50 41 4e GERATED,. PAN
36e0: 5f 53 45 52 49 46 5f 54 52 49 41 4e 47 4c 45 2c _SERIF_TRIANGLE,
36f0: 0a 20 20 20 20 50 41 4e 5f 53 45 52 49 46 5f 4e . PAN_SERIF_N
3700: 4f 52 4d 41 4c 5f 53 41 4e 53 2c 0a 20 20 20 20 ORMAL_SANS,.
3710: 50 41 4e 5f 53 45 52 49 46 5f 4f 42 54 55 53 45 PAN_SERIF_OBTUSE
3720: 5f 53 41 4e 53 2c 0a 20 20 20 20 50 41 4e 5f 53 _SANS,. PAN_S
3730: 45 52 49 46 5f 50 45 52 50 5f 53 41 4e 53 2c 0a ERIF_PERP_SANS,.
3740: 20 20 20 20 50 41 4e 5f 53 45 52 49 46 5f 46 4c PAN_SERIF_FL
3750: 41 52 45 44 2c 0a 20 20 20 20 50 41 4e 5f 53 45 ARED,. PAN_SE
3760: 52 49 46 5f 52 4f 55 4e 44 45 44 0a 7d 0a 0a 65 RIF_ROUNDED.}..e
3770: 6e 75 6d 20 3a 20 42 59 54 45 20 7b 0a 20 20 20 num : BYTE {.
3780: 20 50 41 4e 5f 57 45 49 47 48 54 5f 56 45 52 59 PAN_WEIGHT_VERY
3790: 5f 4c 49 47 48 54 20 3d 20 32 2c 0a 20 20 20 20 _LIGHT = 2,.
37a0: 50 41 4e 5f 57 45 49 47 48 54 5f 4c 49 47 48 54 PAN_WEIGHT_LIGHT
37b0: 2c 0a 20 20 20 20 50 41 4e 5f 57 45 49 47 48 54 ,. PAN_WEIGHT
37c0: 5f 54 48 49 4e 2c 0a 20 20 20 20 50 41 4e 5f 57 _THIN,. PAN_W
37d0: 45 49 47 48 54 5f 42 4f 4f 4b 2c 0a 20 20 20 20 EIGHT_BOOK,.
37e0: 50 41 4e 5f 57 45 49 47 48 54 5f 4d 45 44 49 55 PAN_WEIGHT_MEDIU
37f0: 4d 2c 0a 20 20 20 20 50 41 4e 5f 57 45 49 47 48 M,. PAN_WEIGH
3800: 54 5f 44 45 4d 49 2c 0a 20 20 20 20 50 41 4e 5f T_DEMI,. PAN_
3810: 57 45 49 47 48 54 5f 42 4f 4c 44 2c 0a 20 20 20 WEIGHT_BOLD,.
3820: 20 50 41 4e 5f 57 45 49 47 48 54 5f 48 45 41 56 PAN_WEIGHT_HEAV
3830: 59 2c 0a 20 20 20 20 50 41 4e 5f 57 45 49 47 48 Y,. PAN_WEIGH
3840: 54 5f 42 4c 41 43 4b 2c 0a 20 20 20 20 50 41 4e T_BLACK,. PAN
3850: 5f 57 45 49 47 48 54 5f 4e 4f 52 44 0a 7d 0a 0a _WEIGHT_NORD.}..
3860: 65 6e 75 6d 20 3a 20 42 59 54 45 20 7b 0a 20 20 enum : BYTE {.
3870: 20 20 50 41 4e 5f 50 52 4f 50 5f 4f 4c 44 5f 53 PAN_PROP_OLD_S
3880: 54 59 4c 45 20 3d 20 32 2c 0a 20 20 20 20 50 41 TYLE = 2,. PA
3890: 4e 5f 50 52 4f 50 5f 4d 4f 44 45 52 4e 2c 0a 20 N_PROP_MODERN,.
38a0: 20 20 20 50 41 4e 5f 50 52 4f 50 5f 45 56 45 4e PAN_PROP_EVEN
38b0: 5f 57 49 44 54 48 2c 0a 20 20 20 20 50 41 4e 5f _WIDTH,. PAN_
38c0: 50 52 4f 50 5f 45 58 50 41 4e 44 45 44 2c 0a 20 PROP_EXPANDED,.
38d0: 20 20 20 50 41 4e 5f 50 52 4f 50 5f 43 4f 4e 44 PAN_PROP_COND
38e0: 45 4e 53 45 44 2c 0a 20 20 20 20 50 41 4e 5f 50 ENSED,. PAN_P
38f0: 52 4f 50 5f 56 45 52 59 5f 45 58 50 41 4e 44 45 ROP_VERY_EXPANDE
3900: 44 2c 0a 20 20 20 20 50 41 4e 5f 50 52 4f 50 5f D,. PAN_PROP_
3910: 56 45 52 59 5f 43 4f 4e 44 45 4e 53 45 44 2c 0a VERY_CONDENSED,.
3920: 20 20 20 20 50 41 4e 5f 50 52 4f 50 5f 4d 4f 4e PAN_PROP_MON
3930: 4f 53 50 41 43 45 44 0a 7d 0a 0a 65 6e 75 6d 20 OSPACED.}..enum
3940: 3a 20 42 59 54 45 20 7b 0a 20 20 20 20 50 41 4e : BYTE {. PAN
3950: 5f 43 4f 4e 54 52 41 53 54 5f 4e 4f 4e 45 20 3d _CONTRAST_NONE =
3960: 20 32 2c 0a 20 20 20 20 50 41 4e 5f 43 4f 4e 54 2,. PAN_CONT
3970: 52 41 53 54 5f 56 45 52 59 5f 4c 4f 57 2c 0a 20 RAST_VERY_LOW,.
3980: 20 20 20 50 41 4e 5f 43 4f 4e 54 52 41 53 54 5f PAN_CONTRAST_
3990: 4c 4f 57 2c 0a 20 20 20 20 50 41 4e 5f 43 4f 4e LOW,. PAN_CON
39a0: 54 52 41 53 54 5f 4d 45 44 49 55 4d 5f 4c 4f 57 TRAST_MEDIUM_LOW
39b0: 2c 0a 20 20 20 20 50 41 4e 5f 43 4f 4e 54 52 41 ,. PAN_CONTRA
39c0: 53 54 5f 4d 45 44 49 55 4d 2c 0a 20 20 20 20 50 ST_MEDIUM,. P
39d0: 41 4e 5f 43 4f 4e 54 52 41 53 54 5f 4d 45 44 49 AN_CONTRAST_MEDI
39e0: 55 4d 5f 48 49 47 48 2c 0a 20 20 20 20 50 41 4e UM_HIGH,. PAN
39f0: 5f 43 4f 4e 54 52 41 53 54 5f 48 49 47 48 2c 0a _CONTRAST_HIGH,.
3a00: 20 20 20 20 50 41 4e 5f 43 4f 4e 54 52 41 53 54 PAN_CONTRAST
3a10: 5f 56 45 52 59 5f 48 49 47 48 0a 7d 0a 0a 2f 2f _VERY_HIGH.}..//
3a20: 20 50 41 4e 4f 53 45 2e 62 53 74 72 6f 6b 65 56 PANOSE.bStrokeV
3a30: 61 72 69 61 74 69 6f 6e 0a 65 6e 75 6d 20 3a 20 ariation.enum :
3a40: 42 59 54 45 20 7b 0a 20 20 20 20 50 41 4e 5f 53 BYTE {. PAN_S
3a50: 54 52 4f 4b 45 5f 47 52 41 44 55 41 4c 5f 44 49 TROKE_GRADUAL_DI
3a60: 41 47 20 3d 20 32 2c 0a 20 20 20 20 50 41 4e 5f AG = 2,. PAN_
3a70: 53 54 52 4f 4b 45 5f 47 52 41 44 55 41 4c 5f 54 STROKE_GRADUAL_T
3a80: 52 41 4e 2c 0a 20 20 20 20 50 41 4e 5f 53 54 52 RAN,. PAN_STR
3a90: 4f 4b 45 5f 47 52 41 44 55 41 4c 5f 56 45 52 54 OKE_GRADUAL_VERT
3aa0: 2c 0a 20 20 20 20 50 41 4e 5f 53 54 52 4f 4b 45 ,. PAN_STROKE
3ab0: 5f 47 52 41 44 55 41 4c 5f 48 4f 52 5a 2c 0a 20 _GRADUAL_HORZ,.
3ac0: 20 20 20 50 41 4e 5f 53 54 52 4f 4b 45 5f 52 41 PAN_STROKE_RA
3ad0: 50 49 44 5f 56 45 52 54 2c 0a 20 20 20 20 50 41 PID_VERT,. PA
3ae0: 4e 5f 53 54 52 4f 4b 45 5f 52 41 50 49 44 5f 48 N_STROKE_RAPID_H
3af0: 4f 52 5a 2c 0a 20 20 20 20 50 41 4e 5f 53 54 52 ORZ,. PAN_STR
3b00: 4f 4b 45 5f 49 4e 53 54 41 4e 54 5f 56 45 52 54 OKE_INSTANT_VERT
3b10: 0a 7d 0a 0a 2f 2f 20 50 41 4e 4f 53 45 2e 62 41 .}..// PANOSE.bA
3b20: 72 6d 53 74 79 6c 65 0a 65 6e 75 6d 20 3a 20 42 rmStyle.enum : B
3b30: 59 54 45 20 7b 0a 20 20 20 20 50 41 4e 5f 53 54 YTE {. PAN_ST
3b40: 52 41 49 47 48 54 5f 41 52 4d 53 5f 48 4f 52 5a RAIGHT_ARMS_HORZ
3b50: 20 3d 20 32 2c 0a 20 20 20 20 50 41 4e 5f 53 54 = 2,. PAN_ST
3b60: 52 41 49 47 48 54 5f 41 52 4d 53 5f 57 45 44 47 RAIGHT_ARMS_WEDG
3b70: 45 2c 0a 20 20 20 20 50 41 4e 5f 53 54 52 41 49 E,. PAN_STRAI
3b80: 47 48 54 5f 41 52 4d 53 5f 56 45 52 54 2c 0a 20 GHT_ARMS_VERT,.
3b90: 20 20 20 50 41 4e 5f 53 54 52 41 49 47 48 54 5f PAN_STRAIGHT_
3ba0: 41 52 4d 53 5f 53 49 4e 47 4c 45 5f 53 45 52 49 ARMS_SINGLE_SERI
3bb0: 46 2c 0a 20 20 20 20 50 41 4e 5f 53 54 52 41 49 F,. PAN_STRAI
3bc0: 47 48 54 5f 41 52 4d 53 5f 44 4f 55 42 4c 45 5f GHT_ARMS_DOUBLE_
3bd0: 53 45 52 49 46 2c 0a 20 20 20 20 50 41 4e 5f 42 SERIF,. PAN_B
3be0: 45 4e 54 5f 41 52 4d 53 5f 48 4f 52 5a 2c 0a 20 ENT_ARMS_HORZ,.
3bf0: 20 20 20 50 41 4e 5f 42 45 4e 54 5f 41 52 4d 53 PAN_BENT_ARMS
3c00: 5f 57 45 44 47 45 2c 0a 20 20 20 20 50 41 4e 5f _WEDGE,. PAN_
3c10: 42 45 4e 54 5f 41 52 4d 53 5f 56 45 52 54 2c 0a BENT_ARMS_VERT,.
3c20: 20 20 20 20 50 41 4e 5f 42 45 4e 54 5f 41 52 4d PAN_BENT_ARM
3c30: 53 5f 53 49 4e 47 4c 45 5f 53 45 52 49 46 2c 0a S_SINGLE_SERIF,.
3c40: 20 20 20 20 50 41 4e 5f 42 45 4e 54 5f 41 52 4d PAN_BENT_ARM
3c50: 53 5f 44 4f 55 42 4c 45 5f 53 45 52 49 46 0a 7d S_DOUBLE_SERIF.}
3c60: 0a 0a 2f 2f 20 50 41 4e 4f 53 45 2e 62 4c 65 74 ..// PANOSE.bLet
3c70: 74 65 72 46 6f 72 6d 0a 65 6e 75 6d 20 3a 20 42 terForm.enum : B
3c80: 59 54 45 20 7b 0a 20 20 20 20 50 41 4e 5f 4c 45 YTE {. PAN_LE
3c90: 54 54 5f 4e 4f 52 4d 41 4c 5f 43 4f 4e 54 41 43 TT_NORMAL_CONTAC
3ca0: 54 20 3d 20 32 2c 0a 20 20 20 20 50 41 4e 5f 4c T = 2,. PAN_L
3cb0: 45 54 54 5f 4e 4f 52 4d 41 4c 5f 57 45 49 47 48 ETT_NORMAL_WEIGH
3cc0: 54 45 44 2c 0a 20 20 20 20 50 41 4e 5f 4c 45 54 TED,. PAN_LET
3cd0: 54 5f 4e 4f 52 4d 41 4c 5f 42 4f 58 45 44 2c 0a T_NORMAL_BOXED,.
3ce0: 20 20 20 20 50 41 4e 5f 4c 45 54 54 5f 4e 4f 52 PAN_LETT_NOR
3cf0: 4d 41 4c 5f 46 4c 41 54 54 45 4e 45 44 2c 0a 20 MAL_FLATTENED,.
3d00: 20 20 20 50 41 4e 5f 4c 45 54 54 5f 4e 4f 52 4d PAN_LETT_NORM
3d10: 41 4c 5f 52 4f 55 4e 44 45 44 2c 0a 20 20 20 20 AL_ROUNDED,.
3d20: 50 41 4e 5f 4c 45 54 54 5f 4e 4f 52 4d 41 4c 5f PAN_LETT_NORMAL_
3d30: 4f 46 46 5f 43 45 4e 54 45 52 2c 0a 20 20 20 20 OFF_CENTER,.
3d40: 50 41 4e 5f 4c 45 54 54 5f 4e 4f 52 4d 41 4c 5f PAN_LETT_NORMAL_
3d50: 53 51 55 41 52 45 2c 0a 20 20 20 20 50 41 4e 5f SQUARE,. PAN_
3d60: 4c 45 54 54 5f 4f 42 4c 49 51 55 45 5f 43 4f 4e LETT_OBLIQUE_CON
3d70: 54 41 43 54 2c 0a 20 20 20 20 50 41 4e 5f 4c 45 TACT,. PAN_LE
3d80: 54 54 5f 4f 42 4c 49 51 55 45 5f 57 45 49 47 48 TT_OBLIQUE_WEIGH
3d90: 54 45 44 2c 0a 20 20 20 20 50 41 4e 5f 4c 45 54 TED,. PAN_LET
3da0: 54 5f 4f 42 4c 49 51 55 45 5f 42 4f 58 45 44 2c T_OBLIQUE_BOXED,
3db0: 0a 20 20 20 20 50 41 4e 5f 4c 45 54 54 5f 4f 42 . PAN_LETT_OB
3dc0: 4c 49 51 55 45 5f 46 4c 41 54 54 45 4e 45 44 2c LIQUE_FLATTENED,
3dd0: 0a 20 20 20 20 50 41 4e 5f 4c 45 54 54 5f 4f 42 . PAN_LETT_OB
3de0: 4c 49 51 55 45 5f 52 4f 55 4e 44 45 44 2c 0a 20 LIQUE_ROUNDED,.
3df0: 20 20 20 50 41 4e 5f 4c 45 54 54 5f 4f 42 4c 49 PAN_LETT_OBLI
3e00: 51 55 45 5f 4f 46 46 5f 43 45 4e 54 45 52 2c 0a QUE_OFF_CENTER,.
3e10: 20 20 20 20 50 41 4e 5f 4c 45 54 54 5f 4f 42 4c PAN_LETT_OBL
3e20: 49 51 55 45 5f 53 51 55 41 52 45 0a 7d 0a 0a 2f IQUE_SQUARE.}../
3e30: 2f 20 50 41 4e 4f 53 45 2e 62 4d 69 64 4c 69 6e / PANOSE.bMidLin
3e40: 65 0a 65 6e 75 6d 20 3a 20 42 59 54 45 20 7b 0a e.enum : BYTE {.
3e50: 20 20 20 20 50 41 4e 5f 4d 49 44 4c 49 4e 45 5f PAN_MIDLINE_
3e60: 53 54 41 4e 44 41 52 44 5f 54 52 49 4d 4d 45 44 STANDARD_TRIMMED
3e70: 20 3d 20 32 2c 0a 20 20 20 20 50 41 4e 5f 4d 49 = 2,. PAN_MI
3e80: 44 4c 49 4e 45 5f 53 54 41 4e 44 41 52 44 5f 50 DLINE_STANDARD_P
3e90: 4f 49 4e 54 45 44 2c 0a 20 20 20 20 50 41 4e 5f OINTED,. PAN_
3ea0: 4d 49 44 4c 49 4e 45 5f 53 54 41 4e 44 41 52 44 MIDLINE_STANDARD
3eb0: 5f 53 45 52 49 46 45 44 2c 0a 20 20 20 20 50 41 _SERIFED,. PA
3ec0: 4e 5f 4d 49 44 4c 49 4e 45 5f 48 49 47 48 5f 54 N_MIDLINE_HIGH_T
3ed0: 52 49 4d 4d 45 44 2c 0a 20 20 20 20 50 41 4e 5f RIMMED,. PAN_
3ee0: 4d 49 44 4c 49 4e 45 5f 48 49 47 48 5f 50 4f 49 MIDLINE_HIGH_POI
3ef0: 4e 54 45 44 2c 0a 20 20 20 20 50 41 4e 5f 4d 49 NTED,. PAN_MI
3f00: 44 4c 49 4e 45 5f 48 49 47 48 5f 53 45 52 49 46 DLINE_HIGH_SERIF
3f10: 45 44 2c 0a 20 20 20 20 50 41 4e 5f 4d 49 44 4c ED,. PAN_MIDL
3f20: 49 4e 45 5f 43 4f 4e 53 54 41 4e 54 5f 54 52 49 INE_CONSTANT_TRI
3f30: 4d 4d 45 44 2c 0a 20 20 20 20 50 41 4e 5f 4d 49 MMED,. PAN_MI
3f40: 44 4c 49 4e 45 5f 43 4f 4e 53 54 41 4e 54 5f 50 DLINE_CONSTANT_P
3f50: 4f 49 4e 54 45 44 2c 0a 20 20 20 20 50 41 4e 5f OINTED,. PAN_
3f60: 4d 49 44 4c 49 4e 45 5f 43 4f 4e 53 54 41 4e 54 MIDLINE_CONSTANT
3f70: 5f 53 45 52 49 46 45 44 2c 0a 20 20 20 20 50 41 _SERIFED,. PA
3f80: 4e 5f 4d 49 44 4c 49 4e 45 5f 4c 4f 57 5f 54 52 N_MIDLINE_LOW_TR
3f90: 49 4d 4d 45 44 2c 0a 20 20 20 20 50 41 4e 5f 4d IMMED,. PAN_M
3fa0: 49 44 4c 49 4e 45 5f 4c 4f 57 5f 50 4f 49 4e 54 IDLINE_LOW_POINT
3fb0: 45 44 2c 0a 20 20 20 20 50 41 4e 5f 4d 49 44 4c ED,. PAN_MIDL
3fc0: 49 4e 45 5f 4c 4f 57 5f 53 45 52 49 46 45 44 0a INE_LOW_SERIFED.
3fd0: 7d 0a 0a 2f 2f 20 50 41 4e 4f 53 45 2e 62 58 48 }..// PANOSE.bXH
3fe0: 65 69 67 68 74 0a 65 6e 75 6d 20 3a 20 42 59 54 eight.enum : BYT
3ff0: 45 20 7b 0a 20 20 20 20 50 41 4e 5f 58 48 45 49 E {. PAN_XHEI
4000: 47 48 54 5f 43 4f 4e 53 54 41 4e 54 5f 53 4d 41 GHT_CONSTANT_SMA
4010: 4c 4c 20 3d 20 32 2c 0a 20 20 20 20 50 41 4e 5f LL = 2,. PAN_
4020: 58 48 45 49 47 48 54 5f 43 4f 4e 53 54 41 4e 54 XHEIGHT_CONSTANT
4030: 5f 53 54 44 2c 0a 20 20 20 20 50 41 4e 5f 58 48 _STD,. PAN_XH
4040: 45 49 47 48 54 5f 43 4f 4e 53 54 41 4e 54 5f 4c EIGHT_CONSTANT_L
4050: 41 52 47 45 2c 0a 20 20 20 20 50 41 4e 5f 58 48 ARGE,. PAN_XH
4060: 45 49 47 48 54 5f 44 55 43 4b 49 4e 47 5f 53 4d EIGHT_DUCKING_SM
4070: 41 4c 4c 2c 0a 20 20 20 20 50 41 4e 5f 58 48 45 ALL,. PAN_XHE
4080: 49 47 48 54 5f 44 55 43 4b 49 4e 47 5f 53 54 44 IGHT_DUCKING_STD
4090: 2c 0a 20 20 20 20 50 41 4e 5f 58 48 45 49 47 48 ,. PAN_XHEIGH
40a0: 54 5f 44 55 43 4b 49 4e 47 5f 4c 41 52 47 45 0a T_DUCKING_LARGE.
40b0: 7d 0a 0a 2f 2f 20 2d 2d 2d 2d 0a 2f 2f 20 3f 3f }..// ----.// ??
40c0: 3f 0a 63 6f 6e 73 74 20 46 53 5f 4c 41 54 49 4e ?.const FS_LATIN
40d0: 31 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 1 = 0x00000
40e0: 30 30 31 3b 0a 63 6f 6e 73 74 20 46 53 5f 4c 41 001;.const FS_LA
40f0: 54 49 4e 32 20 20 20 20 20 20 3d 20 30 78 30 30 TIN2 = 0x00
4100: 30 30 30 30 30 32 3b 0a 63 6f 6e 73 74 20 46 53 000002;.const FS
4110: 5f 43 59 52 49 4c 4c 49 43 20 20 20 20 3d 20 30 _CYRILLIC = 0
4120: 78 30 30 30 30 30 30 30 34 3b 0a 63 6f 6e 73 74 x00000004;.const
4130: 20 46 53 5f 47 52 45 45 4b 20 20 20 20 20 20 20 FS_GREEK
4140: 3d 20 30 78 30 30 30 30 30 30 30 38 3b 0a 63 6f = 0x00000008;.co
4150: 6e 73 74 20 46 53 5f 54 55 52 4b 49 53 48 20 20 nst FS_TURKISH
4160: 20 20 20 3d 20 30 78 30 30 30 30 30 30 31 30 3b = 0x00000010;
4170: 0a 63 6f 6e 73 74 20 46 53 5f 48 45 42 52 45 57 .const FS_HEBREW
4180: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 = 0x000000
4190: 32 30 3b 0a 63 6f 6e 73 74 20 46 53 5f 41 52 41 20;.const FS_ARA
41a0: 42 49 43 20 20 20 20 20 20 3d 20 30 78 30 30 30 BIC = 0x000
41b0: 30 30 30 34 30 3b 0a 63 6f 6e 73 74 20 46 53 5f 00040;.const FS_
41c0: 42 41 4c 54 49 43 20 20 20 20 20 20 3d 20 30 78 BALTIC = 0x
41d0: 30 30 30 30 30 30 38 30 3b 0a 63 6f 6e 73 74 20 00000080;.const
41e0: 46 53 5f 56 49 45 54 4e 41 4d 45 53 45 20 20 3d FS_VIETNAMESE =
41f0: 20 30 78 30 30 30 30 30 31 30 30 3b 0a 63 6f 6e 0x00000100;.con
4200: 73 74 20 46 53 5f 54 48 41 49 20 20 20 20 20 20 st FS_THAI
4210: 20 20 3d 20 30 78 30 30 30 31 30 30 30 30 3b 0a = 0x00010000;.
4220: 63 6f 6e 73 74 20 46 53 5f 4a 49 53 4a 41 50 41 const FS_JISJAPA
4230: 4e 20 20 20 20 3d 20 30 78 30 30 30 32 30 30 30 N = 0x0002000
4240: 30 3b 0a 63 6f 6e 73 74 20 46 53 5f 43 48 49 4e 0;.const FS_CHIN
4250: 45 53 45 53 49 4d 50 20 3d 20 30 78 30 30 30 34 ESESIMP = 0x0004
4260: 30 30 30 30 3b 0a 63 6f 6e 73 74 20 46 53 5f 57 0000;.const FS_W
4270: 41 4e 53 55 4e 47 20 20 20 20 20 3d 20 30 78 30 ANSUNG = 0x0
4280: 30 30 38 30 30 30 30 3b 0a 63 6f 6e 73 74 20 46 0080000;.const F
4290: 53 5f 43 48 49 4e 45 53 45 54 52 41 44 20 3d 20 S_CHINESETRAD =
42a0: 30 78 30 30 31 30 30 30 30 30 3b 0a 63 6f 6e 73 0x00100000;.cons
42b0: 74 20 46 53 5f 4a 4f 48 41 42 20 20 20 20 20 20 t FS_JOHAB
42c0: 20 3d 20 30 78 30 30 32 30 30 30 30 30 3b 0a 63 = 0x00200000;.c
42d0: 6f 6e 73 74 20 46 53 5f 53 59 4d 42 4f 4c 20 20 onst FS_SYMBOL
42e0: 20 20 20 20 3d 20 30 78 38 30 30 30 30 30 30 30 = 0x80000000
42f0: 3b 0a 0a 2f 2f 20 2d 2d 2d 2d 0a 2f 2f 20 50 6f ;..// ----.// Po
4300: 6c 79 20 46 69 6c 6c 20 4d 6f 64 65 0a 65 6e 75 ly Fill Mode.enu
4310: 6d 20 3a 20 69 6e 74 20 7b 0a 20 20 20 20 41 4c m : int {. AL
4320: 54 45 52 4e 41 54 45 20 3d 20 31 2c 0a 20 20 20 TERNATE = 1,.
4330: 20 57 49 4e 44 49 4e 47 20 20 20 3d 20 32 0a 7d WINDING = 2.}
4340: 0a 63 6f 6e 73 74 20 69 6e 74 20 50 4f 4c 59 46 .const int POLYF
4350: 49 4c 4c 5f 4c 41 53 54 20 3d 20 57 49 4e 44 49 ILL_LAST = WINDI
4360: 4e 47 3b 0a 0a 2f 2f 20 2d 2d 2d 0a 2f 2f 20 4c NG;..// ---.// L
4370: 4f 47 42 52 55 53 48 0a 65 6e 75 6d 20 3a 20 4c OGBRUSH.enum : L
4380: 4f 4e 47 20 7b 0a 20 20 20 20 48 53 5f 48 4f 52 ONG {. HS_HOR
4390: 49 5a 4f 4e 54 41 4c 20 3d 20 30 2c 0a 20 20 20 IZONTAL = 0,.
43a0: 20 48 53 5f 56 45 52 54 49 43 41 4c 2c 0a 20 20 HS_VERTICAL,.
43b0: 20 20 48 53 5f 46 44 49 41 47 4f 4e 41 4c 2c 0a HS_FDIAGONAL,.
43c0: 20 20 20 20 48 53 5f 42 44 49 41 47 4f 4e 41 4c HS_BDIAGONAL
43d0: 2c 0a 20 20 20 20 48 53 5f 43 52 4f 53 53 2c 0a ,. HS_CROSS,.
43e0: 20 20 20 20 48 53 5f 44 49 41 47 43 52 4f 53 53 HS_DIAGCROSS
43f0: 0a 7d 0a 0a 2f 2f 20 4c 4f 47 42 52 55 53 48 2e .}..// LOGBRUSH.
4400: 6c 62 53 74 79 6c 65 0a 65 6e 75 6d 20 3a 20 55 lbStyle.enum : U
4410: 49 4e 54 20 7b 0a 20 20 20 20 42 53 5f 53 4f 4c INT {. BS_SOL
4420: 49 44 20 20 3d 20 30 2c 0a 20 20 20 20 42 53 5f ID = 0,. BS_
4430: 4e 55 4c 4c 20 20 20 3d 20 31 2c 0a 20 20 20 20 NULL = 1,.
4440: 42 53 5f 48 4f 4c 4c 4f 57 20 3d 20 42 53 5f 4e BS_HOLLOW = BS_N
4450: 55 4c 4c 2c 0a 20 20 20 20 42 53 5f 48 41 54 43 ULL,. BS_HATC
4460: 48 45 44 2c 0a 20 20 20 20 42 53 5f 50 41 54 54 HED,. BS_PATT
4470: 45 52 4e 2c 0a 20 20 20 20 42 53 5f 49 4e 44 45 ERN,. BS_INDE
4480: 58 45 44 2c 0a 20 20 20 20 42 53 5f 44 49 42 50 XED,. BS_DIBP
4490: 41 54 54 45 52 4e 2c 0a 20 20 20 20 42 53 5f 44 ATTERN,. BS_D
44a0: 49 42 50 41 54 54 45 52 4e 50 54 2c 0a 20 20 20 IBPATTERNPT,.
44b0: 20 42 53 5f 50 41 54 54 45 52 4e 38 58 38 2c 0a BS_PATTERN8X8,.
44c0: 20 20 20 20 42 53 5f 44 49 42 50 41 54 54 45 52 BS_DIBPATTER
44d0: 4e 38 58 38 2c 0a 20 20 20 20 42 53 5f 4d 4f 4e N8X8,. BS_MON
44e0: 4f 50 41 54 54 45 52 4e 2c 0a 7d 0a 0a 2f 2f 20 OPATTERN,.}..//
44f0: 2d 2d 2d 2d 2d 0a 2f 2f 20 45 58 54 4c 4f 47 50 -----.// EXTLOGP
4500: 45 4e 2c 20 45 78 74 43 72 65 61 74 65 50 65 6e EN, ExtCreatePen
4510: 28 29 0a 0a 2f 2f 20 45 58 54 4c 4f 47 50 45 4e ()..// EXTLOGPEN
4520: 2e 65 6c 70 50 65 6e 53 74 79 6c 65 0a 65 6e 75 .elpPenStyle.enu
4530: 6d 20 3a 20 44 57 4f 52 44 20 7b 0a 20 20 20 20 m : DWORD {.
4540: 50 53 5f 53 4f 4c 49 44 20 20 20 20 20 20 20 3d PS_SOLID =
4550: 20 30 2c 0a 20 20 20 20 50 53 5f 44 41 53 48 20 0,. PS_DASH
4560: 20 20 20 20 20 20 20 3d 20 31 2c 0a 20 20 20 20 = 1,.
4570: 50 53 5f 44 4f 54 20 20 20 20 20 20 20 20 20 3d PS_DOT =
4580: 20 32 2c 0a 20 20 20 20 50 53 5f 44 41 53 48 44 2,. PS_DASHD
4590: 4f 54 20 20 20 20 20 3d 20 33 2c 0a 20 20 20 20 OT = 3,.
45a0: 50 53 5f 44 41 53 48 44 4f 54 44 4f 54 20 20 3d PS_DASHDOTDOT =
45b0: 20 34 2c 0a 20 20 20 20 50 53 5f 4e 55 4c 4c 20 4,. PS_NULL
45c0: 20 20 20 20 20 20 20 3d 20 35 2c 0a 20 20 20 20 = 5,.
45d0: 50 53 5f 49 4e 53 49 44 45 46 52 41 4d 45 20 3d PS_INSIDEFRAME =
45e0: 20 36 2c 0a 20 20 20 20 50 53 5f 55 53 45 52 53 6,. PS_USERS
45f0: 54 59 4c 45 20 20 20 3d 20 37 2c 0a 20 20 20 20 TYLE = 7,.
4600: 50 53 5f 41 4c 54 45 52 4e 41 54 45 20 20 20 3d PS_ALTERNATE =
4610: 20 38 2c 0a 20 20 20 20 50 53 5f 53 54 59 4c 45 8,. PS_STYLE
4620: 5f 4d 41 53 4b 20 20 3d 20 31 35 2c 0a 7d 0a 0a _MASK = 15,.}..
4630: 65 6e 75 6d 20 3a 20 44 57 4f 52 44 20 7b 0a 20 enum : DWORD {.
4640: 20 20 20 50 53 5f 43 4f 53 4d 45 54 49 43 20 20 PS_COSMETIC
4650: 3d 20 30 78 30 30 30 30 30 30 30 30 2c 0a 20 20 = 0x00000000,.
4660: 20 20 50 53 5f 47 45 4f 4d 45 54 52 49 43 20 3d PS_GEOMETRIC =
4670: 20 30 78 30 30 30 31 30 30 30 30 2c 0a 20 20 20 0x00010000,.
4680: 20 50 53 5f 54 59 50 45 5f 4d 41 53 4b 20 3d 20 PS_TYPE_MASK =
4690: 30 78 30 30 30 46 30 30 30 30 2c 0a 7d 0a 65 6e 0x000F0000,.}.en
46a0: 75 6d 20 3a 20 44 57 4f 52 44 20 7b 0a 20 20 20 um : DWORD {.
46b0: 20 50 53 5f 45 4e 44 43 41 50 5f 52 4f 55 4e 44 PS_ENDCAP_ROUND
46c0: 20 20 3d 20 30 78 30 30 30 30 30 30 30 30 2c 0a = 0x00000000,.
46d0: 20 20 20 20 50 53 5f 45 4e 44 43 41 50 5f 53 51 PS_ENDCAP_SQ
46e0: 55 41 52 45 20 3d 20 30 78 30 30 30 30 30 31 30 UARE = 0x0000010
46f0: 30 2c 0a 20 20 20 20 50 53 5f 45 4e 44 43 41 50 0,. PS_ENDCAP
4700: 5f 46 4c 41 54 20 20 20 3d 20 30 78 30 30 30 30 _FLAT = 0x0000
4710: 30 32 30 30 2c 0a 20 20 20 20 50 53 5f 45 4e 44 0200,. PS_END
4720: 43 41 50 5f 4d 41 53 4b 20 20 20 3d 20 30 78 30 CAP_MASK = 0x0
4730: 30 30 30 30 46 30 30 2c 0a 7d 0a 65 6e 75 6d 20 0000F00,.}.enum
4740: 3a 20 44 57 4f 52 44 20 7b 0a 20 20 20 20 50 53 : DWORD {. PS
4750: 5f 4a 4f 49 4e 5f 52 4f 55 4e 44 20 3d 20 30 78 _JOIN_ROUND = 0x
4760: 30 30 30 30 30 30 30 30 2c 0a 20 20 20 20 50 53 00000000,. PS
4770: 5f 4a 4f 49 4e 5f 42 45 56 45 4c 20 3d 20 30 78 _JOIN_BEVEL = 0x
4780: 30 30 30 30 31 30 30 30 2c 0a 20 20 20 20 50 53 00001000,. PS
4790: 5f 4a 4f 49 4e 5f 4d 49 54 45 52 20 3d 20 30 78 _JOIN_MITER = 0x
47a0: 30 30 30 30 32 30 30 30 2c 0a 20 20 20 20 50 53 00002000,. PS
47b0: 5f 4a 4f 49 4e 5f 4d 41 53 4b 20 20 3d 20 30 78 _JOIN_MASK = 0x
47c0: 30 30 30 30 46 30 30 30 2c 0a 7d 0a 0a 2f 2f 20 0000F000,.}..//
47d0: 2d 2d 2d 0a 2f 2f 20 44 65 76 69 63 65 43 61 70 ---.// DeviceCap
47e0: 61 62 69 6c 69 74 69 65 73 28 29 0a 0a 65 6e 75 abilities()..enu
47f0: 6d 20 3a 20 57 4f 52 44 20 7b 0a 20 20 20 20 44 m : WORD {. D
4800: 43 5f 46 49 45 4c 44 53 20 3d 20 31 2c 0a 20 20 C_FIELDS = 1,.
4810: 20 20 44 43 5f 50 41 50 45 52 53 2c 0a 20 20 20 DC_PAPERS,.
4820: 20 44 43 5f 50 41 50 45 52 53 49 5a 45 2c 0a 20 DC_PAPERSIZE,.
4830: 20 20 20 44 43 5f 4d 49 4e 45 58 54 45 4e 54 2c DC_MINEXTENT,
4840: 0a 20 20 20 20 44 43 5f 4d 41 58 45 58 54 45 4e . DC_MAXEXTEN
4850: 54 2c 0a 20 20 20 20 44 43 5f 42 49 4e 53 2c 0a T,. DC_BINS,.
4860: 20 20 20 20 44 43 5f 44 55 50 4c 45 58 2c 0a 20 DC_DUPLEX,.
4870: 20 20 20 44 43 5f 53 49 5a 45 2c 0a 20 20 20 20 DC_SIZE,.
4880: 44 43 5f 45 58 54 52 41 2c 0a 20 20 20 20 44 43 DC_EXTRA,. DC
4890: 5f 56 45 52 53 49 4f 4e 2c 0a 20 20 20 20 44 43 _VERSION,. DC
48a0: 5f 44 52 49 56 45 52 2c 0a 20 20 20 20 44 43 5f _DRIVER,. DC_
48b0: 42 49 4e 4e 41 4d 45 53 2c 0a 20 20 20 20 44 43 BINNAMES,. DC
48c0: 5f 45 4e 55 4d 52 45 53 4f 4c 55 54 49 4f 4e 53 _ENUMRESOLUTIONS
48d0: 2c 0a 20 20 20 20 44 43 5f 46 49 4c 45 44 45 50 ,. DC_FILEDEP
48e0: 45 4e 44 45 4e 43 49 45 53 2c 0a 20 20 20 20 44 ENDENCIES,. D
48f0: 43 5f 54 52 55 45 54 59 50 45 2c 0a 20 20 20 20 C_TRUETYPE,.
4900: 44 43 5f 50 41 50 45 52 4e 41 4d 45 53 2c 0a 20 DC_PAPERNAMES,.
4910: 20 20 20 44 43 5f 4f 52 49 45 4e 54 41 54 49 4f DC_ORIENTATIO
4920: 4e 2c 0a 20 20 20 20 44 43 5f 43 4f 50 49 45 53 N,. DC_COPIES
4930: 2c 0a 20 20 20 20 44 43 5f 42 49 4e 41 44 4a 55 ,. DC_BINADJU
4940: 53 54 2c 0a 20 20 20 20 44 43 5f 45 4d 46 5f 43 ST,. DC_EMF_C
4950: 4f 4d 50 4c 49 41 4e 54 2c 0a 20 20 20 20 44 43 OMPLIANT,. DC
4960: 5f 44 41 54 41 54 59 50 45 5f 50 52 4f 44 55 43 _DATATYPE_PRODUC
4970: 45 44 2c 0a 20 20 20 20 44 43 5f 43 4f 4c 4c 41 ED,. DC_COLLA
4980: 54 45 2c 0a 20 20 20 20 44 43 5f 4d 41 4e 55 46 TE,. DC_MANUF
4990: 41 43 54 55 52 45 52 2c 0a 20 20 20 20 44 43 5f ACTURER,. DC_
49a0: 4d 4f 44 45 4c 2c 0a 7d 0a 0a 73 74 61 74 69 63 MODEL,.}..static
49b0: 0a 0a 69 66 20 28 57 49 4e 56 45 52 20 3e 3d 20 ..if (WINVER >=
49c0: 30 78 30 35 30 30 29 0a 7b 0a 20 20 20 20 65 6e 0x0500).{. en
49d0: 75 6d 20 7b 0a 20 20 20 20 20 20 20 20 44 43 5f um {. DC_
49e0: 50 45 52 53 4f 4e 41 4c 49 54 59 20 20 20 3d 20 PERSONALITY =
49f0: 32 35 2c 0a 20 20 20 20 20 20 20 20 44 43 5f 50 25,. DC_P
4a00: 52 49 4e 54 52 41 54 45 20 20 20 20 20 3d 20 32 RINTRATE = 2
4a10: 36 2c 0a 20 20 20 20 20 20 20 20 44 43 5f 50 52 6,. DC_PR
4a20: 49 4e 54 52 41 54 45 55 4e 49 54 20 3d 20 32 37 INTRATEUNIT = 27
4a30: 2c 0a 20 20 20 20 20 20 20 20 44 43 5f 50 52 49 ,. DC_PRI
4a40: 4e 54 45 52 4d 45 4d 20 20 20 20 3d 20 32 38 2c NTERMEM = 28,
4a50: 0a 20 20 20 20 20 20 20 20 44 43 5f 4d 45 44 49 . DC_MEDI
4a60: 41 52 45 41 44 59 20 20 20 20 3d 20 32 39 2c 0a AREADY = 29,.
4a70: 20 20 20 20 20 20 20 20 44 43 5f 53 54 41 50 4c DC_STAPL
4a80: 45 20 20 20 20 20 20 20 20 3d 20 33 30 2c 0a 20 E = 30,.
4a90: 20 20 20 20 20 20 20 44 43 5f 50 52 49 4e 54 52 DC_PRINTR
4aa0: 41 54 45 50 50 4d 20 20 3d 20 33 31 2c 0a 20 20 ATEPPM = 31,.
4ab0: 20 20 20 20 20 20 44 43 5f 43 4f 4c 4f 52 44 45 DC_COLORDE
4ac0: 56 49 43 45 20 20 20 3d 20 33 32 2c 0a 20 20 20 VICE = 32,.
4ad0: 20 20 20 20 20 44 43 5f 4e 55 50 20 3d 20 33 33 DC_NUP = 33
4ae0: 2c 0a 20 20 20 20 20 20 20 20 44 43 5f 4d 45 44 ,. DC_MED
4af0: 49 41 54 59 50 45 4e 41 4d 45 53 20 3d 20 33 34 IATYPENAMES = 34
4b00: 2c 0a 20 20 20 20 20 20 20 20 44 43 5f 4d 45 44 ,. DC_MED
4b10: 49 41 54 59 50 45 53 20 20 20 20 20 3d 20 33 35 IATYPES = 35
4b20: 2c 0a 20 20 20 20 7d 0a 20 20 20 20 65 6e 75 6d ,. }. enum
4b30: 20 7b 0a 20 20 20 20 20 20 20 20 50 52 49 4e 54 {. PRINT
4b40: 52 41 54 45 55 4e 49 54 5f 50 50 4d 20 3d 20 31 RATEUNIT_PPM = 1
4b50: 2c 0a 20 20 20 20 20 20 20 20 50 52 49 4e 54 52 ,. PRINTR
4b60: 41 54 45 55 4e 49 54 5f 43 50 53 20 3d 20 32 2c ATEUNIT_CPS = 2,
4b70: 0a 20 20 20 20 20 20 20 20 50 52 49 4e 54 52 41 . PRINTRA
4b80: 54 45 55 4e 49 54 5f 4c 50 4d 20 3d 20 33 2c 0a TEUNIT_LPM = 3,.
4b90: 20 20 20 20 20 20 20 20 50 52 49 4e 54 52 41 54 PRINTRAT
4ba0: 45 55 4e 49 54 5f 49 50 4d 20 3d 20 34 2c 0a 20 EUNIT_IPM = 4,.
4bb0: 20 20 20 7d 0a 7d 0a 0a 2f 2f 20 72 65 74 75 72 }.}..// retur
4bc0: 6e 20 66 72 6f 6d 20 44 43 5f 54 52 55 45 54 59 n from DC_TRUETY
4bd0: 50 45 0a 63 6f 6e 73 74 20 44 57 4f 52 44 0a 44 PE.const DWORD.D
4be0: 43 54 54 5f 42 49 54 4d 41 50 20 3d 20 31 2c 0a CTT_BITMAP = 1,.
4bf0: 44 43 54 54 5f 44 4f 57 4e 4c 4f 41 44 20 20 20 DCTT_DOWNLOAD
4c00: 20 20 20 20 20 20 3d 20 32 2c 0a 44 43 54 54 5f = 2,.DCTT_
4c10: 53 55 42 44 45 56 20 20 20 20 20 20 20 20 20 20 SUBDEV
4c20: 20 3d 20 34 2c 0a 44 43 54 54 5f 44 4f 57 4e 4c = 4,.DCTT_DOWNL
4c30: 4f 41 44 5f 4f 55 54 4c 49 4e 45 20 3d 20 38 3b OAD_OUTLINE = 8;
4c40: 0a 0a 73 74 61 74 69 63 0a 0a 69 66 20 28 57 49 ..static..if (WI
4c50: 4e 56 45 52 20 3e 3d 20 30 78 30 34 30 30 29 0a NVER >= 0x0400).
4c60: 7b 0a 20 20 20 20 2f 2f 20 72 65 74 75 72 6e 20 {. // return
4c70: 66 72 6f 6d 20 44 43 5f 42 49 4e 41 44 4a 55 53 from DC_BINADJUS
4c80: 54 0a 20 20 20 20 65 6e 75 6d 20 3a 20 44 57 4f T. enum : DWO
4c90: 52 44 20 7b 0a 20 20 20 20 20 20 20 20 44 43 42 RD {. DCB
4ca0: 41 5f 46 41 43 45 55 50 4e 4f 4e 45 20 20 20 20 A_FACEUPNONE
4cb0: 20 3d 20 30 78 30 30 30 30 2c 0a 20 20 20 20 20 = 0x0000,.
4cc0: 20 20 20 44 43 42 41 5f 46 41 43 45 55 50 43 45 DCBA_FACEUPCE
4cd0: 4e 54 45 52 20 20 20 3d 20 30 78 30 30 30 31 2c NTER = 0x0001,
4ce0: 0a 20 20 20 20 20 20 20 20 44 43 42 41 5f 46 41 . DCBA_FA
4cf0: 43 45 55 50 4c 45 46 54 20 20 20 20 20 3d 20 30 CEUPLEFT = 0
4d00: 78 30 30 30 32 2c 0a 20 20 20 20 20 20 20 20 44 x0002,. D
4d10: 43 42 41 5f 46 41 43 45 55 50 52 49 47 48 54 20 CBA_FACEUPRIGHT
4d20: 20 20 20 3d 20 30 78 30 30 30 33 2c 0a 20 20 20 = 0x0003,.
4d30: 20 20 20 20 20 44 43 42 41 5f 46 41 43 45 44 4f DCBA_FACEDO
4d40: 57 4e 4e 4f 4e 45 20 20 20 3d 20 30 78 30 31 30 WNNONE = 0x010
4d50: 30 2c 0a 20 20 20 20 20 20 20 20 44 43 42 41 5f 0,. DCBA_
4d60: 46 41 43 45 44 4f 57 4e 43 45 4e 54 45 52 20 3d FACEDOWNCENTER =
4d70: 20 30 78 30 31 30 31 2c 0a 20 20 20 20 20 20 20 0x0101,.
4d80: 20 44 43 42 41 5f 46 41 43 45 44 4f 57 4e 4c 45 DCBA_FACEDOWNLE
4d90: 46 54 20 20 20 3d 20 30 78 30 31 30 32 2c 0a 20 FT = 0x0102,.
4da0: 20 20 20 20 20 20 20 44 43 42 41 5f 46 41 43 45 DCBA_FACE
4db0: 44 4f 57 4e 52 49 47 48 54 20 20 3d 20 30 78 30 DOWNRIGHT = 0x0
4dc0: 31 30 33 2c 0a 20 20 20 20 7d 0a 7d 0a 0a 2f 2f 103,. }.}..//
4dd0: 20 2d 2d 2d 0a 0a 63 6f 6e 73 74 20 46 4c 4f 4f ---..const FLOO
4de0: 44 46 49 4c 4c 42 4f 52 44 45 52 20 20 3d 20 30 DFILLBORDER = 0
4df0: 3b 0a 63 6f 6e 73 74 20 46 4c 4f 4f 44 46 49 4c ;.const FLOODFIL
4e00: 4c 53 55 52 46 41 43 45 20 3d 20 31 3b 0a 0a 2f LSURFACE = 1;../
4e10: 2f 20 45 78 74 54 65 78 74 4f 75 74 28 29 0a 63 / ExtTextOut().c
4e20: 6f 6e 73 74 20 55 49 4e 54 0a 45 54 4f 5f 4f 50 onst UINT.ETO_OP
4e30: 41 51 55 45 20 20 20 20 20 20 20 20 20 3d 20 30 AQUE = 0
4e40: 78 30 30 30 32 2c 0a 45 54 4f 5f 43 4c 49 50 50 x0002,.ETO_CLIPP
4e50: 45 44 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 ED = 0x00
4e60: 30 34 2c 0a 45 54 4f 5f 47 4c 59 50 48 5f 49 4e 04,.ETO_GLYPH_IN
4e70: 44 45 58 20 20 20 20 3d 20 30 78 30 30 31 30 2c DEX = 0x0010,
4e80: 0a 45 54 4f 5f 52 54 4c 52 45 41 44 49 4e 47 20 .ETO_RTLREADING
4e90: 20 20 20 20 3d 20 30 78 30 30 38 30 2c 0a 45 54 = 0x0080,.ET
4ea0: 4f 5f 4e 55 4d 45 52 49 43 53 4c 4f 43 41 4c 20 O_NUMERICSLOCAL
4eb0: 20 3d 20 30 78 30 34 30 30 2c 0a 45 54 4f 5f 4e = 0x0400,.ETO_N
4ec0: 55 4d 45 52 49 43 53 4c 41 54 49 4e 20 20 3d 20 UMERICSLATIN =
4ed0: 30 78 30 38 30 30 2c 0a 45 54 4f 5f 49 47 4e 4f 0x0800,.ETO_IGNO
4ee0: 52 45 4c 41 4e 47 55 41 47 45 20 3d 20 30 78 31 RELANGUAGE = 0x1
4ef0: 30 30 30 3b 0a 73 74 61 74 69 63 0a 0a 69 66 20 000;.static..if
4f00: 28 5f 57 49 4e 33 32 5f 57 49 4e 4e 54 20 3e 3d (_WIN32_WINNT >=
4f10: 20 30 78 30 35 30 30 29 0a 7b 0a 20 20 20 20 63 0x0500).{. c
4f20: 6f 6e 73 74 20 55 49 4e 54 0a 20 20 20 20 45 54 onst UINT. ET
4f30: 4f 5f 50 44 59 20 3d 20 30 78 32 30 30 30 3b 0a O_PDY = 0x2000;.
4f40: 7d 0a 0a 2f 2f 20 47 64 69 43 6f 6d 6d 65 6e 74 }..// GdiComment
4f50: 28 29 0a 65 6e 75 6d 20 7b 0a 20 20 20 20 47 44 ().enum {. GD
4f60: 49 43 4f 4d 4d 45 4e 54 5f 42 45 47 49 4e 47 52 ICOMMENT_BEGINGR
4f70: 4f 55 50 20 20 20 20 20 20 20 3d 20 30 78 30 30 OUP = 0x00
4f80: 30 30 30 30 30 32 2c 0a 20 20 20 20 47 44 49 43 000002,. GDIC
4f90: 4f 4d 4d 45 4e 54 5f 45 4e 44 47 52 4f 55 50 20 OMMENT_ENDGROUP
4fa0: 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 = 0x0000
4fb0: 30 30 30 33 2c 0a 20 20 20 20 47 44 49 43 4f 4d 0003,. GDICOM
4fc0: 4d 45 4e 54 5f 55 4e 49 43 4f 44 45 5f 53 54 52 MENT_UNICODE_STR
4fd0: 49 4e 47 20 20 20 3d 20 30 78 30 30 30 30 30 30 ING = 0x000000
4fe0: 34 30 2c 0a 20 20 20 20 47 44 49 43 4f 4d 4d 45 40,. GDICOMME
4ff0: 4e 54 5f 55 4e 49 43 4f 44 45 5f 45 4e 44 20 20 NT_UNICODE_END
5000: 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 38 30 = 0x00000080
5010: 2c 0a 20 20 20 20 47 44 49 43 4f 4d 4d 45 4e 54 ,. GDICOMMENT
5020: 5f 4d 55 4c 54 49 46 4f 52 4d 41 54 53 20 20 20 _MULTIFORMATS
5030: 20 20 3d 20 30 78 34 30 30 30 30 30 30 34 2c 0a = 0x40000004,.
5040: 20 20 20 20 47 44 49 43 4f 4d 4d 45 4e 54 5f 49 GDICOMMENT_I
5050: 44 45 4e 54 49 46 49 45 52 20 20 20 20 20 20 20 DENTIFIER
5060: 3d 20 30 78 34 33 34 39 34 34 34 37 2c 0a 20 20 = 0x43494447,.
5070: 20 20 47 44 49 43 4f 4d 4d 45 4e 54 5f 57 49 4e GDICOMMENT_WIN
5080: 44 4f 57 53 5f 4d 45 54 41 46 49 4c 45 20 3d 20 DOWS_METAFILE =
5090: 30 78 38 30 30 30 30 30 30 31 2c 0a 7d 0a 0a 2f 0x80000001,.}../
50a0: 2f 20 47 65 74 2f 53 65 74 41 72 63 44 69 72 65 / Get/SetArcDire
50b0: 63 74 69 6f 6e 28 29 0a 65 6e 75 6d 20 3a 20 69 ction().enum : i
50c0: 6e 74 20 7b 0a 20 20 20 20 41 44 5f 43 4f 55 4e nt {. AD_COUN
50d0: 54 45 52 43 4c 4f 43 4b 57 49 53 45 20 3d 20 31 TERCLOCKWISE = 1
50e0: 2c 0a 20 20 20 20 41 44 5f 43 4c 4f 43 4b 57 49 ,. AD_CLOCKWI
50f0: 53 45 20 20 20 20 20 20 20 20 3d 20 32 0a 7d 0a SE = 2.}.
5100: 0a 63 6f 6e 73 74 20 52 44 48 5f 52 45 43 54 41 .const RDH_RECTA
5110: 4e 47 4c 45 53 20 3d 20 31 3b 0a 0a 2f 2f 20 47 NGLES = 1;..// G
5120: 43 50 52 45 53 55 4c 54 53 2e 6c 70 43 6c 61 73 CPRESULTS.lpClas
5130: 73 0a 65 6e 75 6d 20 7b 0a 20 20 20 20 47 43 50 s.enum {. GCP
5140: 43 4c 41 53 53 5f 4c 41 54 49 4e 20 20 3d 20 31 CLASS_LATIN = 1
5150: 2c 0a 20 20 20 20 47 43 50 43 4c 41 53 53 5f 48 ,. GCPCLASS_H
5160: 45 42 52 45 57 20 3d 20 32 2c 0a 20 20 20 20 47 EBREW = 2,. G
5170: 43 50 43 4c 41 53 53 5f 41 52 41 42 49 43 20 3d CPCLASS_ARABIC =
5180: 20 32 2c 0a 20 20 20 20 47 43 50 43 4c 41 53 53 2,. GCPCLASS
5190: 5f 4e 45 55 54 52 41 4c 2c 0a 20 20 20 20 47 43 _NEUTRAL,. GC
51a0: 50 43 4c 41 53 53 5f 4c 4f 43 41 4c 4e 55 4d 42 PCLASS_LOCALNUMB
51b0: 45 52 2c 0a 20 20 20 20 47 43 50 43 4c 41 53 53 ER,. GCPCLASS
51c0: 5f 4c 41 54 49 4e 4e 55 4d 42 45 52 2c 0a 20 20 _LATINNUMBER,.
51d0: 20 20 47 43 50 43 4c 41 53 53 5f 4c 41 54 49 4e GCPCLASS_LATIN
51e0: 4e 55 4d 45 52 49 43 54 45 52 4d 49 4e 41 54 4f NUMERICTERMINATO
51f0: 52 2c 0a 20 20 20 20 47 43 50 43 4c 41 53 53 5f R,. GCPCLASS_
5200: 4c 41 54 49 4e 4e 55 4d 45 52 49 43 53 45 50 41 LATINNUMERICSEPA
5210: 52 41 54 4f 52 2c 0a 20 20 20 20 47 43 50 43 4c RATOR,. GCPCL
5220: 41 53 53 5f 4e 55 4d 45 52 49 43 53 45 50 41 52 ASS_NUMERICSEPAR
5230: 41 54 4f 52 2c 20 20 20 20 20 2f 2f 20 3d 20 38 ATOR, // = 8
5240: 2c 0a 20 20 20 20 47 43 50 43 4c 41 53 53 5f 50 ,. GCPCLASS_P
5250: 4f 53 54 42 4f 55 4e 44 52 54 4c 20 3d 20 31 36 OSTBOUNDRTL = 16
5260: 2c 0a 20 20 20 20 47 43 50 43 4c 41 53 53 5f 50 ,. GCPCLASS_P
5270: 4f 53 54 42 4f 55 4e 44 4c 54 52 20 3d 20 33 32 OSTBOUNDLTR = 32
5280: 2c 0a 20 20 20 20 47 43 50 43 4c 41 53 53 5f 50 ,. GCPCLASS_P
5290: 52 45 42 4f 55 4e 44 52 54 4c 20 20 3d 20 36 34 REBOUNDRTL = 64
52a0: 2c 0a 20 20 20 20 47 43 50 43 4c 41 53 53 5f 50 ,. GCPCLASS_P
52b0: 52 45 42 4f 55 4e 44 4c 54 52 20 20 3d 20 31 32 REBOUNDLTR = 12
52c0: 38 2c 0a 20 20 20 20 47 43 50 47 4c 59 50 48 5f 8,. GCPGLYPH_
52d0: 4c 49 4e 4b 41 46 54 45 52 20 20 20 20 3d 20 30 LINKAFTER = 0
52e0: 78 34 30 30 30 2c 0a 20 20 20 20 47 43 50 47 4c x4000,. GCPGL
52f0: 59 50 48 5f 4c 49 4e 4b 42 45 46 4f 52 45 20 20 YPH_LINKBEFORE
5300: 20 3d 20 30 78 38 30 30 30 0a 7d 0a 0a 2f 2f 20 = 0x8000.}..//
5310: 47 65 74 42 6f 75 6e 64 73 52 65 63 74 28 29 2c GetBoundsRect(),
5320: 20 53 65 74 42 6f 75 6e 64 73 52 65 63 74 28 29 SetBoundsRect()
5330: 0a 63 6f 6e 73 74 20 55 49 4e 54 0a 44 43 42 5f .const UINT.DCB_
5340: 52 45 53 45 54 20 20 20 20 20 20 3d 20 31 2c 0a RESET = 1,.
5350: 44 43 42 5f 41 43 43 55 4d 55 4c 41 54 45 20 3d DCB_ACCUMULATE =
5360: 20 32 2c 0a 44 43 42 5f 53 45 54 20 20 20 20 20 2,.DCB_SET
5370: 20 20 20 3d 20 44 43 42 5f 52 45 53 45 54 20 7c = DCB_RESET |
5380: 20 44 43 42 5f 41 43 43 55 4d 55 4c 41 54 45 2c DCB_ACCUMULATE,
5390: 0a 44 43 42 5f 45 4e 41 42 4c 45 20 20 20 20 20 .DCB_ENABLE
53a0: 3d 20 34 2c 0a 44 43 42 5f 44 49 53 41 42 4c 45 = 4,.DCB_DISABLE
53b0: 20 20 20 20 3d 20 38 2c 0a 44 43 42 5f 44 49 52 = 8,.DCB_DIR
53c0: 54 59 20 20 20 20 20 20 3d 20 44 43 42 5f 41 43 TY = DCB_AC
53d0: 43 55 4d 55 4c 41 54 45 3b 0a 0a 2f 2f 20 2d 2d CUMULATE;..// --
53e0: 2d 0a 2f 2f 20 47 65 74 4f 62 6a 65 63 74 54 79 -.// GetObjectTy
53f0: 70 65 28 29 0a 65 6e 75 6d 20 3a 20 44 57 4f 52 pe().enum : DWOR
5400: 44 20 7b 0a 20 20 20 20 4f 42 4a 5f 50 45 4e 20 D {. OBJ_PEN
5410: 3d 20 31 2c 0a 20 20 20 20 4f 42 4a 5f 42 52 55 = 1,. OBJ_BRU
5420: 53 48 2c 0a 20 20 20 20 4f 42 4a 5f 44 43 2c 0a SH,. OBJ_DC,.
5430: 20 20 20 20 4f 42 4a 5f 4d 45 54 41 44 43 2c 0a OBJ_METADC,.
5440: 20 20 20 20 4f 42 4a 5f 50 41 4c 2c 0a 20 20 20 OBJ_PAL,.
5450: 20 4f 42 4a 5f 46 4f 4e 54 2c 0a 20 20 20 20 4f OBJ_FONT,. O
5460: 42 4a 5f 42 49 54 4d 41 50 2c 0a 20 20 20 20 4f BJ_BITMAP,. O
5470: 42 4a 5f 52 45 47 49 4f 4e 2c 0a 20 20 20 20 4f BJ_REGION,. O
5480: 42 4a 5f 4d 45 54 41 46 49 4c 45 2c 0a 20 20 20 BJ_METAFILE,.
5490: 20 4f 42 4a 5f 4d 45 4d 44 43 2c 0a 20 20 20 20 OBJ_MEMDC,.
54a0: 4f 42 4a 5f 45 58 54 50 45 4e 2c 0a 20 20 20 20 OBJ_EXTPEN,.
54b0: 4f 42 4a 5f 45 4e 48 4d 45 54 41 44 43 2c 0a 20 OBJ_ENHMETADC,.
54c0: 20 20 20 4f 42 4a 5f 45 4e 48 4d 45 54 41 46 49 OBJ_ENHMETAFI
54d0: 4c 45 2c 0a 20 20 20 20 4f 42 4a 5f 43 4f 4c 4f LE,. OBJ_COLO
54e0: 52 53 50 41 43 45 2c 0a 7d 0a 0a 2f 2f 20 2d 2d RSPACE,.}..// --
54f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
5500: 2d 2d 2d 0a 2f 2f 20 43 61 70 61 62 69 6c 69 74 ---.// Capabilit
5510: 69 65 73 20 66 6f 72 20 47 65 74 44 65 76 69 63 ies for GetDevic
5520: 65 43 61 70 73 28 64 63 2c 20 78 78 78 29 0a 0a eCaps(dc, xxx)..
5530: 65 6e 75 6d 20 3a 20 69 6e 74 20 7b 0a 20 20 20 enum : int {.
5540: 20 44 52 49 56 45 52 56 45 52 53 49 4f 4e 20 20 DRIVERVERSION
5550: 20 3d 20 30 2c 0a 20 20 20 20 54 45 43 48 4e 4f = 0,. TECHNO
5560: 4c 4f 47 59 20 20 20 20 20 20 3d 20 32 2c 0a 20 LOGY = 2,.
5570: 20 20 20 48 4f 52 5a 53 49 5a 45 20 20 20 20 20 HORZSIZE
5580: 20 20 20 3d 20 34 2c 0a 20 20 20 20 56 45 52 54 = 4,. VERT
5590: 53 49 5a 45 20 20 20 20 20 20 20 20 3d 20 36 2c SIZE = 6,
55a0: 0a 20 20 20 20 48 4f 52 5a 52 45 53 20 20 20 20 . HORZRES
55b0: 20 20 20 20 20 3d 20 38 2c 0a 20 20 20 20 56 45 = 8,. VE
55c0: 52 54 52 45 53 20 20 20 20 20 20 20 20 20 3d 20 RTRES =
55d0: 31 30 2c 0a 20 20 20 20 42 49 54 53 50 49 58 45 10,. BITSPIXE
55e0: 4c 20 20 20 20 20 20 20 3d 20 31 32 2c 0a 20 20 L = 12,.
55f0: 20 20 50 4c 41 4e 45 53 20 20 20 20 20 20 20 20 PLANES
5600: 20 20 3d 20 31 34 2c 0a 20 20 20 20 4e 55 4d 42 = 14,. NUMB
5610: 52 55 53 48 45 53 20 20 20 20 20 20 3d 20 31 36 RUSHES = 16
5620: 2c 0a 20 20 20 20 4e 55 4d 50 45 4e 53 20 20 20 ,. NUMPENS
5630: 20 20 20 20 20 20 3d 20 31 38 2c 0a 20 20 20 20 = 18,.
5640: 4e 55 4d 4d 41 52 4b 45 52 53 20 20 20 20 20 20 NUMMARKERS
5650: 3d 20 32 30 2c 0a 20 20 20 20 4e 55 4d 46 4f 4e = 20,. NUMFON
5660: 54 53 20 20 20 20 20 20 20 20 3d 20 32 32 2c 0a TS = 22,.
5670: 20 20 20 20 4e 55 4d 43 4f 4c 4f 52 53 20 20 20 NUMCOLORS
5680: 20 20 20 20 3d 20 32 34 2c 0a 20 20 20 20 50 44 = 24,. PD
5690: 45 56 49 43 45 53 49 5a 45 20 20 20 20 20 3d 20 EVICESIZE =
56a0: 32 36 2c 0a 20 20 20 20 43 55 52 56 45 43 41 50 26,. CURVECAP
56b0: 53 20 20 20 20 20 20 20 3d 20 32 38 2c 0a 20 20 S = 28,.
56c0: 20 20 4c 49 4e 45 43 41 50 53 20 20 20 20 20 20 LINECAPS
56d0: 20 20 3d 20 33 30 2c 0a 20 20 20 20 50 4f 4c 59 = 30,. POLY
56e0: 47 4f 4e 41 4c 43 41 50 53 20 20 20 3d 20 33 32 GONALCAPS = 32
56f0: 2c 0a 20 20 20 20 54 45 58 54 43 41 50 53 20 20 ,. TEXTCAPS
5700: 20 20 20 20 20 20 3d 20 33 34 2c 0a 20 20 20 20 = 34,.
5710: 43 4c 49 50 43 41 50 53 20 20 20 20 20 20 20 20 CLIPCAPS
5720: 3d 20 33 36 2c 0a 20 20 20 20 52 41 53 54 45 52 = 36,. RASTER
5730: 43 41 50 53 20 20 20 20 20 20 3d 20 33 38 2c 0a CAPS = 38,.
5740: 20 20 20 20 41 53 50 45 43 54 58 20 20 20 20 20 ASPECTX
5750: 20 20 20 20 3d 20 34 30 2c 0a 20 20 20 20 41 53 = 40,. AS
5760: 50 45 43 54 59 20 20 20 20 20 20 20 20 20 3d 20 PECTY =
5770: 34 32 2c 0a 20 20 20 20 41 53 50 45 43 54 58 59 42,. ASPECTXY
5780: 20 20 20 20 20 20 20 20 3d 20 34 34 2c 0a 20 20 = 44,.
5790: 20 20 4c 4f 47 50 49 58 45 4c 53 58 20 20 20 20 LOGPIXELSX
57a0: 20 20 3d 20 38 38 2c 0a 20 20 20 20 4c 4f 47 50 = 88,. LOGP
57b0: 49 58 45 4c 53 59 20 20 20 20 20 20 3d 20 39 30 IXELSY = 90
57c0: 2c 0a 20 20 20 20 53 49 5a 45 50 41 4c 45 54 54 ,. SIZEPALETT
57d0: 45 20 20 20 20 20 3d 20 31 30 34 2c 0a 20 20 20 E = 104,.
57e0: 20 4e 55 4d 52 45 53 45 52 56 45 44 20 20 20 20 NUMRESERVED
57f0: 20 3d 20 31 30 36 2c 0a 20 20 20 20 43 4f 4c 4f = 106,. COLO
5800: 52 52 45 53 20 20 20 20 20 20 20 20 3d 20 31 30 RRES = 10
5810: 38 2c 0a 20 20 20 20 50 48 59 53 49 43 41 4c 57 8,. PHYSICALW
5820: 49 44 54 48 20 20 20 3d 20 31 31 30 2c 0a 20 20 IDTH = 110,.
5830: 20 20 50 48 59 53 49 43 41 4c 48 45 49 47 48 54 PHYSICALHEIGHT
5840: 20 20 3d 20 31 31 31 2c 0a 20 20 20 20 50 48 59 = 111,. PHY
5850: 53 49 43 41 4c 4f 46 46 53 45 54 58 20 3d 20 31 SICALOFFSETX = 1
5860: 31 32 2c 0a 20 20 20 20 50 48 59 53 49 43 41 4c 12,. PHYSICAL
5870: 4f 46 46 53 45 54 59 20 3d 20 31 31 33 2c 0a 20 OFFSETY = 113,.
5880: 20 20 20 53 43 41 4c 49 4e 47 46 41 43 54 4f 52 SCALINGFACTOR
5890: 58 20 20 3d 20 31 31 34 2c 0a 20 20 20 20 53 43 X = 114,. SC
58a0: 41 4c 49 4e 47 46 41 43 54 4f 52 59 20 20 3d 20 ALINGFACTORY =
58b0: 31 31 35 2c 0a 20 20 20 20 56 52 45 46 52 45 53 115,. VREFRES
58c0: 48 20 20 20 20 20 20 20 20 3d 20 31 31 36 2c 0a H = 116,.
58d0: 20 20 20 20 44 45 53 4b 54 4f 50 56 45 52 54 52 DESKTOPVERTR
58e0: 45 53 20 20 3d 20 31 31 37 2c 0a 20 20 20 20 44 ES = 117,. D
58f0: 45 53 4b 54 4f 50 48 4f 52 5a 52 45 53 20 20 3d ESKTOPHORZRES =
5900: 20 31 31 38 2c 0a 20 20 20 20 42 4c 54 41 4c 49 118,. BLTALI
5910: 47 4e 4d 45 4e 54 20 20 20 20 3d 20 31 31 39 0a GNMENT = 119.
5920: 7d 0a 73 74 61 74 69 63 0a 0a 69 66 20 28 57 49 }.static..if (WI
5930: 4e 56 45 52 20 3e 3d 20 30 78 30 35 30 30 29 0a NVER >= 0x0500).
5940: 7b 0a 20 20 20 20 69 6e 74 0a 20 20 20 20 53 48 {. int. SH
5950: 41 44 45 42 4c 45 4e 44 43 41 50 53 20 3d 20 31 ADEBLENDCAPS = 1
5960: 32 30 2c 0a 20 20 20 20 43 4f 4c 4f 52 4d 47 4d 20,. COLORMGM
5970: 54 43 41 50 53 20 20 3d 20 31 32 31 3b 0a 7d 0a TCAPS = 121;.}.
5980: 0a 2f 2f 20 52 65 74 75 72 6e 20 76 61 6c 75 65 .// Return value
5990: 73 20 66 6f 72 20 47 65 74 44 65 76 69 63 65 43 s for GetDeviceC
59a0: 61 70 73 28 64 63 2c 20 54 45 43 48 4e 4f 4c 4f aps(dc, TECHNOLO
59b0: 47 59 29 0a 65 6e 75 6d 20 3a 20 69 6e 74 20 7b GY).enum : int {
59c0: 0a 20 20 20 20 44 54 5f 50 4c 4f 54 54 45 52 20 . DT_PLOTTER
59d0: 3d 20 30 2c 0a 20 20 20 20 44 54 5f 52 41 53 44 = 0,. DT_RASD
59e0: 49 53 50 4c 41 59 2c 0a 20 20 20 20 44 54 5f 52 ISPLAY,. DT_R
59f0: 41 53 50 52 49 4e 54 45 52 2c 0a 20 20 20 20 44 ASPRINTER,. D
5a00: 54 5f 52 41 53 43 41 4d 45 52 41 2c 0a 20 20 20 T_RASCAMERA,.
5a10: 20 44 54 5f 43 48 41 52 53 54 52 45 41 4d 2c 0a DT_CHARSTREAM,.
5a20: 20 20 20 20 44 54 5f 4d 45 54 41 46 49 4c 45 2c DT_METAFILE,
5a30: 0a 20 20 20 20 44 54 5f 44 49 53 50 46 49 4c 45 . DT_DISPFILE
5a40: 20 20 20 20 20 2f 2f 20 3d 20 36 0a 7d 0a 0a 2f // = 6.}../
5a50: 2f 20 52 65 74 75 72 6e 20 76 61 6c 75 65 73 20 / Return values
5a60: 66 6f 72 20 47 65 74 44 65 76 69 63 65 43 61 70 for GetDeviceCap
5a70: 73 28 64 63 2c 20 52 41 53 54 45 52 43 41 50 53 s(dc, RASTERCAPS
5a80: 29 0a 63 6f 6e 73 74 20 69 6e 74 0a 52 43 5f 4e ).const int.RC_N
5a90: 4f 4e 45 20 20 20 20 20 20 20 20 20 3d 20 30 2c ONE = 0,
5aa0: 0a 52 43 5f 42 49 54 42 4c 54 20 20 20 20 20 20 .RC_BITBLT
5ab0: 20 3d 20 31 2c 0a 52 43 5f 42 41 4e 44 49 4e 47 = 1,.RC_BANDING
5ac0: 20 20 20 20 20 20 3d 20 32 2c 0a 52 43 5f 53 43 = 2,.RC_SC
5ad0: 41 4c 49 4e 47 20 20 20 20 20 20 3d 20 34 2c 0a ALING = 4,.
5ae0: 52 43 5f 42 49 54 4d 41 50 36 34 20 20 20 20 20 RC_BITMAP64
5af0: 3d 20 38 2c 0a 52 43 5f 47 44 49 32 30 5f 4f 55 = 8,.RC_GDI20_OU
5b00: 54 50 55 54 20 3d 20 31 36 2c 0a 52 43 5f 47 44 TPUT = 16,.RC_GD
5b10: 49 32 30 5f 53 54 41 54 45 20 20 3d 20 33 32 2c I20_STATE = 32,
5b20: 0a 52 43 5f 53 41 56 45 42 49 54 4d 41 50 20 20 .RC_SAVEBITMAP
5b30: 20 3d 20 36 34 2c 0a 52 43 5f 44 49 5f 42 49 54 = 64,.RC_DI_BIT
5b40: 4d 41 50 20 20 20 20 3d 20 31 32 38 2c 0a 52 43 MAP = 128,.RC
5b50: 5f 50 41 4c 45 54 54 45 20 20 20 20 20 20 3d 20 _PALETTE =
5b60: 32 35 36 2c 0a 52 43 5f 44 49 42 54 4f 44 45 56 256,.RC_DIBTODEV
5b70: 20 20 20 20 20 3d 20 35 31 32 2c 0a 52 43 5f 42 = 512,.RC_B
5b80: 49 47 46 4f 4e 54 20 20 20 20 20 20 3d 20 31 30 IGFONT = 10
5b90: 32 34 2c 0a 52 43 5f 53 54 52 45 54 43 48 42 4c 24,.RC_STRETCHBL
5ba0: 54 20 20 20 3d 20 32 30 34 38 2c 0a 52 43 5f 46 T = 2048,.RC_F
5bb0: 4c 4f 4f 44 46 49 4c 4c 20 20 20 20 3d 20 34 30 LOODFILL = 40
5bc0: 39 36 2c 0a 52 43 5f 53 54 52 45 54 43 48 44 49 96,.RC_STRETCHDI
5bd0: 42 20 20 20 3d 20 38 31 39 32 2c 0a 52 43 5f 4f B = 8192,.RC_O
5be0: 50 5f 44 58 5f 4f 55 54 50 55 54 20 3d 20 30 78 P_DX_OUTPUT = 0x
5bf0: 34 30 30 30 2c 0a 52 43 5f 44 45 56 42 49 54 53 4000,.RC_DEVBITS
5c00: 20 20 20 20 20 20 3d 20 30 78 38 30 30 30 3b 0a = 0x8000;.
5c10: 0a 73 74 61 74 69 63 0a 0a 69 66 20 28 57 49 4e .static..if (WIN
5c20: 56 45 52 20 3e 3d 20 30 78 30 35 30 30 29 0a 7b VER >= 0x0500).{
5c30: 0a 20 20 20 20 2f 2a 20 53 68 61 64 69 6e 67 20 . /* Shading
5c40: 61 6e 64 20 62 6c 65 6e 64 69 6e 67 20 63 61 70 and blending cap
5c50: 73 20 2a 2f 0a 20 20 20 20 63 6f 6e 73 74 20 53 s */. const S
5c60: 42 5f 4e 4f 4e 45 20 20 20 20 20 20 20 20 20 20 B_NONE
5c70: 3d 20 30 78 30 30 30 30 30 30 30 30 3b 0a 20 20 = 0x00000000;.
5c80: 20 20 63 6f 6e 73 74 20 53 42 5f 43 4f 4e 53 54 const SB_CONST
5c90: 5f 41 4c 50 48 41 20 20 20 3d 20 30 78 30 30 30 _ALPHA = 0x000
5ca0: 30 30 30 30 31 3b 0a 20 20 20 20 63 6f 6e 73 74 00001;. const
5cb0: 20 53 42 5f 50 49 58 45 4c 5f 41 4c 50 48 41 20 SB_PIXEL_ALPHA
5cc0: 20 20 3d 20 30 78 30 30 30 30 30 30 30 32 3b 0a = 0x00000002;.
5cd0: 20 20 20 20 63 6f 6e 73 74 20 53 42 5f 50 52 45 const SB_PRE
5ce0: 4d 55 4c 54 5f 41 4c 50 48 41 20 3d 20 30 78 30 MULT_ALPHA = 0x0
5cf0: 30 30 30 30 30 30 34 3b 0a 20 20 20 20 63 6f 6e 0000004;. con
5d00: 73 74 20 53 42 5f 47 52 41 44 5f 52 45 43 54 20 st SB_GRAD_RECT
5d10: 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 31 30 = 0x00000010
5d20: 3b 0a 20 20 20 20 63 6f 6e 73 74 20 53 42 5f 47 ;. const SB_G
5d30: 52 41 44 5f 54 52 49 20 20 20 20 20 20 3d 20 30 RAD_TRI = 0
5d40: 78 30 30 30 30 30 30 32 30 3b 0a 0a 20 20 20 20 x00000020;..
5d50: 2f 2a 20 43 6f 6c 6f 72 20 4d 61 6e 61 67 65 6d /* Color Managem
5d60: 65 6e 74 20 63 61 70 73 20 2a 2f 0a 20 20 20 20 ent caps */.
5d70: 63 6f 6e 73 74 20 43 4d 5f 4e 4f 4e 45 20 20 20 const CM_NONE
5d80: 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 30 30 = 0x00000000
5d90: 3b 0a 20 20 20 20 63 6f 6e 73 74 20 43 4d 5f 44 ;. const CM_D
5da0: 45 56 49 43 45 5f 49 43 4d 20 3d 20 30 78 30 30 EVICE_ICM = 0x00
5db0: 30 30 30 30 30 31 3b 0a 20 20 20 20 63 6f 6e 73 000001;. cons
5dc0: 74 20 43 4d 5f 47 41 4d 4d 41 5f 52 41 4d 50 20 t CM_GAMMA_RAMP
5dd0: 3d 20 30 78 30 30 30 30 30 30 30 32 3b 0a 20 20 = 0x00000002;.
5de0: 20 20 63 6f 6e 73 74 20 43 4d 5f 43 4d 59 4b 5f const CM_CMYK_
5df0: 43 4f 4c 4f 52 20 3d 20 30 78 30 30 30 30 30 30 COLOR = 0x000000
5e00: 30 34 3b 0a 7d 0a 0a 2f 2f 20 52 65 74 75 72 6e 04;.}..// Return
5e10: 20 76 61 6c 75 65 73 20 66 6f 72 20 47 65 74 44 values for GetD
5e20: 65 76 69 63 65 43 61 70 73 28 64 63 2c 20 43 55 eviceCaps(dc, CU
5e30: 52 56 45 43 41 50 53 29 0a 63 6f 6e 73 74 20 69 RVECAPS).const i
5e40: 6e 74 0a 43 43 5f 4e 4f 4e 45 20 20 20 20 20 20 nt.CC_NONE
5e50: 20 3d 20 30 2c 0a 43 43 5f 43 49 52 43 4c 45 53 = 0,.CC_CIRCLES
5e60: 20 20 20 20 3d 20 31 2c 0a 43 43 5f 50 49 45 20 = 1,.CC_PIE
5e70: 20 20 20 20 20 20 20 3d 20 32 2c 0a 43 43 5f 43 = 2,.CC_C
5e80: 48 4f 52 44 20 20 20 20 20 20 3d 20 34 2c 0a 43 HORD = 4,.C
5e90: 43 5f 45 4c 4c 49 50 53 45 53 20 20 20 3d 20 38 C_ELLIPSES = 8
5ea0: 2c 0a 43 43 5f 57 49 44 45 20 20 20 20 20 20 20 ,.CC_WIDE
5eb0: 3d 20 31 36 2c 0a 43 43 5f 53 54 59 4c 45 44 20 = 16,.CC_STYLED
5ec0: 20 20 20 20 3d 20 33 32 2c 0a 43 43 5f 57 49 44 = 32,.CC_WID
5ed0: 45 53 54 59 4c 45 44 20 3d 20 36 34 2c 0a 43 43 ESTYLED = 64,.CC
5ee0: 5f 49 4e 54 45 52 49 4f 52 53 20 20 3d 20 31 32 _INTERIORS = 12
5ef0: 38 2c 0a 43 43 5f 52 4f 55 4e 44 52 45 43 54 20 8,.CC_ROUNDRECT
5f00: 20 3d 20 32 35 36 3b 0a 0a 2f 2f 20 52 65 74 75 = 256;..// Retu
5f10: 72 6e 20 76 61 6c 75 65 73 20 66 6f 72 20 47 65 rn values for Ge
5f20: 74 44 65 76 69 63 65 43 61 70 73 28 64 63 2c 20 tDeviceCaps(dc,
5f30: 4c 49 4e 45 43 41 50 53 29 0a 0a 63 6f 6e 73 74 LINECAPS)..const
5f40: 20 69 6e 74 0a 4c 43 5f 4e 4f 4e 45 20 20 20 20 int.LC_NONE
5f50: 20 20 20 3d 20 30 2c 0a 4c 43 5f 50 4f 4c 59 4c = 0,.LC_POLYL
5f60: 49 4e 45 20 20 20 3d 20 32 2c 0a 4c 43 5f 4d 41 INE = 2,.LC_MA
5f70: 52 4b 45 52 20 20 20 20 20 3d 20 34 2c 0a 4c 43 RKER = 4,.LC
5f80: 5f 50 4f 4c 59 4d 41 52 4b 45 52 20 3d 20 38 2c _POLYMARKER = 8,
5f90: 0a 4c 43 5f 57 49 44 45 20 20 20 20 20 20 20 3d .LC_WIDE =
5fa0: 20 31 36 2c 0a 4c 43 5f 53 54 59 4c 45 44 20 20 16,.LC_STYLED
5fb0: 20 20 20 3d 20 33 32 2c 0a 4c 43 5f 57 49 44 45 = 32,.LC_WIDE
5fc0: 53 54 59 4c 45 44 20 3d 20 36 34 2c 0a 4c 43 5f STYLED = 64,.LC_
5fd0: 49 4e 54 45 52 49 4f 52 53 20 20 3d 20 31 32 38 INTERIORS = 128
5fe0: 3b 0a 0a 2f 2f 20 52 65 74 75 72 6e 20 76 61 6c ;..// Return val
5ff0: 75 65 73 20 66 6f 72 20 47 65 74 44 65 76 69 63 ues for GetDevic
6000: 65 43 61 70 73 28 64 63 2c 20 50 4f 4c 59 47 4f eCaps(dc, POLYGO
6010: 4e 41 4c 43 41 50 53 29 0a 0a 63 6f 6e 73 74 20 NALCAPS)..const
6020: 69 6e 74 0a 50 43 5f 4e 4f 4e 45 20 20 20 20 20 int.PC_NONE
6030: 20 20 20 3d 20 30 2c 0a 50 43 5f 50 4f 4c 59 47 = 0,.PC_POLYG
6040: 4f 4e 20 20 20 20 20 3d 20 31 2c 0a 50 43 5f 52 ON = 1,.PC_R
6050: 45 43 54 41 4e 47 4c 45 20 20 20 3d 20 32 2c 0a ECTANGLE = 2,.
6060: 50 43 5f 57 49 4e 44 50 4f 4c 59 47 4f 4e 20 3d PC_WINDPOLYGON =
6070: 20 34 2c 0a 50 43 5f 54 52 41 50 45 5a 4f 49 44 4,.PC_TRAPEZOID
6080: 20 20 20 3d 20 34 2c 0a 50 43 5f 53 43 41 4e 4c = 4,.PC_SCANL
6090: 49 4e 45 20 20 20 20 3d 20 38 2c 0a 50 43 5f 57 INE = 8,.PC_W
60a0: 49 44 45 20 20 20 20 20 20 20 20 3d 20 31 36 2c IDE = 16,
60b0: 0a 50 43 5f 53 54 59 4c 45 44 20 20 20 20 20 20 .PC_STYLED
60c0: 3d 20 33 32 2c 0a 50 43 5f 57 49 44 45 53 54 59 = 32,.PC_WIDESTY
60d0: 4c 45 44 20 20 3d 20 36 34 2c 0a 50 43 5f 49 4e LED = 64,.PC_IN
60e0: 54 45 52 49 4f 52 53 20 20 20 3d 20 31 32 38 2c TERIORS = 128,
60f0: 0a 50 43 5f 50 4f 4c 59 50 4f 4c 59 47 4f 4e 20 .PC_POLYPOLYGON
6100: 3d 20 32 35 36 2c 0a 50 43 5f 50 41 54 48 53 20 = 256,.PC_PATHS
6110: 20 20 20 20 20 20 3d 20 35 31 32 3b 0a 0a 2f 2a = 512;../*
6120: 20 43 6c 69 70 70 69 6e 67 20 43 61 70 61 62 69 Clipping Capabi
6130: 6c 69 74 69 65 73 20 2a 2f 0a 63 6f 6e 73 74 20 lities */.const
6140: 69 6e 74 20 43 50 5f 4e 4f 4e 45 20 20 20 20 20 int CP_NONE
6150: 20 3d 20 30 2c 0a 20 20 20 20 20 20 20 20 20 20 = 0,.
6160: 43 50 5f 52 45 43 54 41 4e 47 4c 45 20 3d 20 31 CP_RECTANGLE = 1
6170: 2c 0a 20 20 20 20 20 20 20 20 20 20 43 50 5f 52 ,. CP_R
6180: 45 47 49 4f 4e 20 20 20 20 3d 20 32 3b 0a 0a 2f EGION = 2;../
6190: 2f 20 52 65 74 75 72 6e 20 76 61 6c 75 65 73 20 / Return values
61a0: 66 6f 72 20 47 65 74 44 65 76 69 63 65 43 61 70 for GetDeviceCap
61b0: 73 28 64 63 2c 20 54 45 58 54 43 41 50 53 29 0a s(dc, TEXTCAPS).
61c0: 0a 63 6f 6e 73 74 20 69 6e 74 0a 54 43 5f 4f 50 .const int.TC_OP
61d0: 5f 43 48 41 52 41 43 54 45 52 20 3d 20 31 2c 0a _CHARACTER = 1,.
61e0: 54 43 5f 4f 50 5f 53 54 52 4f 4b 45 20 20 20 20 TC_OP_STROKE
61f0: 3d 20 32 2c 0a 54 43 5f 43 50 5f 53 54 52 4f 4b = 2,.TC_CP_STROK
6200: 45 20 20 20 20 3d 20 34 2c 0a 54 43 5f 43 52 5f E = 4,.TC_CR_
6210: 39 30 20 20 20 20 20 20 20 20 3d 20 38 2c 0a 54 90 = 8,.T
6220: 43 5f 43 52 5f 41 4e 59 20 20 20 20 20 20 20 3d C_CR_ANY =
6230: 20 31 36 2c 0a 54 43 5f 53 46 5f 58 5f 59 49 4e 16,.TC_SF_X_YIN
6240: 44 45 50 20 20 3d 20 33 32 2c 0a 54 43 5f 53 41 DEP = 32,.TC_SA
6250: 5f 44 4f 55 42 4c 45 20 20 20 20 3d 20 36 34 2c _DOUBLE = 64,
6260: 0a 54 43 5f 53 41 5f 49 4e 54 45 47 45 52 20 20 .TC_SA_INTEGER
6270: 20 3d 20 31 32 38 2c 0a 54 43 5f 53 41 5f 43 4f = 128,.TC_SA_CO
6280: 4e 54 49 4e 20 20 20 20 3d 20 32 35 36 2c 0a 54 NTIN = 256,.T
6290: 43 5f 45 41 5f 44 4f 55 42 4c 45 20 20 20 20 3d C_EA_DOUBLE =
62a0: 20 35 31 32 2c 0a 54 43 5f 49 41 5f 41 42 4c 45 512,.TC_IA_ABLE
62b0: 20 20 20 20 20 20 3d 20 31 30 32 34 2c 0a 54 43 = 1024,.TC
62c0: 5f 55 41 5f 41 42 4c 45 20 20 20 20 20 20 3d 20 _UA_ABLE =
62d0: 32 30 34 38 2c 0a 54 43 5f 53 4f 5f 41 42 4c 45 2048,.TC_SO_ABLE
62e0: 20 20 20 20 20 20 3d 20 34 30 39 36 2c 0a 54 43 = 4096,.TC
62f0: 5f 52 41 5f 41 42 4c 45 20 20 20 20 20 20 3d 20 _RA_ABLE =
6300: 38 31 39 32 2c 0a 54 43 5f 56 41 5f 41 42 4c 45 8192,.TC_VA_ABLE
6310: 20 20 20 20 20 20 3d 20 31 36 33 38 34 2c 0a 54 = 16384,.T
6320: 43 5f 52 45 53 45 52 56 45 44 20 20 20 20 20 3d C_RESERVED =
6330: 20 33 32 37 36 38 2c 0a 54 43 5f 53 43 52 4f 4c 32768,.TC_SCROL
6340: 4c 42 4c 54 20 20 20 20 3d 20 36 35 35 33 36 3b LBLT = 65536;
6350: 0a 0a 2f 2f 20 45 6e 64 20 47 65 74 44 65 76 69 ..// End GetDevi
6360: 63 65 43 61 70 73 0a 2f 2f 20 2d 2d 2d 2d 2d 2d ceCaps.// ------
6370: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a ---------------.
6380: 2f 2f 20 47 65 74 43 68 61 72 61 63 74 65 72 50 // GetCharacterP
6390: 6c 61 63 65 6d 65 6e 74 28 29 2c 20 61 6e 64 20 lacement(), and
63a0: 47 65 74 46 6f 6e 74 4c 61 6e 67 75 61 67 65 49 GetFontLanguageI
63b0: 6e 66 6f 28 29 0a 63 6f 6e 73 74 20 44 57 4f 52 nfo().const DWOR
63c0: 44 0a 47 43 50 5f 44 42 43 53 20 3d 20 31 2c 0a D.GCP_DBCS = 1,.
63d0: 47 43 50 5f 52 45 4f 52 44 45 52 20 20 20 20 20 GCP_REORDER
63e0: 20 20 20 20 3d 20 32 2c 0a 47 43 50 5f 55 53 45 = 2,.GCP_USE
63f0: 4b 45 52 4e 49 4e 47 20 20 20 20 20 20 3d 20 38 KERNING = 8
6400: 2c 0a 47 43 50 5f 47 4c 59 50 48 53 48 41 50 45 ,.GCP_GLYPHSHAPE
6410: 20 20 20 20 20 20 3d 20 31 36 2c 0a 47 43 50 5f = 16,.GCP_
6420: 4c 49 47 41 54 45 20 20 20 20 20 20 20 20 20 20 LIGATE
6430: 3d 20 33 32 2c 0a 47 43 50 5f 44 49 41 43 52 49 = 32,.GCP_DIACRI
6440: 54 49 43 20 20 20 20 20 20 20 3d 20 32 35 36 2c TIC = 256,
6450: 0a 47 43 50 5f 4b 41 53 48 49 44 41 20 20 20 20 .GCP_KASHIDA
6460: 20 20 20 20 20 3d 20 31 30 32 34 2c 0a 47 43 50 = 1024,.GCP
6470: 5f 45 52 52 4f 52 20 20 20 20 20 20 20 20 20 20 _ERROR
6480: 20 3d 20 30 78 38 30 30 30 2c 0a 47 43 50 5f 4a = 0x8000,.GCP_J
6490: 55 53 54 49 46 59 20 20 20 20 20 20 20 20 20 3d USTIFY =
64a0: 20 30 78 31 30 30 30 30 2c 0a 47 43 50 5f 43 4c 0x10000,.GCP_CL
64b0: 41 53 53 49 4e 20 20 20 20 20 20 20 20 20 3d 20 ASSIN =
64c0: 30 78 38 30 30 30 30 2c 0a 47 43 50 5f 4d 41 58 0x80000,.GCP_MAX
64d0: 45 58 54 45 4e 54 20 20 20 20 20 20 20 3d 20 30 EXTENT = 0
64e0: 78 31 30 30 30 30 30 2c 0a 47 43 50 5f 4a 55 53 x100000,.GCP_JUS
64f0: 54 49 46 59 49 4e 20 20 20 20 20 20 20 3d 20 30 TIFYIN = 0
6500: 78 32 30 30 30 30 30 2c 0a 47 43 50 5f 44 49 53 x200000,.GCP_DIS
6510: 50 4c 41 59 5a 57 47 20 20 20 20 20 20 3d 20 30 PLAYZWG = 0
6520: 78 34 30 30 30 30 30 2c 0a 47 43 50 5f 53 59 4d x400000,.GCP_SYM
6530: 53 57 41 50 4f 46 46 20 20 20 20 20 20 3d 20 30 SWAPOFF = 0
6540: 78 38 30 30 30 30 30 2c 0a 47 43 50 5f 4e 55 4d x800000,.GCP_NUM
6550: 45 52 49 43 4f 56 45 52 52 49 44 45 20 3d 20 30 ERICOVERRIDE = 0
6560: 78 31 30 30 30 30 30 30 2c 0a 47 43 50 5f 4e 45 x1000000,.GCP_NE
6570: 55 54 52 41 4c 4f 56 45 52 52 49 44 45 20 3d 20 UTRALOVERRIDE =
6580: 30 78 32 30 30 30 30 30 30 2c 0a 47 43 50 5f 4e 0x2000000,.GCP_N
6590: 55 4d 45 52 49 43 53 4c 41 54 49 4e 20 20 20 3d UMERICSLATIN =
65a0: 20 30 78 34 30 30 30 30 30 30 2c 0a 47 43 50 5f 0x4000000,.GCP_
65b0: 4e 55 4d 45 52 49 43 53 4c 4f 43 41 4c 20 20 20 NUMERICSLOCAL
65c0: 3d 20 30 78 38 30 30 30 30 30 30 2c 0a 0a 2f 2f = 0x8000000,..//
65d0: 20 4f 6e 6c 79 20 66 6f 72 20 47 65 74 46 6f 6e Only for GetFon
65e0: 74 4c 61 6e 67 75 61 67 65 49 6e 66 6f 28 29 0a tLanguageInfo().
65f0: 46 4c 49 5f 47 4c 59 50 48 53 20 3d 20 30 78 34 FLI_GLYPHS = 0x4
6600: 30 30 30 30 2c 0a 46 4c 49 5f 4d 41 53 4b 20 3d 0000,.FLI_MASK =
6610: 20 30 78 31 30 33 62 3b 0a 0a 2f 2f 20 47 65 74 0x103b;..// Get
6620: 47 6c 79 70 68 4f 75 74 6c 69 6e 65 28 29 0a 65 GlyphOutline().e
6630: 6e 75 6d 20 3a 20 55 49 4e 54 20 7b 0a 20 20 20 num : UINT {.
6640: 20 47 47 4f 5f 4d 45 54 52 49 43 53 20 20 20 20 GGO_METRICS
6650: 20 20 3d 20 30 2c 0a 20 20 20 20 47 47 4f 5f 42 = 0,. GGO_B
6660: 49 54 4d 41 50 20 20 20 20 20 20 20 3d 20 31 2c ITMAP = 1,
6670: 0a 20 20 20 20 47 47 4f 5f 4e 41 54 49 56 45 20 . GGO_NATIVE
6680: 20 20 20 20 20 20 3d 20 32 2c 0a 20 20 20 20 47 = 2,. G
6690: 47 4f 5f 42 45 5a 49 45 52 20 20 20 20 20 20 20 GO_BEZIER
66a0: 3d 20 33 2c 0a 20 20 20 20 47 47 4f 5f 47 52 41 = 3,. GGO_GRA
66b0: 59 32 5f 42 49 54 4d 41 50 20 3d 20 34 2c 0a 20 Y2_BITMAP = 4,.
66c0: 20 20 20 47 47 4f 5f 47 52 41 59 34 5f 42 49 54 GGO_GRAY4_BIT
66d0: 4d 41 50 20 3d 20 35 2c 0a 20 20 20 20 47 47 4f MAP = 5,. GGO
66e0: 5f 47 52 41 59 38 5f 42 49 54 4d 41 50 20 3d 20 _GRAY8_BITMAP =
66f0: 36 2c 0a 20 20 20 20 47 47 4f 5f 47 4c 59 50 48 6,. GGO_GLYPH
6700: 5f 49 4e 44 45 58 20 20 3d 20 31 32 38 2c 0a 20 _INDEX = 128,.
6710: 20 20 20 47 47 4f 5f 55 4e 48 49 4e 54 45 44 20 GGO_UNHINTED
6720: 20 20 20 20 3d 20 32 35 36 0a 7d 0a 0a 65 6e 75 = 256.}..enu
6730: 6d 20 3a 20 69 6e 74 20 7b 0a 20 20 20 20 47 4d m : int {. GM
6740: 5f 43 4f 4d 50 41 54 49 42 4c 45 20 3d 20 31 2c _COMPATIBLE = 1,
6750: 0a 20 20 20 20 47 4d 5f 41 44 56 41 4e 43 45 44 . GM_ADVANCED
6760: 0a 7d 0a 63 6f 6e 73 74 20 47 4d 5f 4c 41 53 54 .}.const GM_LAST
6770: 20 3d 20 47 4d 5f 41 44 56 41 4e 43 45 44 3b 0a = GM_ADVANCED;.
6780: 0a 65 6e 75 6d 20 3a 20 69 6e 74 20 7b 0a 20 20 .enum : int {.
6790: 20 20 4d 4d 5f 54 45 58 54 20 3d 20 31 2c 0a 20 MM_TEXT = 1,.
67a0: 20 20 20 4d 4d 5f 4c 4f 4d 45 54 52 49 43 2c 0a MM_LOMETRIC,.
67b0: 20 20 20 20 4d 4d 5f 48 49 4d 45 54 52 49 43 2c MM_HIMETRIC,
67c0: 0a 20 20 20 20 4d 4d 5f 4c 4f 45 4e 47 4c 49 53 . MM_LOENGLIS
67d0: 48 2c 0a 20 20 20 20 4d 4d 5f 48 49 45 4e 47 4c H,. MM_HIENGL
67e0: 49 53 48 2c 0a 20 20 20 20 4d 4d 5f 54 57 49 50 ISH,. MM_TWIP
67f0: 53 2c 0a 20 20 20 20 4d 4d 5f 49 53 4f 54 52 4f S,. MM_ISOTRO
6800: 50 49 43 2c 0a 20 20 20 20 4d 4d 5f 41 4e 49 53 PIC,. MM_ANIS
6810: 4f 54 52 4f 50 49 43 2c 0a 7d 0a 0a 63 6f 6e 73 OTROPIC,.}..cons
6820: 74 20 69 6e 74 0a 4d 4d 5f 4d 49 4e 20 3d 20 4d t int.MM_MIN = M
6830: 4d 5f 54 45 58 54 2c 0a 4d 4d 5f 4d 41 58 20 3d M_TEXT,.MM_MAX =
6840: 20 4d 4d 5f 41 4e 49 53 4f 54 52 4f 50 49 43 2c MM_ANISOTROPIC,
6850: 0a 4d 4d 5f 4d 41 58 5f 46 49 58 45 44 53 43 41 .MM_MAX_FIXEDSCA
6860: 4c 45 20 3d 20 4d 4d 5f 54 57 49 50 53 3b 0a 0a LE = MM_TWIPS;..
6870: 63 6f 6e 73 74 20 41 42 53 4f 4c 55 54 45 20 3d const ABSOLUTE =
6880: 20 31 3b 0a 63 6f 6e 73 74 20 52 45 4c 41 54 49 1;.const RELATI
6890: 56 45 20 3d 20 32 3b 0a 0a 65 6e 75 6d 20 3a 20 VE = 2;..enum :
68a0: 42 59 54 45 20 7b 0a 20 20 20 20 50 43 5f 52 45 BYTE {. PC_RE
68b0: 53 45 52 56 45 44 20 20 20 3d 20 31 2c 0a 20 20 SERVED = 1,.
68c0: 20 20 50 43 5f 45 58 50 4c 49 43 49 54 20 20 20 PC_EXPLICIT
68d0: 3d 20 32 2c 0a 20 20 20 20 50 43 5f 4e 4f 43 4f = 2,. PC_NOCO
68e0: 4c 4c 41 50 53 45 20 3d 20 34 0a 7d 0a 0a 2f 2a LLAPSE = 4.}../*
68f0: 20 46 49 58 4d 45 3a 20 6d 6f 76 65 20 74 6f 20 FIXME: move to
6900: 77 69 6e 33 32 2e 63 6f 6d 6d 63 74 72 6c 20 3f win32.commctrl ?
6910: 20 2a 2f 0a 0a 2f 2f 20 49 6d 61 67 65 4c 69 73 */..// ImageLis
6920: 74 0a 63 6f 6e 73 74 20 43 4f 4c 4f 52 52 45 46 t.const COLORREF
6930: 0a 43 4c 52 5f 4e 4f 4e 45 20 20 20 20 3d 20 30 .CLR_NONE = 0
6940: 78 66 66 66 66 66 66 66 66 2c 0a 43 4c 52 5f 49 xffffffff,.CLR_I
6950: 4e 56 41 4c 49 44 20 3d 20 43 4c 52 5f 4e 4f 4e NVALID = CLR_NON
6960: 45 2c 0a 43 4c 52 5f 44 45 46 41 55 4c 54 20 3d E,.CLR_DEFAULT =
6970: 20 30 78 66 66 30 30 30 30 30 30 3b 0a 0a 2f 2f 0xff000000;..//
6980: 20 52 41 53 54 45 52 49 5a 45 52 5f 53 54 41 54 RASTERIZER_STAT
6990: 55 53 2e 77 46 6c 61 67 73 0a 63 6f 6e 73 74 20 US.wFlags.const
69a0: 73 68 6f 72 74 0a 54 54 5f 41 56 41 49 4c 41 42 short.TT_AVAILAB
69b0: 4c 45 20 3d 20 31 2c 0a 54 54 5f 45 4e 41 42 4c LE = 1,.TT_ENABL
69c0: 45 44 20 20 20 3d 20 32 3b 0a 0a 2f 2f 20 47 65 ED = 2;..// Ge
69d0: 74 53 74 6f 63 6b 4f 62 6a 65 63 74 28 29 0a 65 tStockObject().e
69e0: 6e 75 6d 20 3a 20 69 6e 74 20 7b 0a 20 20 20 20 num : int {.
69f0: 57 48 49 54 45 5f 42 52 55 53 48 20 3d 20 30 2c WHITE_BRUSH = 0,
6a00: 0a 20 20 20 20 4c 54 47 52 41 59 5f 42 52 55 53 . LTGRAY_BRUS
6a10: 48 2c 0a 20 20 20 20 47 52 41 59 5f 42 52 55 53 H,. GRAY_BRUS
6a20: 48 2c 0a 20 20 20 20 44 4b 47 52 41 59 5f 42 52 H,. DKGRAY_BR
6a30: 55 53 48 2c 0a 20 20 20 20 42 4c 41 43 4b 5f 42 USH,. BLACK_B
6a40: 52 55 53 48 2c 0a 20 20 20 20 48 4f 4c 4c 4f 57 RUSH,. HOLLOW
6a50: 5f 42 52 55 53 48 2c 20 20 20 20 20 2f 2f 20 3d _BRUSH, // =
6a60: 20 35 0a 20 20 20 20 4e 55 4c 4c 5f 42 52 55 53 5. NULL_BRUS
6a70: 48 20 3d 20 48 4f 4c 4c 4f 57 5f 42 52 55 53 48 H = HOLLOW_BRUSH
6a80: 2c 0a 20 20 20 20 57 48 49 54 45 5f 50 45 4e 20 ,. WHITE_PEN
6a90: 20 3d 20 36 2c 0a 20 20 20 20 42 4c 41 43 4b 5f = 6,. BLACK_
6aa0: 50 45 4e 2c 0a 20 20 20 20 4e 55 4c 4c 5f 50 45 PEN,. NULL_PE
6ab0: 4e 2c 20 20 20 20 20 2f 2f 20 3d 20 38 0a 20 20 N, // = 8.
6ac0: 20 20 4f 45 4d 5f 46 49 58 45 44 5f 46 4f 4e 54 OEM_FIXED_FONT
6ad0: 20 3d 20 31 30 2c 0a 20 20 20 20 41 4e 53 49 5f = 10,. ANSI_
6ae0: 46 49 58 45 44 5f 46 4f 4e 54 2c 0a 20 20 20 20 FIXED_FONT,.
6af0: 41 4e 53 49 5f 56 41 52 5f 46 4f 4e 54 2c 0a 20 ANSI_VAR_FONT,.
6b00: 20 20 20 53 59 53 54 45 4d 5f 46 4f 4e 54 2c 0a SYSTEM_FONT,.
6b10: 20 20 20 20 44 45 56 49 43 45 5f 44 45 46 41 55 DEVICE_DEFAU
6b20: 4c 54 5f 46 4f 4e 54 2c 0a 20 20 20 20 44 45 46 LT_FONT,. DEF
6b30: 41 55 4c 54 5f 50 41 4c 45 54 54 45 2c 0a 20 20 AULT_PALETTE,.
6b40: 20 20 53 59 53 54 45 4d 5f 46 49 58 45 44 5f 46 SYSTEM_FIXED_F
6b50: 4f 4e 54 2c 0a 7d 0a 73 74 61 74 69 63 0a 0a 69 ONT,.}.static..i
6b60: 66 20 28 57 49 4e 56 45 52 20 3e 3d 20 30 78 30 f (WINVER >= 0x0
6b70: 34 30 30 29 0a 7b 0a 20 20 20 20 65 6e 75 6d 20 400).{. enum
6b80: 3a 20 69 6e 74 20 7b 0a 20 20 20 20 20 20 20 20 : int {.
6b90: 44 45 46 41 55 4c 54 5f 47 55 49 5f 46 4f 4e 54 DEFAULT_GUI_FONT
6ba0: 20 3d 20 53 59 53 54 45 4d 5f 46 49 58 45 44 5f = SYSTEM_FIXED_
6bb0: 46 4f 4e 54 20 2b 20 31 2c 0a 20 20 20 20 7d 0a FONT + 1,. }.
6bc0: 7d 0a 0a 73 74 61 74 69 63 0a 0a 69 66 20 28 5f }..static..if (_
6bd0: 57 49 4e 33 32 5f 57 49 4e 4e 54 20 3e 3d 20 30 WIN32_WINNT >= 0
6be0: 78 30 35 30 30 29 0a 7b 0a 20 20 20 20 65 6e 75 x0500).{. enu
6bf0: 6d 20 3a 20 69 6e 74 20 7b 0a 20 20 20 20 20 20 m : int {.
6c00: 20 20 44 43 5f 42 52 55 53 48 20 3d 20 44 45 46 DC_BRUSH = DEF
6c10: 41 55 4c 54 5f 47 55 49 5f 46 4f 4e 54 20 2b 20 AULT_GUI_FONT +
6c20: 31 2c 0a 20 20 20 20 20 20 20 20 44 43 5f 50 45 1,. DC_PE
6c30: 4e 2c 0a 20 20 20 20 7d 0a 7d 0a 0a 73 74 61 74 N,. }.}..stat
6c40: 69 63 0a 0a 69 66 20 28 5f 57 49 4e 33 32 5f 57 ic..if (_WIN32_W
6c50: 49 4e 4e 54 20 3e 3d 20 30 78 30 35 30 30 29 0a INNT >= 0x0500).
6c60: 7b 0a 20 20 20 20 63 6f 6e 73 74 20 53 54 4f 43 {. const STOC
6c70: 4b 5f 4c 41 53 54 20 3d 20 44 43 5f 50 45 4e 3b K_LAST = DC_PEN;
6c80: 0a 7d 0a 65 6c 73 65 20 73 74 61 74 69 63 0a 0a .}.else static..
6c90: 20 20 20 20 69 66 20 28 57 49 4e 56 45 52 20 3e if (WINVER >
6ca0: 3d 20 30 78 30 34 30 30 29 0a 20 20 20 20 7b 0a = 0x0400). {.
6cb0: 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 53 54 const ST
6cc0: 4f 43 4b 5f 4c 41 53 54 20 3d 20 44 45 46 41 55 OCK_LAST = DEFAU
6cd0: 4c 54 5f 47 55 49 5f 46 4f 4e 54 3b 0a 20 20 20 LT_GUI_FONT;.
6ce0: 20 7d 0a 20 20 20 20 65 6c 73 65 0a 20 20 20 20 }. else.
6cf0: 7b 0a 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 {. const
6d00: 53 54 4f 43 4b 5f 4c 41 53 54 20 3d 20 53 59 53 STOCK_LAST = SYS
6d10: 54 45 4d 5f 46 49 58 45 44 5f 46 4f 4e 54 3b 0a TEM_FIXED_FONT;.
6d20: 20 20 20 20 7d 0a 0a 2f 2f 20 47 65 74 2f 53 65 }..// Get/Se
6d30: 74 53 79 73 74 65 6d 50 61 6c 65 74 74 65 55 73 tSystemPaletteUs
6d40: 65 28 29 0a 65 6e 75 6d 20 3a 20 55 49 4e 54 20 e().enum : UINT
6d50: 7b 0a 20 20 20 20 53 59 53 50 41 4c 5f 45 52 52 {. SYSPAL_ERR
6d60: 4f 52 20 20 20 20 20 20 20 3d 20 30 2c 0a 20 20 OR = 0,.
6d70: 20 20 53 59 53 50 41 4c 5f 53 54 41 54 49 43 20 SYSPAL_STATIC
6d80: 20 20 20 20 20 3d 20 31 2c 0a 20 20 20 20 53 59 = 1,. SY
6d90: 53 50 41 4c 5f 4e 4f 53 54 41 54 49 43 20 20 20 SPAL_NOSTATIC
6da0: 20 3d 20 32 2c 0a 20 20 20 20 53 59 53 50 41 4c = 2,. SYSPAL
6db0: 5f 4e 4f 53 54 41 54 49 43 32 35 36 20 3d 20 33 _NOSTATIC256 = 3
6dc0: 2c 0a 7d 0a 0a 2f 2f 20 53 65 74 54 65 78 74 41 ,.}..// SetTextA
6dd0: 6c 69 67 6e 28 29 0a 63 6f 6e 73 74 20 55 49 4e lign().const UIN
6de0: 54 0a 54 41 5f 54 4f 50 20 20 20 20 20 20 20 20 T.TA_TOP
6df0: 3d 20 30 2c 0a 54 41 5f 43 45 4e 54 45 52 20 20 = 0,.TA_CENTER
6e00: 20 20 20 3d 20 36 2c 0a 54 41 5f 42 4f 54 54 4f = 6,.TA_BOTTO
6e10: 4d 20 20 20 20 20 3d 20 38 2c 0a 54 41 5f 42 41 M = 8,.TA_BA
6e20: 53 45 4c 49 4e 45 20 20 20 3d 20 32 34 2c 0a 54 SELINE = 24,.T
6e30: 41 5f 4c 45 46 54 20 20 20 20 20 20 20 3d 20 30 A_LEFT = 0
6e40: 2c 0a 54 41 5f 52 49 47 48 54 20 20 20 20 20 20 ,.TA_RIGHT
6e50: 3d 20 32 2c 0a 54 41 5f 52 54 4c 52 45 41 44 49 = 2,.TA_RTLREADI
6e60: 4e 47 20 3d 20 32 35 36 2c 0a 54 41 5f 4e 4f 55 NG = 256,.TA_NOU
6e70: 50 44 41 54 45 43 50 20 3d 20 30 2c 0a 54 41 5f PDATECP = 0,.TA_
6e80: 55 50 44 41 54 45 43 50 20 20 20 3d 20 31 2c 0a UPDATECP = 1,.
6e90: 54 41 5f 4d 41 53 4b 20 20 20 20 20 20 20 3d 20 TA_MASK =
6ea0: 54 41 5f 42 41 53 45 4c 49 4e 45 20 2b 20 54 41 TA_BASELINE + TA
6eb0: 5f 43 45 4e 54 45 52 20 2b 20 54 41 5f 55 50 44 _CENTER + TA_UPD
6ec0: 41 54 45 43 50 20 2b 20 54 41 5f 52 54 4c 52 45 ATECP + TA_RTLRE
6ed0: 41 44 49 4e 47 2c 0a 56 54 41 5f 42 41 53 45 4c ADING,.VTA_BASEL
6ee0: 49 4e 45 20 20 3d 20 54 41 5f 42 41 53 45 4c 49 INE = TA_BASELI
6ef0: 4e 45 2c 0a 56 54 41 5f 43 45 4e 54 45 52 20 20 NE,.VTA_CENTER
6f00: 20 20 3d 20 54 41 5f 43 45 4e 54 45 52 2c 0a 56 = TA_CENTER,.V
6f10: 54 41 5f 4c 45 46 54 20 20 20 20 20 20 3d 20 54 TA_LEFT = T
6f20: 41 5f 42 4f 54 54 4f 4d 2c 0a 56 54 41 5f 52 49 A_BOTTOM,.VTA_RI
6f30: 47 48 54 20 20 20 20 20 3d 20 54 41 5f 54 4f 50 GHT = TA_TOP
6f40: 2c 0a 56 54 41 5f 42 4f 54 54 4f 4d 20 20 20 20 ,.VTA_BOTTOM
6f50: 3d 20 54 41 5f 52 49 47 48 54 2c 0a 56 54 41 5f = TA_RIGHT,.VTA_
6f60: 54 4f 50 20 20 20 20 20 20 20 3d 20 54 41 5f 4c TOP = TA_L
6f70: 45 46 54 3b 0a 0a 2f 2f 20 45 4d 52 4d 4f 44 49 EFT;..// EMRMODI
6f80: 46 59 57 4f 52 4c 44 54 52 41 4e 53 46 4f 52 4d FYWORLDTRANSFORM
6f90: 2e 69 4d 6f 64 65 0a 65 6e 75 6d 20 3a 20 44 57 .iMode.enum : DW
6fa0: 4f 52 44 20 7b 0a 20 20 20 20 4d 57 54 5f 49 44 ORD {. MWT_ID
6fb0: 45 4e 54 49 54 59 20 3d 20 31 2c 0a 20 20 20 20 ENTITY = 1,.
6fc0: 4d 57 54 5f 4c 45 46 54 4d 55 4c 54 49 50 4c 59 MWT_LEFTMULTIPLY
6fd0: 2c 0a 20 20 20 20 4d 57 54 5f 52 49 47 48 54 4d ,. MWT_RIGHTM
6fe0: 55 4c 54 49 50 4c 59 0a 7d 0a 0a 63 6f 6e 73 74 ULTIPLY.}..const
6ff0: 20 44 57 4f 52 44 0a 4d 57 54 5f 4d 49 4e 20 3d DWORD.MWT_MIN =
7000: 20 4d 57 54 5f 49 44 45 4e 54 49 54 59 2c 0a 4d MWT_IDENTITY,.M
7010: 57 54 5f 4d 41 58 20 3d 20 4d 57 54 5f 52 49 47 WT_MAX = MWT_RIG
7020: 48 54 4d 55 4c 54 49 50 4c 59 3b 0a 0a 65 6e 75 HTMULTIPLY;..enu
7030: 6d 20 7b 0a 20 20 20 20 54 52 41 4e 53 50 41 52 m {. TRANSPAR
7040: 45 4e 54 20 3d 20 31 2c 0a 20 20 20 20 4f 50 41 ENT = 1,. OPA
7050: 51 55 45 20 20 20 20 20 20 3d 20 32 0a 7d 0a 0a QUE = 2.}..
7060: 2f 2f 20 47 65 74 2f 53 65 74 53 74 72 65 74 63 // Get/SetStretc
7070: 68 4d 6f 64 65 28 29 0a 65 6e 75 6d 20 3a 20 69 hMode().enum : i
7080: 6e 74 20 7b 0a 20 20 20 20 42 4c 41 43 4b 4f 4e nt {. BLACKON
7090: 57 48 49 54 45 20 3d 20 31 2c 0a 20 20 20 20 57 WHITE = 1,. W
70a0: 48 49 54 45 4f 4e 42 4c 41 43 4b 20 3d 20 32 2c HITEONBLACK = 2,
70b0: 0a 20 20 20 20 43 4f 4c 4f 52 4f 4e 43 4f 4c 4f . COLORONCOLO
70c0: 52 20 3d 20 33 2c 0a 20 20 20 20 48 41 4c 46 54 R = 3,. HALFT
70d0: 4f 4e 45 20 20 20 20 20 3d 20 34 2c 0a 0a 20 20 ONE = 4,..
70e0: 20 20 53 54 52 45 54 43 48 5f 41 4e 44 53 43 41 STRETCH_ANDSCA
70f0: 4e 53 20 20 20 20 3d 20 31 2c 0a 20 20 20 20 53 NS = 1,. S
7100: 54 52 45 54 43 48 5f 4f 52 53 43 41 4e 53 20 20 TRETCH_ORSCANS
7110: 20 20 20 3d 20 32 2c 0a 20 20 20 20 53 54 52 45 = 2,. STRE
7120: 54 43 48 5f 44 45 4c 45 54 45 53 43 41 4e 53 20 TCH_DELETESCANS
7130: 3d 20 33 2c 0a 20 20 20 20 53 54 52 45 54 43 48 = 3,. STRETCH
7140: 5f 48 41 4c 46 54 4f 4e 45 20 20 20 20 3d 20 34 _HALFTONE = 4
7150: 2c 0a 0a 20 20 20 20 4d 41 58 53 54 52 45 54 43 ,.. MAXSTRETC
7160: 48 42 4c 54 4d 4f 44 45 20 3d 20 34 0a 7d 0a 0a HBLTMODE = 4.}..
7170: 2f 2f 20 54 72 61 6e 73 6c 61 74 65 43 68 61 72 // TranslateChar
7180: 73 65 74 49 6e 66 6f 28 29 0a 65 6e 75 6d 20 3a setInfo().enum :
7190: 20 44 57 4f 52 44 20 7b 0a 20 20 20 20 54 43 49 DWORD {. TCI
71a0: 5f 53 52 43 43 48 41 52 53 45 54 20 20 3d 20 31 _SRCCHARSET = 1
71b0: 2c 0a 20 20 20 20 54 43 49 5f 53 52 43 43 4f 44 ,. TCI_SRCCOD
71c0: 45 50 41 47 45 20 3d 20 32 2c 0a 20 20 20 20 54 EPAGE = 2,. T
71d0: 43 49 5f 53 52 43 46 4f 4e 54 53 49 47 20 20 3d CI_SRCFONTSIG =
71e0: 20 33 2c 0a 20 20 20 20 54 43 49 5f 53 52 43 4c 3,. TCI_SRCL
71f0: 4f 43 41 4c 45 20 20 20 3d 20 30 78 31 30 30 30 OCALE = 0x1000
7200: 2c 0a 7d 0a 0a 2f 2f 20 53 65 74 49 43 4d 4d 6f ,.}..// SetICMMo
7210: 64 65 28 29 0a 65 6e 75 6d 20 3a 20 69 6e 74 20 de().enum : int
7220: 7b 0a 20 20 20 20 49 43 4d 5f 4f 46 46 20 20 20 {. ICM_OFF
7230: 3d 20 31 2c 0a 20 20 20 20 49 43 4d 5f 4f 4e 20 = 1,. ICM_ON
7240: 20 20 20 3d 20 32 2c 0a 20 20 20 20 49 43 4d 5f = 2,. ICM_
7250: 51 55 45 52 59 20 3d 20 33 2c 0a 20 20 20 20 49 QUERY = 3,. I
7260: 43 4d 5f 44 4f 4e 45 5f 4f 55 54 53 49 44 45 44 CM_DONE_OUTSIDED
7270: 43 20 3d 20 34 2c 0a 7d 0a 0a 2f 2f 20 2d 2d 2d C = 4,.}..// ---
7280: 2d 0a 2f 2f 20 45 73 63 61 70 65 28 29 20 53 70 -.// Escape() Sp
7290: 6f 6f 6c 65 72 20 45 72 72 6f 72 20 43 6f 64 65 ooler Error Code
72a0: 73 0a 65 6e 75 6d 20 3a 20 69 6e 74 20 7b 0a 20 s.enum : int {.
72b0: 20 20 20 53 50 5f 4e 4f 54 52 45 50 4f 52 54 45 SP_NOTREPORTE
72c0: 44 20 3d 20 30 78 34 30 30 30 2c 0a 20 20 20 20 D = 0x4000,.
72d0: 53 50 5f 45 52 52 4f 52 20 20 20 20 20 20 20 3d SP_ERROR =
72e0: 20 2d 31 2c 0a 20 20 20 20 53 50 5f 41 50 50 41 -1,. SP_APPA
72f0: 42 4f 52 54 20 20 20 20 3d 20 2d 32 2c 0a 20 20 BORT = -2,.
7300: 20 20 53 50 5f 55 53 45 52 41 42 4f 52 54 20 20 SP_USERABORT
7310: 20 3d 20 2d 33 2c 0a 20 20 20 20 53 50 5f 4f 55 = -3,. SP_OU
7320: 54 4f 46 44 49 53 4b 20 20 20 3d 20 2d 34 2c 0a TOFDISK = -4,.
7330: 20 20 20 20 53 50 5f 4f 55 54 4f 46 4d 45 4d 4f SP_OUTOFMEMO
7340: 52 59 20 3d 20 2d 35 0a 7d 0a 0a 2f 2f 20 45 73 RY = -5.}..// Es
7350: 63 61 70 65 28 29 2c 20 45 78 74 45 73 63 61 70 cape(), ExtEscap
7360: 65 28 29 0a 2f 2f 20 4d 6f 73 74 20 6f 66 20 74 e().// Most of t
7370: 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 61 72 65 he following are
7380: 20 64 65 70 72 65 63 61 74 65 64 20 28 57 69 6e deprecated (Win
7390: 31 36 20 6f 6e 6c 79 29 0a 65 6e 75 6d 20 3a 20 16 only).enum :
73a0: 69 6e 74 20 7b 0a 20 20 20 20 4e 45 57 46 52 41 int {. NEWFRA
73b0: 4d 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ME
73c0: 20 20 3d 20 31 2c 0a 20 20 20 20 41 42 4f 52 54 = 1,. ABORT
73d0: 44 4f 43 20 20 20 20 20 20 20 20 20 20 20 20 20 DOC
73e0: 20 20 20 3d 20 32 2c 0a 20 20 20 20 4e 45 58 54 = 2,. NEXT
73f0: 42 41 4e 44 20 20 20 20 20 20 20 20 20 20 20 20 BAND
7400: 20 20 20 20 3d 20 33 2c 0a 20 20 20 20 53 45 54 = 3,. SET
7410: 43 4f 4c 4f 52 54 41 42 4c 45 20 20 20 20 20 20 COLORTABLE
7420: 20 20 20 20 20 3d 20 34 2c 0a 20 20 20 20 47 45 = 4,. GE
7430: 54 43 4f 4c 4f 52 54 41 42 4c 45 20 20 20 20 20 TCOLORTABLE
7440: 20 20 20 20 20 20 3d 20 35 2c 0a 20 20 20 20 46 = 5,. F
7450: 4c 55 53 48 4f 55 54 50 55 54 20 20 20 20 20 20 LUSHOUTPUT
7460: 20 20 20 20 20 20 20 3d 20 36 2c 0a 20 20 20 20 = 6,.
7470: 44 52 41 46 54 4d 4f 44 45 20 20 20 20 20 20 20 DRAFTMODE
7480: 20 20 20 20 20 20 20 20 3d 20 37 2c 0a 20 20 20 = 7,.
7490: 20 51 55 45 52 59 45 53 43 53 55 50 50 4f 52 54 QUERYESCSUPPORT
74a0: 20 20 20 20 20 20 20 20 20 3d 20 38 2c 0a 20 20 = 8,.
74b0: 20 20 53 45 54 41 42 4f 52 54 50 52 4f 43 20 20 SETABORTPROC
74c0: 20 20 20 20 20 20 20 20 20 20 3d 20 39 2c 0a 20 = 9,.
74d0: 20 20 20 53 54 41 52 54 44 4f 43 20 20 20 20 20 STARTDOC
74e0: 20 20 20 20 20 20 20 20 20 20 20 3d 20 31 30 2c = 10,
74f0: 0a 20 20 20 20 45 4e 44 44 4f 43 20 20 20 20 20 . ENDDOC
7500: 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 31 = 1
7510: 31 2c 0a 20 20 20 20 47 45 54 50 48 59 53 50 41 1,. GETPHYSPA
7520: 47 45 53 49 5a 45 20 20 20 20 20 20 20 20 20 3d GESIZE =
7530: 20 31 32 2c 0a 20 20 20 20 47 45 54 50 52 49 4e 12,. GETPRIN
7540: 54 49 4e 47 4f 46 46 53 45 54 20 20 20 20 20 20 TINGOFFSET
7550: 20 3d 20 31 33 2c 0a 20 20 20 20 47 45 54 53 43 = 13,. GETSC
7560: 41 4c 49 4e 47 46 41 43 54 4f 52 20 20 20 20 20 ALINGFACTOR
7570: 20 20 20 3d 20 31 34 2c 0a 20 20 20 20 4d 46 43 = 14,. MFC
7580: 4f 4d 4d 45 4e 54 20 20 20 20 20 20 20 20 20 20 OMMENT
7590: 20 20 20 20 20 3d 20 31 35 2c 0a 20 20 20 20 47 = 15,. G
75a0: 45 54 50 45 4e 57 49 44 54 48 20 20 20 20 20 20 ETPENWIDTH
75b0: 20 20 20 20 20 20 20 3d 20 31 36 2c 0a 20 20 20 = 16,.
75c0: 20 53 45 54 43 4f 50 59 43 4f 55 4e 54 20 20 20 SETCOPYCOUNT
75d0: 20 20 20 20 20 20 20 20 20 3d 20 31 37 2c 0a 20 = 17,.
75e0: 20 20 20 53 45 4c 45 43 54 50 41 50 45 52 53 4f SELECTPAPERSO
75f0: 55 52 43 45 20 20 20 20 20 20 20 3d 20 31 38 2c URCE = 18,
7600: 0a 20 20 20 20 44 45 56 49 43 45 44 41 54 41 20 . DEVICEDATA
7610: 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 31 = 1
7620: 39 2c 0a 20 20 20 20 50 41 53 53 54 48 52 4f 55 9,. PASSTHROU
7630: 47 48 20 20 20 20 20 20 20 20 20 20 20 20 20 3d GH =
7640: 20 31 39 2c 0a 20 20 20 20 47 45 54 54 45 43 48 19,. GETTECH
7650: 4e 4f 4c 4f 47 59 20 20 20 20 20 20 20 20 20 20 NOLOGY
7660: 20 3d 20 32 30 2c 0a 20 20 20 20 53 45 54 4c 49 = 20,. SETLI
7670: 4e 45 43 41 50 20 20 20 20 20 20 20 20 20 20 20 NECAP
7680: 20 20 20 3d 20 32 31 2c 0a 20 20 20 20 53 45 54 = 21,. SET
7690: 4c 49 4e 45 4a 4f 49 4e 20 20 20 20 20 20 20 20 LINEJOIN
76a0: 20 20 20 20 20 3d 20 32 32 2c 0a 20 20 20 20 53 = 22,. S
76b0: 45 54 4d 49 54 45 52 4c 49 4d 49 54 20 20 20 20 ETMITERLIMIT
76c0: 20 20 20 20 20 20 20 3d 20 32 33 2c 0a 20 20 20 = 23,.
76d0: 20 42 41 4e 44 49 4e 46 4f 20 20 20 20 20 20 20 BANDINFO
76e0: 20 20 20 20 20 20 20 20 20 3d 20 32 34 2c 0a 20 = 24,.
76f0: 20 20 20 44 52 41 57 50 41 54 54 45 52 4e 52 45 DRAWPATTERNRE
7700: 43 54 20 20 20 20 20 20 20 20 20 3d 20 32 35 2c CT = 25,
7710: 0a 20 20 20 20 47 45 54 56 45 43 54 4f 52 50 45 . GETVECTORPE
7720: 4e 53 49 5a 45 20 20 20 20 20 20 20 20 3d 20 32 NSIZE = 2
7730: 36 2c 0a 20 20 20 20 47 45 54 56 45 43 54 4f 52 6,. GETVECTOR
7740: 42 52 55 53 48 53 49 5a 45 20 20 20 20 20 20 3d BRUSHSIZE =
7750: 20 32 37 2c 0a 20 20 20 20 45 4e 41 42 4c 45 44 27,. ENABLED
7760: 55 50 4c 45 58 20 20 20 20 20 20 20 20 20 20 20 UPLEX
7770: 20 3d 20 32 38 2c 0a 20 20 20 20 47 45 54 53 45 = 28,. GETSE
7780: 54 50 41 50 45 52 42 49 4e 53 20 20 20 20 20 20 TPAPERBINS
7790: 20 20 20 3d 20 32 39 2c 0a 20 20 20 20 47 45 54 = 29,. GET
77a0: 53 45 54 50 52 49 4e 54 4f 52 49 45 4e 54 20 20 SETPRINTORIENT
77b0: 20 20 20 20 20 3d 20 33 30 2c 0a 20 20 20 20 45 = 30,. E
77c0: 4e 55 4d 50 41 50 45 52 42 49 4e 53 20 20 20 20 NUMPAPERBINS
77d0: 20 20 20 20 20 20 20 3d 20 33 31 2c 0a 20 20 20 = 31,.
77e0: 20 53 45 54 44 49 42 53 43 41 4c 49 4e 47 20 20 SETDIBSCALING
77f0: 20 20 20 20 20 20 20 20 20 3d 20 33 32 2c 0a 20 = 32,.
7800: 20 20 20 45 50 53 50 52 49 4e 54 49 4e 47 20 20 EPSPRINTING
7810: 20 20 20 20 20 20 20 20 20 20 20 3d 20 33 33 2c = 33,
7820: 0a 20 20 20 20 45 4e 55 4d 50 41 50 45 52 4d 45 . ENUMPAPERME
7830: 54 52 49 43 53 20 20 20 20 20 20 20 20 3d 20 33 TRICS = 3
7840: 34 2c 0a 20 20 20 20 47 45 54 53 45 54 50 41 50 4,. GETSETPAP
7850: 45 52 4d 45 54 52 49 43 53 20 20 20 20 20 20 3d ERMETRICS =
7860: 20 33 35 2c 0a 20 20 20 20 50 4f 53 54 53 43 52 35,. POSTSCR
7870: 49 50 54 5f 44 41 54 41 20 20 20 20 20 20 20 20 IPT_DATA
7880: 20 3d 20 33 37 2c 0a 20 20 20 20 50 4f 53 54 53 = 37,. POSTS
7890: 43 52 49 50 54 5f 49 47 4e 4f 52 45 20 20 20 20 CRIPT_IGNORE
78a0: 20 20 20 3d 20 33 38 2c 0a 20 20 20 20 4d 4f 55 = 38,. MOU
78b0: 53 45 54 52 41 49 4c 53 20 20 20 20 20 20 20 20 SETRAILS
78c0: 20 20 20 20 20 3d 20 33 39 2c 0a 20 20 20 20 47 = 39,. G
78d0: 45 54 44 45 56 49 43 45 55 4e 49 54 53 20 20 20 ETDEVICEUNITS
78e0: 20 20 20 20 20 20 20 3d 20 34 32 2c 0a 20 20 20 = 42,.
78f0: 20 47 45 54 45 58 54 45 4e 44 45 44 54 45 58 54 GETEXTENDEDTEXT
7900: 4d 45 54 52 49 43 53 20 20 3d 20 32 35 36 2c 0a METRICS = 256,.
7910: 20 20 20 20 47 45 54 45 58 54 45 4e 54 54 41 42 GETEXTENTTAB
7920: 4c 45 20 20 20 20 20 20 20 20 20 20 3d 20 32 35 LE = 25
7930: 37 2c 0a 20 20 20 20 47 45 54 50 41 49 52 4b 45 7,. GETPAIRKE
7940: 52 4e 54 41 42 4c 45 20 20 20 20 20 20 20 20 3d RNTABLE =
7950: 20 32 35 38 2c 0a 20 20 20 20 47 45 54 54 52 41 258,. GETTRA
7960: 43 4b 4b 45 52 4e 54 41 42 4c 45 20 20 20 20 20 CKKERNTABLE
7970: 20 20 3d 20 32 35 39 2c 0a 20 20 20 20 45 58 54 = 259,. EXT
7980: 54 45 58 54 4f 55 54 20 20 20 20 20 20 20 20 20 TEXTOUT
7990: 20 20 20 20 20 3d 20 35 31 32 2c 0a 20 20 20 20 = 512,.
79a0: 47 45 54 46 41 43 45 4e 41 4d 45 20 20 20 20 20 GETFACENAME
79b0: 20 20 20 20 20 20 20 20 3d 20 35 31 33 2c 0a 20 = 513,.
79c0: 20 20 20 44 4f 57 4e 4c 4f 41 44 46 41 43 45 20 DOWNLOADFACE
79d0: 20 20 20 20 20 20 20 20 20 20 20 3d 20 35 31 34 = 514
79e0: 2c 0a 20 20 20 20 45 4e 41 42 4c 45 52 45 4c 41 ,. ENABLERELA
79f0: 54 49 56 45 57 49 44 54 48 53 20 20 20 20 3d 20 TIVEWIDTHS =
7a00: 37 36 38 2c 0a 20 20 20 20 45 4e 41 42 4c 45 50 768,. ENABLEP
7a10: 41 49 52 4b 45 52 4e 49 4e 47 20 20 20 20 20 20 AIRKERNING
7a20: 20 3d 20 37 36 39 2c 0a 20 20 20 20 53 45 54 4b = 769,. SETK
7a30: 45 52 4e 54 52 41 43 4b 20 20 20 20 20 20 20 20 ERNTRACK
7a40: 20 20 20 20 3d 20 37 37 30 2c 0a 20 20 20 20 53 = 770,. S
7a50: 45 54 41 4c 4c 4a 55 53 54 56 41 4c 55 45 53 20 ETALLJUSTVALUES
7a60: 20 20 20 20 20 20 20 3d 20 37 37 31 2c 0a 20 20 = 771,.
7a70: 20 20 53 45 54 43 48 41 52 53 45 54 20 20 20 20 SETCHARSET
7a80: 20 20 20 20 20 20 20 20 20 20 3d 20 37 37 32 2c = 772,
7a90: 0a 20 20 20 20 53 54 52 45 54 43 48 42 4c 54 20 . STRETCHBLT
7aa0: 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 32 = 2
7ab0: 30 34 38 2c 0a 20 20 20 20 4d 45 54 41 46 49 4c 048,. METAFIL
7ac0: 45 5f 44 52 49 56 45 52 20 20 20 20 20 20 20 20 E_DRIVER
7ad0: 20 3d 20 32 30 34 39 2c 0a 20 20 20 20 47 45 54 = 2049,. GET
7ae0: 53 45 54 53 43 52 45 45 4e 50 41 52 41 4d 53 20 SETSCREENPARAMS
7af0: 20 20 20 20 20 3d 20 33 30 37 32 2c 0a 20 20 20 = 3072,.
7b00: 20 51 55 45 52 59 44 49 42 53 55 50 50 4f 52 54 QUERYDIBSUPPORT
7b10: 20 20 20 20 20 20 20 20 20 3d 20 33 30 37 33 2c = 3073,
7b20: 0a 20 20 20 20 42 45 47 49 4e 5f 50 41 54 48 20 . BEGIN_PATH
7b30: 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 34 = 4
7b40: 30 39 36 2c 0a 20 20 20 20 43 4c 49 50 5f 54 4f 096,. CLIP_TO
7b50: 5f 50 41 54 48 20 20 20 20 20 20 20 20 20 20 20 _PATH
7b60: 20 3d 20 34 30 39 37 2c 0a 20 20 20 20 45 4e 44 = 4097,. END
7b70: 5f 50 41 54 48 20 20 20 20 20 20 20 20 20 20 20 _PATH
7b80: 20 20 20 20 20 3d 20 34 30 39 38 2c 0a 20 20 20 = 4098,.
7b90: 20 45 58 54 5f 44 45 56 49 43 45 5f 43 41 50 53 EXT_DEVICE_CAPS
7ba0: 20 20 20 20 20 20 20 20 20 3d 20 34 30 39 39 2c = 4099,
7bb0: 0a 20 20 20 20 52 45 53 54 4f 52 45 5f 43 54 4d . RESTORE_CTM
7bc0: 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 34 = 4
7bd0: 31 30 30 2c 0a 20 20 20 20 53 41 56 45 5f 43 54 100,. SAVE_CT
7be0: 4d 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 M
7bf0: 20 3d 20 34 31 30 31 2c 0a 20 20 20 20 53 45 54 = 4101,. SET
7c00: 5f 41 52 43 5f 44 49 52 45 43 54 49 4f 4e 20 20 _ARC_DIRECTION
7c10: 20 20 20 20 20 3d 20 34 31 30 32 2c 0a 20 20 20 = 4102,.
7c20: 20 53 45 54 5f 42 41 43 4b 47 52 4f 55 4e 44 5f SET_BACKGROUND_
7c30: 43 4f 4c 4f 52 20 20 20 20 3d 20 34 31 30 33 2c COLOR = 4103,
7c40: 0a 20 20 20 20 53 45 54 5f 50 4f 4c 59 5f 4d 4f . SET_POLY_MO
7c50: 44 45 20 20 20 20 20 20 20 20 20 20 20 3d 20 34 DE = 4
7c60: 31 30 34 2c 0a 20 20 20 20 53 45 54 5f 53 43 52 104,. SET_SCR
7c70: 45 45 4e 5f 41 4e 47 4c 45 20 20 20 20 20 20 20 EEN_ANGLE
7c80: 20 3d 20 34 31 30 35 2c 0a 20 20 20 20 53 45 54 = 4105,. SET
7c90: 5f 53 50 52 45 41 44 20 20 20 20 20 20 20 20 20 _SPREAD
7ca0: 20 20 20 20 20 3d 20 34 31 30 36 2c 0a 20 20 20 = 4106,.
7cb0: 20 54 52 41 4e 53 46 4f 52 4d 5f 43 54 4d 20 20 TRANSFORM_CTM
7cc0: 20 20 20 20 20 20 20 20 20 3d 20 34 31 30 37 2c = 4107,
7cd0: 0a 20 20 20 20 53 45 54 5f 43 4c 49 50 5f 42 4f . SET_CLIP_BO
7ce0: 58 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 34 X = 4
7cf0: 31 30 38 2c 0a 20 20 20 20 53 45 54 5f 42 4f 55 108,. SET_BOU
7d00: 4e 44 53 20 20 20 20 20 20 20 20 20 20 20 20 20 NDS
7d10: 20 3d 20 34 31 30 39 2c 0a 20 20 20 20 53 45 54 = 4109,. SET
7d20: 5f 4d 49 52 52 4f 52 5f 4d 4f 44 45 20 20 20 20 _MIRROR_MODE
7d30: 20 20 20 20 20 3d 20 34 31 31 30 2c 0a 20 20 20 = 4110,.
7d40: 20 4f 50 45 4e 43 48 41 4e 4e 45 4c 20 20 20 20 OPENCHANNEL
7d50: 20 20 20 20 20 20 20 20 20 3d 20 34 31 31 30 2c = 4110,
7d60: 0a 20 20 20 20 44 4f 57 4e 4c 4f 41 44 48 45 41 . DOWNLOADHEA
7d70: 44 45 52 20 20 20 20 20 20 20 20 20 20 3d 20 34 DER = 4
7d80: 31 31 31 2c 0a 20 20 20 20 43 4c 4f 53 45 43 48 111,. CLOSECH
7d90: 41 4e 4e 45 4c 20 20 20 20 20 20 20 20 20 20 20 ANNEL
7da0: 20 3d 20 34 31 31 32 2c 0a 20 20 20 20 50 4f 53 = 4112,. POS
7db0: 54 53 43 52 49 50 54 5f 50 41 53 53 54 48 52 4f TSCRIPT_PASSTHRO
7dc0: 55 47 48 20 20 3d 20 34 31 31 35 2c 0a 20 20 20 UGH = 4115,.
7dd0: 20 45 4e 43 41 50 53 55 4c 41 54 45 44 5f 50 4f ENCAPSULATED_PO
7de0: 53 54 53 43 52 49 50 54 20 3d 20 34 31 31 36 2c STSCRIPT = 4116,
7df0: 0a 20 20 20 20 50 4f 53 54 53 43 52 49 50 54 5f . POSTSCRIPT_
7e00: 49 44 45 4e 54 49 46 59 20 20 20 20 20 3d 20 34 IDENTIFY = 4
7e10: 31 31 37 2c 0a 20 20 20 20 50 4f 53 54 53 43 52 117,. POSTSCR
7e20: 49 50 54 5f 49 4e 4a 45 43 54 49 4f 4e 20 20 20 IPT_INJECTION
7e30: 20 3d 20 34 31 31 38 2c 0a 20 20 20 20 43 48 45 = 4118,. CHE
7e40: 43 4b 4a 50 45 47 46 4f 52 4d 41 54 20 20 20 20 CKJPEGFORMAT
7e50: 20 20 20 20 20 3d 20 34 31 31 39 2c 0a 20 20 20 = 4119,.
7e60: 20 43 48 45 43 4b 50 4e 47 46 4f 52 4d 41 54 20 CHECKPNGFORMAT
7e70: 20 20 20 20 20 20 20 20 20 3d 20 34 31 32 30 2c = 4120,
7e80: 0a 20 20 20 20 47 45 54 5f 50 53 5f 46 45 41 54 . GET_PS_FEAT
7e90: 55 52 45 53 45 54 54 49 4e 47 20 20 20 3d 20 34 URESETTING = 4
7ea0: 31 32 31 2c 0a 20 20 20 20 53 50 43 4c 50 41 53 121,. SPCLPAS
7eb0: 53 54 48 52 4f 55 47 48 32 20 20 20 20 20 20 20 STHROUGH2
7ec0: 20 3d 20 34 35 36 38 2c 0a 7d 0a 0a 65 6e 75 6d = 4568,.}..enum
7ed0: 20 3a 20 69 6e 74 20 7b 0a 20 20 20 20 50 53 49 : int {. PSI
7ee0: 44 45 4e 54 5f 47 44 49 43 45 4e 54 52 49 43 20 DENT_GDICENTRIC
7ef0: 3d 20 30 2c 0a 20 20 20 20 50 53 49 44 45 4e 54 = 0,. PSIDENT
7f00: 5f 50 53 43 45 4e 54 52 49 43 20 20 3d 20 31 2c _PSCENTRIC = 1,
7f10: 0a 7d 0a 0a 2f 2a 0a 20 2a 20 48 65 61 64 65 72 .}../*. * Header
7f20: 20 73 74 72 75 63 74 75 72 65 20 66 6f 72 20 74 structure for t
7f30: 68 65 20 69 6e 70 75 74 20 62 75 66 66 65 72 20 he input buffer
7f40: 74 6f 20 50 4f 53 54 53 43 52 49 50 54 5f 49 4e to POSTSCRIPT_IN
7f50: 4a 45 43 54 49 4f 4e 20 65 73 63 61 70 65 0a 20 JECTION escape.
7f60: 2a 2f 0a 73 74 72 75 63 74 20 50 53 49 4e 4a 45 */.struct PSINJE
7f70: 43 54 44 41 54 41 0a 7b 0a 20 20 20 20 44 57 4f CTDATA.{. DWO
7f80: 52 44 20 44 61 74 61 42 79 74 65 73 3b 0a 20 20 RD DataBytes;.
7f90: 20 20 57 4f 52 44 20 49 6e 6a 65 63 74 69 6f 6e WORD Injection
7fa0: 50 6f 69 6e 74 3b 0a 20 20 20 20 57 4f 52 44 20 Point;. WORD
7fb0: 50 61 67 65 4e 75 6d 62 65 72 3b 0a 7d 0a 61 6c PageNumber;.}.al
7fc0: 69 61 73 20 50 53 49 4e 4a 45 43 54 44 41 54 41 ias PSINJECTDATA
7fd0: 2a 50 50 53 49 4e 4a 45 43 54 44 41 54 41 3b 0a *PPSINJECTDATA;.
7fe0: 0a 2f 2a 20 43 6f 6e 73 74 61 6e 74 73 20 66 6f ./* Constants fo
7ff0: 72 20 50 53 49 4e 4a 45 43 54 44 41 54 41 2e 49 r PSINJECTDATA.I
8000: 6e 6a 65 63 74 69 6f 6e 50 6f 69 6e 74 20 66 69 njectionPoint fi
8010: 65 6c 64 20 2a 2f 0a 65 6e 75 6d 20 7b 0a 20 20 eld */.enum {.
8020: 20 20 50 53 49 4e 4a 45 43 54 5f 42 45 47 49 4e PSINJECT_BEGIN
8030: 53 54 52 45 41 4d 20 20 20 20 20 20 20 20 20 20 STREAM
8040: 20 3d 20 31 2c 0a 20 20 20 20 50 53 49 4e 4a 45 = 1,. PSINJE
8050: 43 54 5f 50 53 41 44 4f 42 45 20 20 20 20 20 20 CT_PSADOBE
8060: 20 20 20 20 20 20 20 20 20 3d 20 32 2c 0a 20 20 = 2,.
8070: 20 20 50 53 49 4e 4a 45 43 54 5f 50 41 47 45 53 PSINJECT_PAGES
8080: 41 54 45 4e 44 20 20 20 20 20 20 20 20 20 20 20 ATEND
8090: 20 3d 20 33 2c 0a 20 20 20 20 50 53 49 4e 4a 45 = 3,. PSINJE
80a0: 43 54 5f 50 41 47 45 53 20 20 20 20 20 20 20 20 CT_PAGES
80b0: 20 20 20 20 20 20 20 20 20 3d 20 34 2c 0a 20 20 = 4,.
80c0: 20 20 50 53 49 4e 4a 45 43 54 5f 44 4f 43 4e 45 PSINJECT_DOCNE
80d0: 45 44 45 44 52 45 53 20 20 20 20 20 20 20 20 20 EDEDRES
80e0: 20 3d 20 35 2c 0a 20 20 20 20 50 53 49 4e 4a 45 = 5,. PSINJE
80f0: 43 54 5f 44 4f 43 53 55 50 50 4c 49 45 44 52 45 CT_DOCSUPPLIEDRE
8100: 53 20 20 20 20 20 20 20 20 3d 20 36 2c 0a 20 20 S = 6,.
8110: 20 20 50 53 49 4e 4a 45 43 54 5f 50 41 47 45 4f PSINJECT_PAGEO
8120: 52 44 45 52 20 20 20 20 20 20 20 20 20 20 20 20 RDER
8130: 20 3d 20 37 2c 0a 20 20 20 20 50 53 49 4e 4a 45 = 7,. PSINJE
8140: 43 54 5f 4f 52 49 45 4e 54 41 54 49 4f 4e 20 20 CT_ORIENTATION
8150: 20 20 20 20 20 20 20 20 20 3d 20 38 2c 0a 20 20 = 8,.
8160: 20 20 50 53 49 4e 4a 45 43 54 5f 42 4f 55 4e 44 PSINJECT_BOUND
8170: 49 4e 47 42 4f 58 20 20 20 20 20 20 20 20 20 20 INGBOX
8180: 20 3d 20 39 2c 0a 20 20 20 20 50 53 49 4e 4a 45 = 9,. PSINJE
8190: 43 54 5f 44 4f 43 55 4d 45 4e 54 50 52 4f 43 45 CT_DOCUMENTPROCE
81a0: 53 53 43 4f 4c 4f 52 53 20 3d 20 31 30 2c 0a 20 SSCOLORS = 10,.
81b0: 20 20 20 50 53 49 4e 4a 45 43 54 5f 43 4f 4d 4d PSINJECT_COMM
81c0: 45 4e 54 53 20 20 20 20 20 20 20 20 20 20 20 20 ENTS
81d0: 20 20 3d 20 31 31 2c 0a 20 20 20 20 50 53 49 4e = 11,. PSIN
81e0: 4a 45 43 54 5f 42 45 47 49 4e 44 45 46 41 55 4c JECT_BEGINDEFAUL
81f0: 54 53 20 20 20 20 20 20 20 20 20 3d 20 31 32 2c TS = 12,
8200: 0a 20 20 20 20 50 53 49 4e 4a 45 43 54 5f 45 4e . PSINJECT_EN
8210: 44 44 45 46 41 55 4c 54 53 20 20 20 20 20 20 20 DDEFAULTS
8220: 20 20 20 20 3d 20 31 33 2c 0a 20 20 20 20 50 53 = 13,. PS
8230: 49 4e 4a 45 43 54 5f 42 45 47 49 4e 50 52 4f 4c INJECT_BEGINPROL
8240: 4f 47 20 20 20 20 20 20 20 20 20 20 20 3d 20 31 OG = 1
8250: 34 2c 0a 20 20 20 20 50 53 49 4e 4a 45 43 54 5f 4,. PSINJECT_
8260: 45 4e 44 50 52 4f 4c 4f 47 20 20 20 20 20 20 20 ENDPROLOG
8270: 20 20 20 20 20 20 3d 20 31 35 2c 0a 20 20 20 20 = 15,.
8280: 50 53 49 4e 4a 45 43 54 5f 42 45 47 49 4e 53 45 PSINJECT_BEGINSE
8290: 54 55 50 20 20 20 20 20 20 20 20 20 20 20 20 3d TUP =
82a0: 20 31 36 2c 0a 20 20 20 20 50 53 49 4e 4a 45 43 16,. PSINJEC
82b0: 54 5f 45 4e 44 53 45 54 55 50 20 20 20 20 20 20 T_ENDSETUP
82c0: 20 20 20 20 20 20 20 20 3d 20 31 37 2c 0a 20 20 = 17,.
82d0: 20 20 50 53 49 4e 4a 45 43 54 5f 54 52 41 49 4c PSINJECT_TRAIL
82e0: 45 52 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ER
82f0: 20 3d 20 31 38 2c 0a 20 20 20 20 50 53 49 4e 4a = 18,. PSINJ
8300: 45 43 54 5f 45 4f 46 20 20 20 20 20 20 20 3d 20 ECT_EOF =
8310: 31 39 2c 0a 20 20 20 20 50 53 49 4e 4a 45 43 54 19,. PSINJECT
8320: 5f 45 4e 44 53 54 52 45 41 4d 20 3d 20 32 30 2c _ENDSTREAM = 20,
8330: 0a 20 20 20 20 50 53 49 4e 4a 45 43 54 5f 44 4f . PSINJECT_DO
8340: 43 55 4d 45 4e 54 50 52 4f 43 45 53 53 43 4f 4c CUMENTPROCESSCOL
8350: 4f 52 53 41 54 45 4e 44 20 3d 20 32 31 2c 0a 0a ORSATEND = 21,..
8360: 20 20 20 20 50 53 49 4e 4a 45 43 54 5f 50 41 47 PSINJECT_PAG
8370: 45 4e 55 4d 42 45 52 20 20 20 20 20 20 3d 20 31 ENUMBER = 1
8380: 30 30 2c 0a 20 20 20 20 50 53 49 4e 4a 45 43 54 00,. PSINJECT
8390: 5f 42 45 47 49 4e 50 41 47 45 53 45 54 55 50 20 _BEGINPAGESETUP
83a0: 20 3d 20 31 30 31 2c 0a 20 20 20 20 50 53 49 4e = 101,. PSIN
83b0: 4a 45 43 54 5f 45 4e 44 50 41 47 45 53 45 54 55 JECT_ENDPAGESETU
83c0: 50 20 20 20 20 3d 20 31 30 32 2c 0a 20 20 20 20 P = 102,.
83d0: 50 53 49 4e 4a 45 43 54 5f 50 41 47 45 54 52 41 PSINJECT_PAGETRA
83e0: 49 4c 45 52 20 20 20 20 20 3d 20 31 30 33 2c 0a ILER = 103,.
83f0: 20 20 20 20 50 53 49 4e 4a 45 43 54 5f 50 4c 41 PSINJECT_PLA
8400: 54 45 43 4f 4c 4f 52 20 20 20 20 20 20 3d 20 31 TECOLOR = 1
8410: 30 34 2c 0a 20 20 20 20 50 53 49 4e 4a 45 43 54 04,. PSINJECT
8420: 5f 53 48 4f 57 50 41 47 45 20 20 20 20 20 20 20 _SHOWPAGE
8430: 20 3d 20 31 30 35 2c 0a 20 20 20 20 50 53 49 4e = 105,. PSIN
8440: 4a 45 43 54 5f 50 41 47 45 42 42 4f 58 20 20 20 JECT_PAGEBBOX
8450: 20 20 20 20 20 3d 20 31 30 36 2c 0a 20 20 20 20 = 106,.
8460: 50 53 49 4e 4a 45 43 54 5f 45 4e 44 50 41 47 45 PSINJECT_ENDPAGE
8470: 43 4f 4d 4d 45 4e 54 53 20 3d 20 31 30 37 2c 0a COMMENTS = 107,.
8480: 0a 20 20 20 20 50 53 49 4e 4a 45 43 54 5f 56 4d . PSINJECT_VM
8490: 53 41 56 45 20 20 20 20 3d 20 32 30 30 2c 0a 20 SAVE = 200,.
84a0: 20 20 20 50 53 49 4e 4a 45 43 54 5f 56 4d 52 45 PSINJECT_VMRE
84b0: 53 54 4f 52 45 20 3d 20 32 30 31 2c 0a 7d 0a 0a STORE = 201,.}..
84c0: 2f 2a 20 50 61 72 61 6d 65 74 65 72 20 66 6f 72 /* Parameter for
84d0: 20 47 45 54 5f 50 53 5f 46 45 41 54 55 52 45 53 GET_PS_FEATURES
84e0: 45 54 54 49 4e 47 20 65 73 63 61 70 65 20 2a 2f ETTING escape */
84f0: 0a 65 6e 75 6d 20 7b 0a 20 20 20 20 46 45 41 54 .enum {. FEAT
8500: 55 52 45 53 45 54 54 49 4e 47 5f 4e 55 50 20 20 URESETTING_NUP
8510: 20 20 20 20 20 3d 20 30 2c 0a 20 20 20 20 46 45 = 0,. FE
8520: 41 54 55 52 45 53 45 54 54 49 4e 47 5f 4f 55 54 ATURESETTING_OUT
8530: 50 55 54 20 20 20 20 3d 20 31 2c 0a 20 20 20 20 PUT = 1,.
8540: 46 45 41 54 55 52 45 53 45 54 54 49 4e 47 5f 50 FEATURESETTING_P
8550: 53 4c 45 56 45 4c 20 20 20 3d 20 32 2c 0a 20 20 SLEVEL = 2,.
8560: 20 20 46 45 41 54 55 52 45 53 45 54 54 49 4e 47 FEATURESETTING
8570: 5f 43 55 53 54 50 41 50 45 52 20 3d 20 33 2c 0a _CUSTPAPER = 3,.
8580: 20 20 20 20 46 45 41 54 55 52 45 53 45 54 54 49 FEATURESETTI
8590: 4e 47 5f 4d 49 52 52 4f 52 20 20 20 20 3d 20 34 NG_MIRROR = 4
85a0: 2c 0a 20 20 20 20 46 45 41 54 55 52 45 53 45 54 ,. FEATURESET
85b0: 54 49 4e 47 5f 4e 45 47 41 54 49 56 45 20 20 3d TING_NEGATIVE =
85c0: 20 35 2c 0a 20 20 20 20 46 45 41 54 55 52 45 53 5,. FEATURES
85d0: 45 54 54 49 4e 47 5f 50 52 4f 54 4f 43 4f 4c 20 ETTING_PROTOCOL
85e0: 20 3d 20 36 2c 0a 7d 0a 0a 65 6e 75 6d 20 7b 0a = 6,.}..enum {.
85f0: 20 20 20 20 46 45 41 54 55 52 45 53 45 54 54 49 FEATURESETTI
8600: 4e 47 5f 50 52 49 56 41 54 45 5f 42 45 47 49 4e NG_PRIVATE_BEGIN
8610: 20 3d 20 30 78 31 30 30 30 2c 0a 20 20 20 20 46 = 0x1000,. F
8620: 45 41 54 55 52 45 53 45 54 54 49 4e 47 5f 50 52 EATURESETTING_PR
8630: 49 56 41 54 45 5f 45 4e 44 20 20 20 3d 20 30 78 IVATE_END = 0x
8640: 31 46 46 46 2c 0a 7d 0a 0a 2f 2a 20 56 61 6c 75 1FFF,.}../* Valu
8650: 65 20 72 65 74 75 72 6e 65 64 20 66 6f 72 20 46 e returned for F
8660: 45 41 54 55 52 45 53 45 54 54 49 4e 47 5f 50 52 EATURESETTING_PR
8670: 4f 54 4f 43 4f 4c 20 2a 2f 0a 63 6f 6e 73 74 20 OTOCOL */.const
8680: 50 53 50 52 4f 54 4f 43 4f 4c 5f 41 53 43 49 49 PSPROTOCOL_ASCII
8690: 20 20 3d 20 30 3b 0a 63 6f 6e 73 74 20 50 53 50 = 0;.const PSP
86a0: 52 4f 54 4f 43 4f 4c 5f 42 43 50 20 20 20 20 3d ROTOCOL_BCP =
86b0: 20 31 3b 0a 63 6f 6e 73 74 20 50 53 50 52 4f 54 1;.const PSPROT
86c0: 4f 43 4f 4c 5f 54 42 43 50 20 20 20 3d 20 32 3b OCOL_TBCP = 2;
86d0: 0a 63 6f 6e 73 74 20 50 53 50 52 4f 54 4f 43 4f .const PSPROTOCO
86e0: 4c 5f 42 49 4e 41 52 59 20 3d 20 33 3b 0a 0a 2f L_BINARY = 3;../
86f0: 2f 20 2d 2d 2d 2d 0a 0a 63 6f 6e 73 74 20 57 50 / ----..const WP
8700: 41 52 41 4d 20 50 52 5f 4a 4f 42 53 54 41 54 55 ARAM PR_JOBSTATU
8710: 53 20 3d 20 30 3b 0a 0a 2f 2f 20 3f 3f 3f 0a 63 S = 0;..// ???.c
8720: 6f 6e 73 74 20 51 44 49 5f 53 45 54 44 49 42 49 onst QDI_SETDIBI
8730: 54 53 20 20 20 3d 20 31 3b 0a 63 6f 6e 73 74 20 TS = 1;.const
8740: 51 44 49 5f 47 45 54 44 49 42 49 54 53 20 20 20 QDI_GETDIBITS
8750: 3d 20 32 3b 0a 63 6f 6e 73 74 20 51 44 49 5f 44 = 2;.const QDI_D
8760: 49 42 54 4f 53 43 52 45 45 4e 20 3d 20 34 3b 0a IBTOSCREEN = 4;.
8770: 63 6f 6e 73 74 20 51 44 49 5f 53 54 52 45 54 43 const QDI_STRETC
8780: 48 44 49 42 20 20 3d 20 38 3b 0a 0a 63 6f 6e 73 HDIB = 8;..cons
8790: 74 20 41 53 50 45 43 54 5f 46 49 4c 54 45 52 49 t ASPECT_FILTERI
87a0: 4e 47 20 3d 20 31 3b 0a 0a 2f 2f 20 4c 4f 47 43 NG = 1;..// LOGC
87b0: 4f 4c 4f 52 53 50 41 43 45 2e 6c 63 73 43 53 54 OLORSPACE.lcsCST
87c0: 79 70 65 0a 65 6e 75 6d 20 3a 20 4c 43 53 43 53 ype.enum : LCSCS
87d0: 54 59 50 45 20 7b 0a 20 20 20 20 4c 43 53 5f 43 TYPE {. LCS_C
87e0: 41 4c 49 42 52 41 54 45 44 5f 52 47 42 20 3d 20 ALIBRATED_RGB =
87f0: 30 2c 0a 20 20 20 20 4c 43 53 5f 44 45 56 49 43 0,. LCS_DEVIC
8800: 45 5f 52 47 42 2c 0a 20 20 20 20 4c 43 53 5f 44 E_RGB,. LCS_D
8810: 45 56 49 43 45 5f 43 4d 59 4b 0a 7d 20 2f 2a 20 EVICE_CMYK.} /*
8820: 57 68 61 74 20 74 68 69 73 20 66 6f 72 3f 20 2a What this for? *
8830: 2f 0a 0a 2f 2f 20 4c 4f 47 43 4f 4c 4f 52 53 50 /..// LOGCOLORSP
8840: 41 43 45 2e 6c 63 73 49 6e 74 65 6e 74 0a 65 6e ACE.lcsIntent.en
8850: 75 6d 20 3a 20 4c 43 53 47 41 4d 55 54 4d 41 54 um : LCSGAMUTMAT
8860: 43 48 20 7b 0a 20 20 20 20 4c 43 53 5f 47 4d 5f CH {. LCS_GM_
8870: 42 55 53 49 4e 45 53 53 20 20 20 20 20 20 20 20 BUSINESS
8880: 20 3d 20 31 2c 0a 20 20 20 20 4c 43 53 5f 47 4d = 1,. LCS_GM
8890: 5f 47 52 41 50 48 49 43 53 20 20 20 20 20 20 20 _GRAPHICS
88a0: 20 20 3d 20 32 2c 0a 20 20 20 20 4c 43 53 5f 47 = 2,. LCS_G
88b0: 4d 5f 49 4d 41 47 45 53 20 20 20 20 20 20 20 20 M_IMAGES
88c0: 20 20 20 3d 20 34 2c 0a 20 20 20 20 4c 43 53 5f = 4,. LCS_
88d0: 47 4d 5f 41 42 53 5f 43 4f 4c 4f 52 49 4d 45 54 GM_ABS_COLORIMET
88e0: 52 49 43 20 3d 20 38 2c 0a 7d 0a 0a 63 6f 6e 73 RIC = 8,.}..cons
88f0: 74 20 44 57 4f 52 44 0a 52 41 53 54 45 52 5f 46 t DWORD.RASTER_F
8900: 4f 4e 54 54 59 50 45 20 20 20 3d 20 31 2c 0a 44 ONTTYPE = 1,.D
8910: 45 56 49 43 45 5f 46 4f 4e 54 54 59 50 45 20 20 EVICE_FONTTYPE
8920: 20 3d 20 32 2c 0a 54 52 55 45 54 59 50 45 5f 46 = 2,.TRUETYPE_F
8930: 4f 4e 54 54 59 50 45 20 3d 20 34 3b 0a 0a 2f 2f ONTTYPE = 4;..//
8940: 20 2d 2d 2d 0a 2f 2f 20 44 45 56 4d 4f 44 45 20 ---.// DEVMODE
8950: 73 74 72 75 63 74 0a 0a 2f 2f 20 46 49 58 4d 45 struct..// FIXME
8960: 3a 20 4e 6f 74 20 6e 65 65 64 65 64 20 66 6f 72 : Not needed for
8970: 20 44 20 28 75 73 65 20 2e 6c 65 6e 67 74 68 20 D (use .length
8980: 69 6e 73 74 65 61 64 29 0a 63 6f 6e 73 74 20 43 instead).const C
8990: 43 48 44 45 56 49 43 45 4e 41 4d 45 20 3d 20 33 CHDEVICENAME = 3
89a0: 32 3b 0a 63 6f 6e 73 74 20 43 43 48 46 4f 52 4d 2;.const CCHFORM
89b0: 4e 41 4d 45 20 20 20 3d 20 33 32 3b 0a 0a 2f 2f NAME = 32;..//
89c0: 20 44 45 56 4d 4f 44 45 2e 64 6d 53 70 65 63 56 DEVMODE.dmSpecV
89d0: 65 72 73 69 6f 6e 0a 2f 2f 20 63 75 72 72 65 6e ersion.// curren
89e0: 74 20 76 65 72 73 69 6f 6e 20 6f 66 20 73 70 65 t version of spe
89f0: 63 69 66 69 63 61 74 69 6f 6e 0a 73 74 61 74 69 cification.stati
8a00: 63 0a 0a 69 66 20 28 57 49 4e 56 45 52 20 3e 3d c..if (WINVER >=
8a10: 20 30 78 30 35 30 30 20 7c 7c 20 5f 57 49 4e 33 0x0500 || _WIN3
8a20: 32 5f 57 49 4e 4e 54 20 3e 3d 20 30 78 30 34 30 2_WINNT >= 0x040
8a30: 30 29 0a 7b 0a 20 20 20 20 63 6f 6e 73 74 20 57 0).{. const W
8a40: 4f 52 44 20 44 4d 5f 53 50 45 43 56 45 52 53 49 ORD DM_SPECVERSI
8a50: 4f 4e 20 3d 20 30 78 30 34 30 31 3b 0a 7d 0a 65 ON = 0x0401;.}.e
8a60: 6c 73 65 20 73 74 61 74 69 63 0a 0a 20 20 20 20 lse static..
8a70: 69 66 20 28 57 49 4e 56 45 52 20 3e 3d 20 30 78 if (WINVER >= 0x
8a80: 30 34 30 30 29 0a 20 20 20 20 7b 0a 20 20 20 20 0400). {.
8a90: 20 20 20 20 63 6f 6e 73 74 20 57 4f 52 44 20 44 const WORD D
8aa0: 4d 5f 53 50 45 43 56 45 52 53 49 4f 4e 20 3d 20 M_SPECVERSION =
8ab0: 30 78 30 34 30 30 3b 0a 20 20 20 20 7d 0a 20 20 0x0400;. }.
8ac0: 20 20 65 6c 73 65 0a 20 20 20 20 7b 0a 20 20 20 else. {.
8ad0: 20 20 20 20 20 63 6f 6e 73 74 20 57 4f 52 44 20 const WORD
8ae0: 44 4d 5f 53 50 45 43 56 45 52 53 49 4f 4e 20 3d DM_SPECVERSION =
8af0: 20 30 78 30 33 32 30 3b 0a 20 20 20 20 7d 0a 0a 0x0320;. }..
8b00: 2f 2f 20 44 45 56 4d 4f 44 45 2e 64 6d 4f 72 69 // DEVMODE.dmOri
8b10: 65 6e 74 61 74 69 6f 6e 0a 65 6e 75 6d 20 3a 20 entation.enum :
8b20: 73 68 6f 72 74 20 7b 0a 20 20 20 20 44 4d 4f 52 short {. DMOR
8b30: 49 45 4e 54 5f 50 4f 52 54 52 41 49 54 20 20 3d IENT_PORTRAIT =
8b40: 20 31 2c 0a 20 20 20 20 44 4d 4f 52 49 45 4e 54 1,. DMORIENT
8b50: 5f 4c 41 4e 44 53 43 41 50 45 20 3d 20 32 0a 7d _LANDSCAPE = 2.}
8b60: 0a 0a 2f 2f 20 44 45 56 4d 4f 44 45 2e 64 6d 50 ..// DEVMODE.dmP
8b70: 61 70 65 72 53 69 7a 65 0a 65 6e 75 6d 20 3a 20 aperSize.enum :
8b80: 73 68 6f 72 74 20 7b 0a 20 20 20 20 44 4d 50 41 short {. DMPA
8b90: 50 45 52 5f 4c 45 54 54 45 52 20 3d 20 31 2c 0a PER_LETTER = 1,.
8ba0: 20 20 20 20 44 4d 50 41 50 45 52 5f 4c 45 54 54 DMPAPER_LETT
8bb0: 45 52 53 4d 41 4c 4c 2c 0a 20 20 20 20 44 4d 50 ERSMALL,. DMP
8bc0: 41 50 45 52 5f 54 41 42 4c 4f 49 44 2c 0a 20 20 APER_TABLOID,.
8bd0: 20 20 44 4d 50 41 50 45 52 5f 4c 45 44 47 45 52 DMPAPER_LEDGER
8be0: 2c 0a 20 20 20 20 44 4d 50 41 50 45 52 5f 4c 45 ,. DMPAPER_LE
8bf0: 47 41 4c 2c 0a 20 20 20 20 44 4d 50 41 50 45 52 GAL,. DMPAPER
8c00: 5f 53 54 41 54 45 4d 45 4e 54 2c 0a 20 20 20 20 _STATEMENT,.
8c10: 44 4d 50 41 50 45 52 5f 45 58 45 43 55 54 49 56 DMPAPER_EXECUTIV
8c20: 45 2c 0a 20 20 20 20 44 4d 50 41 50 45 52 5f 41 E,. DMPAPER_A
8c30: 33 2c 0a 20 20 20 20 44 4d 50 41 50 45 52 5f 41 3,. DMPAPER_A
8c40: 34 2c 0a 20 20 20 20 44 4d 50 41 50 45 52 5f 41 4,. DMPAPER_A
8c50: 34 53 4d 41 4c 4c 2c 0a 20 20 20 20 44 4d 50 41 4SMALL,. DMPA
8c60: 50 45 52 5f 41 35 2c 0a 20 20 20 20 44 4d 50 41 PER_A5,. DMPA
8c70: 50 45 52 5f 42 34 2c 0a 20 20 20 20 44 4d 50 41 PER_B4,. DMPA
8c80: 50 45 52 5f 42 35 2c 0a 20 20 20 20 44 4d 50 41 PER_B5,. DMPA
8c90: 50 45 52 5f 46 4f 4c 49 4f 2c 0a 20 20 20 20 44 PER_FOLIO,. D
8ca0: 4d 50 41 50 45 52 5f 51 55 41 52 54 4f 2c 0a 20 MPAPER_QUARTO,.
8cb0: 20 20 20 44 4d 50 41 50 45 52 5f 31 30 58 31 34 DMPAPER_10X14
8cc0: 2c 0a 20 20 20 20 44 4d 50 41 50 45 52 5f 31 31 ,. DMPAPER_11
8cd0: 58 31 37 2c 0a 20 20 20 20 44 4d 50 41 50 45 52 X17,. DMPAPER
8ce0: 5f 4e 4f 54 45 2c 0a 20 20 20 20 44 4d 50 41 50 _NOTE,. DMPAP
8cf0: 45 52 5f 45 4e 56 5f 39 2c 0a 20 20 20 20 44 4d ER_ENV_9,. DM
8d00: 50 41 50 45 52 5f 45 4e 56 5f 31 30 2c 0a 20 20 PAPER_ENV_10,.
8d10: 20 20 44 4d 50 41 50 45 52 5f 45 4e 56 5f 31 31 DMPAPER_ENV_11
8d20: 2c 0a 20 20 20 20 44 4d 50 41 50 45 52 5f 45 4e ,. DMPAPER_EN
8d30: 56 5f 31 32 2c 0a 20 20 20 20 44 4d 50 41 50 45 V_12,. DMPAPE
8d40: 52 5f 45 4e 56 5f 31 34 2c 0a 20 20 20 20 44 4d R_ENV_14,. DM
8d50: 50 41 50 45 52 5f 43 53 48 45 45 54 2c 0a 20 20 PAPER_CSHEET,.
8d60: 20 20 44 4d 50 41 50 45 52 5f 44 53 48 45 45 54 DMPAPER_DSHEET
8d70: 2c 0a 20 20 20 20 44 4d 50 41 50 45 52 5f 45 53 ,. DMPAPER_ES
8d80: 48 45 45 54 2c 0a 20 20 20 20 44 4d 50 41 50 45 HEET,. DMPAPE
8d90: 52 5f 45 4e 56 5f 44 4c 2c 0a 20 20 20 20 44 4d R_ENV_DL,. DM
8da0: 50 41 50 45 52 5f 45 4e 56 5f 43 35 2c 0a 20 20 PAPER_ENV_C5,.
8db0: 20 20 44 4d 50 41 50 45 52 5f 45 4e 56 5f 43 33 DMPAPER_ENV_C3
8dc0: 2c 0a 20 20 20 20 44 4d 50 41 50 45 52 5f 45 4e ,. DMPAPER_EN
8dd0: 56 5f 43 34 2c 0a 20 20 20 20 44 4d 50 41 50 45 V_C4,. DMPAPE
8de0: 52 5f 45 4e 56 5f 43 36 2c 0a 20 20 20 20 44 4d R_ENV_C6,. DM
8df0: 50 41 50 45 52 5f 45 4e 56 5f 43 36 35 2c 0a 20 PAPER_ENV_C65,.
8e00: 20 20 20 44 4d 50 41 50 45 52 5f 45 4e 56 5f 42 DMPAPER_ENV_B
8e10: 34 2c 0a 20 20 20 20 44 4d 50 41 50 45 52 5f 45 4,. DMPAPER_E
8e20: 4e 56 5f 42 35 2c 0a 20 20 20 20 44 4d 50 41 50 NV_B5,. DMPAP
8e30: 45 52 5f 45 4e 56 5f 42 36 2c 0a 20 20 20 20 44 ER_ENV_B6,. D
8e40: 4d 50 41 50 45 52 5f 45 4e 56 5f 49 54 41 4c 59 MPAPER_ENV_ITALY
8e50: 2c 0a 20 20 20 20 44 4d 50 41 50 45 52 5f 45 4e ,. DMPAPER_EN
8e60: 56 5f 4d 4f 4e 41 52 43 48 2c 0a 20 20 20 20 44 V_MONARCH,. D
8e70: 4d 50 41 50 45 52 5f 45 4e 56 5f 50 45 52 53 4f MPAPER_ENV_PERSO
8e80: 4e 41 4c 2c 0a 20 20 20 20 44 4d 50 41 50 45 52 NAL,. DMPAPER
8e90: 5f 46 41 4e 46 4f 4c 44 5f 55 53 2c 0a 20 20 20 _FANFOLD_US,.
8ea0: 20 44 4d 50 41 50 45 52 5f 46 41 4e 46 4f 4c 44 DMPAPER_FANFOLD
8eb0: 5f 53 54 44 5f 47 45 52 4d 41 4e 2c 0a 20 20 20 _STD_GERMAN,.
8ec0: 20 44 4d 50 41 50 45 52 5f 46 41 4e 46 4f 4c 44 DMPAPER_FANFOLD
8ed0: 5f 4c 47 4c 5f 47 45 52 4d 41 4e 2c 0a 20 20 20 _LGL_GERMAN,.
8ee0: 20 44 4d 50 41 50 45 52 5f 49 53 4f 5f 42 34 2c DMPAPER_ISO_B4,
8ef0: 0a 20 20 20 20 44 4d 50 41 50 45 52 5f 4a 41 50 . DMPAPER_JAP
8f00: 41 4e 45 53 45 5f 50 4f 53 54 43 41 52 44 2c 0a ANESE_POSTCARD,.
8f10: 20 20 20 20 44 4d 50 41 50 45 52 5f 39 58 31 31 DMPAPER_9X11
8f20: 2c 0a 20 20 20 20 44 4d 50 41 50 45 52 5f 31 30 ,. DMPAPER_10
8f30: 58 31 31 2c 0a 20 20 20 20 44 4d 50 41 50 45 52 X11,. DMPAPER
8f40: 5f 31 35 58 31 31 2c 0a 20 20 20 20 44 4d 50 41 _15X11,. DMPA
8f50: 50 45 52 5f 45 4e 56 5f 49 4e 56 49 54 45 2c 0a PER_ENV_INVITE,.
8f60: 20 20 20 20 44 4d 50 41 50 45 52 5f 52 45 53 45 DMPAPER_RESE
8f70: 52 56 45 44 5f 34 38 2c 0a 20 20 20 20 44 4d 50 RVED_48,. DMP
8f80: 41 50 45 52 5f 52 45 53 45 52 56 45 44 5f 34 39 APER_RESERVED_49
8f90: 2c 0a 20 20 20 20 44 4d 50 41 50 45 52 5f 4c 45 ,. DMPAPER_LE
8fa0: 54 54 45 52 5f 45 58 54 52 41 2c 0a 20 20 20 20 TTER_EXTRA,.
8fb0: 44 4d 50 41 50 45 52 5f 4c 45 47 41 4c 5f 45 58 DMPAPER_LEGAL_EX
8fc0: 54 52 41 2c 0a 20 20 20 20 44 4d 50 41 50 45 52 TRA,. DMPAPER
8fd0: 5f 54 41 42 4c 4f 49 44 5f 45 58 54 52 41 2c 0a _TABLOID_EXTRA,.
8fe0: 20 20 20 20 44 4d 50 41 50 45 52 5f 41 34 5f 45 DMPAPER_A4_E
8ff0: 58 54 52 41 2c 0a 20 20 20 20 44 4d 50 41 50 45 XTRA,. DMPAPE
9000: 52 5f 4c 45 54 54 45 52 5f 54 52 41 4e 53 56 45 R_LETTER_TRANSVE
9010: 52 53 45 2c 0a 20 20 20 20 44 4d 50 41 50 45 52 RSE,. DMPAPER
9020: 5f 41 34 5f 54 52 41 4e 53 56 45 52 53 45 2c 0a _A4_TRANSVERSE,.
9030: 20 20 20 20 44 4d 50 41 50 45 52 5f 4c 45 54 54 DMPAPER_LETT
9040: 45 52 5f 45 58 54 52 41 5f 54 52 41 4e 53 56 45 ER_EXTRA_TRANSVE
9050: 52 53 45 2c 0a 20 20 20 20 44 4d 50 41 50 45 52 RSE,. DMPAPER
9060: 5f 41 5f 50 4c 55 53 2c 0a 20 20 20 20 44 4d 50 _A_PLUS,. DMP
9070: 41 50 45 52 5f 42 5f 50 4c 55 53 2c 0a 20 20 20 APER_B_PLUS,.
9080: 20 44 4d 50 41 50 45 52 5f 4c 45 54 54 45 52 5f DMPAPER_LETTER_
9090: 50 4c 55 53 2c 0a 20 20 20 20 44 4d 50 41 50 45 PLUS,. DMPAPE
90a0: 52 5f 41 34 5f 50 4c 55 53 2c 0a 20 20 20 20 44 R_A4_PLUS,. D
90b0: 4d 50 41 50 45 52 5f 41 35 5f 54 52 41 4e 53 56 MPAPER_A5_TRANSV
90c0: 45 52 53 45 2c 0a 20 20 20 20 44 4d 50 41 50 45 ERSE,. DMPAPE
90d0: 52 5f 42 35 5f 54 52 41 4e 53 56 45 52 53 45 2c R_B5_TRANSVERSE,
90e0: 0a 20 20 20 20 44 4d 50 41 50 45 52 5f 41 33 5f . DMPAPER_A3_
90f0: 45 58 54 52 41 2c 0a 20 20 20 20 44 4d 50 41 50 EXTRA,. DMPAP
9100: 45 52 5f 41 35 5f 45 58 54 52 41 2c 0a 20 20 20 ER_A5_EXTRA,.
9110: 20 44 4d 50 41 50 45 52 5f 42 35 5f 45 58 54 52 DMPAPER_B5_EXTR
9120: 41 2c 0a 20 20 20 20 44 4d 50 41 50 45 52 5f 41 A,. DMPAPER_A
9130: 32 2c 0a 20 20 20 20 44 4d 50 41 50 45 52 5f 41 2,. DMPAPER_A
9140: 33 5f 54 52 41 4e 53 56 45 52 53 45 2c 0a 20 20 3_TRANSVERSE,.
9150: 20 20 44 4d 50 41 50 45 52 5f 41 33 5f 45 58 54 DMPAPER_A3_EXT
9160: 52 41 5f 54 52 41 4e 53 56 45 52 53 45 20 20 20 RA_TRANSVERSE
9170: 20 20 2f 2f 20 3d 20 36 38 0a 7d 0a 73 74 61 74 // = 68.}.stat
9180: 69 63 0a 0a 69 66 20 28 57 49 4e 56 45 52 20 3e ic..if (WINVER >
9190: 3d 20 30 78 30 35 30 30 29 0a 7b 0a 20 20 20 20 = 0x0500).{.
91a0: 65 6e 75 6d 20 3a 20 73 68 6f 72 74 20 7b 0a 20 enum : short {.
91b0: 20 20 20 20 20 20 20 44 4d 50 41 50 45 52 5f 44 DMPAPER_D
91c0: 42 4c 5f 4a 41 50 41 4e 45 53 45 5f 50 4f 53 54 BL_JAPANESE_POST
91d0: 43 41 52 44 20 3d 20 36 39 2c 0a 20 20 20 20 20 CARD = 69,.
91e0: 20 20 20 44 4d 50 41 50 45 52 5f 41 36 2c 0a 20 DMPAPER_A6,.
91f0: 20 20 20 20 20 20 20 44 4d 50 41 50 45 52 5f 4a DMPAPER_J
9200: 45 4e 56 5f 4b 41 4b 55 32 2c 0a 20 20 20 20 20 ENV_KAKU2,.
9210: 20 20 20 44 4d 50 41 50 45 52 5f 4a 45 4e 56 5f DMPAPER_JENV_
9220: 4b 41 4b 55 33 2c 0a 20 20 20 20 20 20 20 20 44 KAKU3,. D
9230: 4d 50 41 50 45 52 5f 4a 45 4e 56 5f 43 48 4f 55 MPAPER_JENV_CHOU
9240: 33 2c 0a 20 20 20 20 20 20 20 20 44 4d 50 41 50 3,. DMPAP
9250: 45 52 5f 4a 45 4e 56 5f 43 48 4f 55 34 2c 0a 20 ER_JENV_CHOU4,.
9260: 20 20 20 20 20 20 20 44 4d 50 41 50 45 52 5f 4c DMPAPER_L
9270: 45 54 54 45 52 5f 52 4f 54 41 54 45 44 2c 0a 20 ETTER_ROTATED,.
9280: 20 20 20 20 20 20 20 44 4d 50 41 50 45 52 5f 41 DMPAPER_A
9290: 33 5f 52 4f 54 41 54 45 44 2c 0a 20 20 20 20 20 3_ROTATED,.
92a0: 20 20 20 44 4d 50 41 50 45 52 5f 41 34 5f 52 4f DMPAPER_A4_RO
92b0: 54 41 54 45 44 2c 0a 20 20 20 20 20 20 20 20 44 TATED,. D
92c0: 4d 50 41 50 45 52 5f 41 35 5f 52 4f 54 41 54 45 MPAPER_A5_ROTATE
92d0: 44 2c 0a 20 20 20 20 20 20 20 20 44 4d 50 41 50 D,. DMPAP
92e0: 45 52 5f 42 34 5f 4a 49 53 5f 52 4f 54 41 54 45 ER_B4_JIS_ROTATE
92f0: 44 2c 0a 20 20 20 20 20 20 20 20 44 4d 50 41 50 D,. DMPAP
9300: 45 52 5f 42 35 5f 4a 49 53 5f 52 4f 54 41 54 45 ER_B5_JIS_ROTATE
9310: 44 2c 0a 20 20 20 20 20 20 20 20 44 4d 50 41 50 D,. DMPAP
9320: 45 52 5f 4a 41 50 41 4e 45 53 45 5f 50 4f 53 54 ER_JAPANESE_POST
9330: 43 41 52 44 5f 52 4f 54 41 54 45 44 2c 0a 20 20 CARD_ROTATED,.
9340: 20 20 20 20 20 20 44 4d 50 41 50 45 52 5f 44 42 DMPAPER_DB
9350: 4c 5f 4a 41 50 41 4e 45 53 45 5f 50 4f 53 54 43 L_JAPANESE_POSTC
9360: 41 52 44 5f 52 4f 54 41 54 45 44 2c 0a 20 20 20 ARD_ROTATED,.
9370: 20 20 20 20 20 44 4d 50 41 50 45 52 5f 41 36 5f DMPAPER_A6_
9380: 52 4f 54 41 54 45 44 2c 0a 20 20 20 20 20 20 20 ROTATED,.
9390: 20 44 4d 50 41 50 45 52 5f 4a 45 4e 56 5f 4b 41 DMPAPER_JENV_KA
93a0: 4b 55 32 5f 52 4f 54 41 54 45 44 2c 0a 20 20 20 KU2_ROTATED,.
93b0: 20 20 20 20 20 44 4d 50 41 50 45 52 5f 4a 45 4e DMPAPER_JEN
93c0: 56 5f 4b 41 4b 55 33 5f 52 4f 54 41 54 45 44 2c V_KAKU3_ROTATED,
93d0: 0a 20 20 20 20 20 20 20 20 44 4d 50 41 50 45 52 . DMPAPER
93e0: 5f 4a 45 4e 56 5f 43 48 4f 55 33 5f 52 4f 54 41 _JENV_CHOU3_ROTA
93f0: 54 45 44 2c 0a 20 20 20 20 20 20 20 20 44 4d 50 TED,. DMP
9400: 41 50 45 52 5f 4a 45 4e 56 5f 43 48 4f 55 34 5f APER_JENV_CHOU4_
9410: 52 4f 54 41 54 45 44 2c 0a 20 20 20 20 20 20 20 ROTATED,.
9420: 20 44 4d 50 41 50 45 52 5f 42 36 5f 4a 49 53 2c DMPAPER_B6_JIS,
9430: 0a 20 20 20 20 20 20 20 20 44 4d 50 41 50 45 52 . DMPAPER
9440: 5f 42 36 5f 4a 49 53 5f 52 4f 54 41 54 45 44 2c _B6_JIS_ROTATED,
9450: 0a 20 20 20 20 20 20 20 20 44 4d 50 41 50 45 52 . DMPAPER
9460: 5f 31 32 58 31 31 2c 0a 20 20 20 20 20 20 20 20 _12X11,.
9470: 44 4d 50 41 50 45 52 5f 4a 45 4e 56 5f 59 4f 55 DMPAPER_JENV_YOU
9480: 34 2c 0a 20 20 20 20 20 20 20 20 44 4d 50 41 50 4,. DMPAP
9490: 45 52 5f 4a 45 4e 56 5f 59 4f 55 34 5f 52 4f 54 ER_JENV_YOU4_ROT
94a0: 41 54 45 44 2c 0a 20 20 20 20 20 20 20 20 44 4d ATED,. DM
94b0: 50 41 50 45 52 5f 50 31 36 4b 2c 0a 20 20 20 20 PAPER_P16K,.
94c0: 20 20 20 20 44 4d 50 41 50 45 52 5f 50 33 32 4b DMPAPER_P32K
94d0: 2c 0a 20 20 20 20 20 20 20 20 44 4d 50 41 50 45 ,. DMPAPE
94e0: 52 5f 50 33 32 4b 42 49 47 2c 0a 20 20 20 20 20 R_P32KBIG,.
94f0: 20 20 20 44 4d 50 41 50 45 52 5f 50 45 4e 56 5f DMPAPER_PENV_
9500: 31 2c 0a 20 20 20 20 20 20 20 20 44 4d 50 41 50 1,. DMPAP
9510: 45 52 5f 50 45 4e 56 5f 32 2c 0a 20 20 20 20 20 ER_PENV_2,.
9520: 20 20 20 44 4d 50 41 50 45 52 5f 50 45 4e 56 5f DMPAPER_PENV_
9530: 33 2c 0a 20 20 20 20 20 20 20 20 44 4d 50 41 50 3,. DMPAP
9540: 45 52 5f 50 45 4e 56 5f 34 2c 0a 20 20 20 20 20 ER_PENV_4,.
9550: 20 20 20 44 4d 50 41 50 45 52 5f 50 45 4e 56 5f DMPAPER_PENV_
9560: 35 2c 0a 20 20 20 20 20 20 20 20 44 4d 50 41 50 5,. DMPAP
9570: 45 52 5f 50 45 4e 56 5f 36 2c 0a 20 20 20 20 20 ER_PENV_6,.
9580: 20 20 20 44 4d 50 41 50 45 52 5f 50 45 4e 56 5f DMPAPER_PENV_
9590: 37 2c 0a 20 20 20 20 20 20 20 20 44 4d 50 41 50 7,. DMPAP
95a0: 45 52 5f 50 45 4e 56 5f 38 2c 0a 20 20 20 20 20 ER_PENV_8,.
95b0: 20 20 20 44 4d 50 41 50 45 52 5f 50 45 4e 56 5f DMPAPER_PENV_
95c0: 39 2c 0a 20 20 20 20 20 20 20 20 44 4d 50 41 50 9,. DMPAP
95d0: 45 52 5f 50 45 4e 56 5f 31 30 2c 0a 20 20 20 20 ER_PENV_10,.
95e0: 20 20 20 20 44 4d 50 41 50 45 52 5f 50 31 36 4b DMPAPER_P16K
95f0: 5f 52 4f 54 41 54 45 44 2c 0a 20 20 20 20 20 20 _ROTATED,.
9600: 20 20 44 4d 50 41 50 45 52 5f 50 33 32 4b 5f 52 DMPAPER_P32K_R
9610: 4f 54 41 54 45 44 2c 0a 20 20 20 20 20 20 20 20 OTATED,.
9620: 44 4d 50 41 50 45 52 5f 50 33 32 4b 42 49 47 5f DMPAPER_P32KBIG_
9630: 52 4f 54 41 54 45 44 2c 0a 20 20 20 20 20 20 20 ROTATED,.
9640: 20 44 4d 50 41 50 45 52 5f 50 45 4e 56 5f 31 5f DMPAPER_PENV_1_
9650: 52 4f 54 41 54 45 44 2c 0a 20 20 20 20 20 20 20 ROTATED,.
9660: 20 44 4d 50 41 50 45 52 5f 50 45 4e 56 5f 32 5f DMPAPER_PENV_2_
9670: 52 4f 54 41 54 45 44 2c 0a 20 20 20 20 20 20 20 ROTATED,.
9680: 20 44 4d 50 41 50 45 52 5f 50 45 4e 56 5f 33 5f DMPAPER_PENV_3_
9690: 52 4f 54 41 54 45 44 2c 0a 20 20 20 20 20 20 20 ROTATED,.
96a0: 20 44 4d 50 41 50 45 52 5f 50 45 4e 56 5f 34 5f DMPAPER_PENV_4_
96b0: 52 4f 54 41 54 45 44 2c 0a 20 20 20 20 20 20 20 ROTATED,.
96c0: 20 44 4d 50 41 50 45 52 5f 50 45 4e 56 5f 35 5f DMPAPER_PENV_5_
96d0: 52 4f 54 41 54 45 44 2c 0a 20 20 20 20 20 20 20 ROTATED,.
96e0: 20 44 4d 50 41 50 45 52 5f 50 45 4e 56 5f 36 5f DMPAPER_PENV_6_
96f0: 52 4f 54 41 54 45 44 2c 0a 20 20 20 20 20 20 20 ROTATED,.
9700: 20 44 4d 50 41 50 45 52 5f 50 45 4e 56 5f 37 5f DMPAPER_PENV_7_
9710: 52 4f 54 41 54 45 44 2c 0a 20 20 20 20 20 20 20 ROTATED,.
9720: 20 44 4d 50 41 50 45 52 5f 50 45 4e 56 5f 38 5f DMPAPER_PENV_8_
9730: 52 4f 54 41 54 45 44 2c 0a 20 20 20 20 20 20 20 ROTATED,.
9740: 20 44 4d 50 41 50 45 52 5f 50 45 4e 56 5f 39 5f DMPAPER_PENV_9_
9750: 52 4f 54 41 54 45 44 2c 0a 20 20 20 20 20 20 20 ROTATED,.
9760: 20 44 4d 50 41 50 45 52 5f 50 45 4e 56 5f 31 30 DMPAPER_PENV_10
9770: 5f 52 4f 54 41 54 45 44 20 20 20 20 20 20 20 20 _ROTATED
9780: 20 2f 2f 20 31 31 38 0a 20 20 20 20 7d 0a 7d 0a // 118. }.}.
9790: 0a 63 6f 6e 73 74 20 73 68 6f 72 74 20 44 4d 50 .const short DMP
97a0: 41 50 45 52 5f 46 49 52 53 54 20 3d 20 44 4d 50 APER_FIRST = DMP
97b0: 41 50 45 52 5f 4c 45 54 54 45 52 3b 0a 0a 73 74 APER_LETTER;..st
97c0: 61 74 69 63 0a 0a 69 66 20 28 57 49 4e 56 45 52 atic..if (WINVER
97d0: 20 3e 3d 20 30 78 30 35 30 30 29 0a 20 20 20 20 >= 0x0500).
97e0: 63 6f 6e 73 74 20 73 68 6f 72 74 20 44 4d 50 41 const short DMPA
97f0: 50 45 52 5f 4c 41 53 54 20 3d 20 44 4d 50 41 50 PER_LAST = DMPAP
9800: 45 52 5f 50 45 4e 56 5f 31 30 5f 52 4f 54 41 54 ER_PENV_10_ROTAT
9810: 45 44 3b 0a 65 6c 73 65 0a 20 20 20 20 63 6f 6e ED;.else. con
9820: 73 74 20 73 68 6f 72 74 20 44 4d 50 41 50 45 52 st short DMPAPER
9830: 5f 4c 41 53 54 20 3d 20 44 4d 50 41 50 45 52 5f _LAST = DMPAPER_
9840: 41 33 5f 45 58 54 52 41 5f 54 52 41 4e 53 56 45 A3_EXTRA_TRANSVE
9850: 52 53 45 3b 0a 0a 63 6f 6e 73 74 20 73 68 6f 72 RSE;..const shor
9860: 74 20 44 4d 50 41 50 45 52 5f 55 53 45 52 20 3d t DMPAPER_USER =
9870: 20 32 35 36 3b 0a 0a 2f 2f 20 44 45 56 4d 4f 44 256;..// DEVMOD
9880: 45 2e 64 6d 44 65 66 61 75 6c 74 53 6f 75 72 63 E.dmDefaultSourc
9890: 65 0a 65 6e 75 6d 20 3a 20 73 68 6f 72 74 20 7b e.enum : short {
98a0: 0a 20 20 20 20 44 4d 42 49 4e 5f 4f 4e 4c 59 4f . DMBIN_ONLYO
98b0: 4e 45 20 3d 20 31 2c 0a 20 20 20 20 44 4d 42 49 NE = 1,. DMBI
98c0: 4e 5f 55 50 50 45 52 20 20 20 3d 20 31 2c 0a 20 N_UPPER = 1,.
98d0: 20 20 20 44 4d 42 49 4e 5f 4c 4f 57 45 52 2c 0a DMBIN_LOWER,.
98e0: 20 20 20 20 44 4d 42 49 4e 5f 4d 49 44 44 4c 45 DMBIN_MIDDLE
98f0: 2c 0a 20 20 20 20 44 4d 42 49 4e 5f 4d 41 4e 55 ,. DMBIN_MANU
9900: 41 4c 2c 0a 20 20 20 20 44 4d 42 49 4e 5f 45 4e AL,. DMBIN_EN
9910: 56 45 4c 4f 50 45 2c 0a 20 20 20 20 44 4d 42 49 VELOPE,. DMBI
9920: 4e 5f 45 4e 56 4d 41 4e 55 41 4c 2c 0a 20 20 20 N_ENVMANUAL,.
9930: 20 44 4d 42 49 4e 5f 41 55 54 4f 2c 0a 20 20 20 DMBIN_AUTO,.
9940: 20 44 4d 42 49 4e 5f 54 52 41 43 54 4f 52 2c 0a DMBIN_TRACTOR,.
9950: 20 20 20 20 44 4d 42 49 4e 5f 53 4d 41 4c 4c 46 DMBIN_SMALLF
9960: 4d 54 2c 0a 20 20 20 20 44 4d 42 49 4e 5f 4c 41 MT,. DMBIN_LA
9970: 52 47 45 46 4d 54 2c 0a 20 20 20 20 44 4d 42 49 RGEFMT,. DMBI
9980: 4e 5f 4c 41 52 47 45 43 41 50 41 43 49 54 59 2c N_LARGECAPACITY,
9990: 20 20 20 20 20 2f 2f 20 3d 20 31 31 0a 20 20 20 // = 11.
99a0: 20 44 4d 42 49 4e 5f 43 41 53 53 45 54 54 45 20 DMBIN_CASSETTE
99b0: 3d 20 31 34 2c 0a 20 20 20 20 44 4d 42 49 4e 5f = 14,. DMBIN_
99c0: 46 4f 52 4d 53 4f 55 52 43 45 2c 0a 7d 0a 73 68 FORMSOURCE,.}.sh
99d0: 6f 72 74 0a 44 4d 42 49 4e 5f 46 49 52 53 54 20 ort.DMBIN_FIRST
99e0: 3d 20 44 4d 42 49 4e 5f 55 50 50 45 52 2c 0a 44 = DMBIN_UPPER,.D
99f0: 4d 42 49 4e 5f 4c 41 53 54 20 20 3d 20 44 4d 42 MBIN_LAST = DMB
9a00: 49 4e 5f 46 4f 52 4d 53 4f 55 52 43 45 2c 0a 44 IN_FORMSOURCE,.D
9a10: 4d 42 49 4e 5f 55 53 45 52 20 20 3d 20 32 35 36 MBIN_USER = 256
9a20: 3b 0a 0a 2f 2f 20 44 45 56 4d 4f 44 45 2e 64 6d ;..// DEVMODE.dm
9a30: 50 72 69 6e 74 51 75 61 6c 69 74 79 0a 65 6e 75 PrintQuality.enu
9a40: 6d 20 3a 20 73 68 6f 72 74 20 7b 0a 20 20 20 20 m : short {.
9a50: 44 4d 52 45 53 5f 44 52 41 46 54 20 20 3d 20 2d DMRES_DRAFT = -
9a60: 31 2c 0a 20 20 20 20 44 4d 52 45 53 5f 4c 4f 57 1,. DMRES_LOW
9a70: 20 20 20 20 3d 20 2d 32 2c 0a 20 20 20 20 44 4d = -2,. DM
9a80: 52 45 53 5f 4d 45 44 49 55 4d 20 3d 20 2d 33 2c RES_MEDIUM = -3,
9a90: 0a 20 20 20 20 44 4d 52 45 53 5f 48 49 47 48 20 . DMRES_HIGH
9aa0: 20 20 3d 20 2d 34 0a 7d 0a 0a 2f 2f 20 44 45 56 = -4.}..// DEV
9ab0: 4d 4f 44 45 2e 64 6d 43 6f 6c 6f 72 0a 65 6e 75 MODE.dmColor.enu
9ac0: 6d 20 3a 20 73 68 6f 72 74 20 7b 0a 20 20 20 20 m : short {.
9ad0: 44 4d 43 4f 4c 4f 52 5f 4d 4f 4e 4f 43 48 52 4f DMCOLOR_MONOCHRO
9ae0: 4d 45 20 3d 20 31 2c 0a 20 20 20 20 44 4d 43 4f ME = 1,. DMCO
9af0: 4c 4f 52 5f 43 4f 4c 4f 52 20 20 20 20 20 20 3d LOR_COLOR =
9b00: 20 32 0a 7d 0a 0a 2f 2f 20 44 45 56 4d 4f 44 45 2.}..// DEVMODE
9b10: 2e 64 6d 44 75 70 6c 65 78 0a 65 6e 75 6d 20 3a .dmDuplex.enum :
9b20: 20 73 68 6f 72 74 20 7b 0a 20 20 20 20 44 4d 44 short {. DMD
9b30: 55 50 5f 53 49 4d 50 4c 45 58 20 20 20 20 3d 20 UP_SIMPLEX =
9b40: 31 2c 0a 20 20 20 20 44 4d 44 55 50 5f 56 45 52 1,. DMDUP_VER
9b50: 54 49 43 41 4c 20 20 20 3d 20 32 2c 0a 20 20 20 TICAL = 2,.
9b60: 20 44 4d 44 55 50 5f 48 4f 52 49 5a 4f 4e 54 41 DMDUP_HORIZONTA
9b70: 4c 20 3d 20 33 0a 7d 0a 0a 2f 2f 20 44 45 56 4d L = 3.}..// DEVM
9b80: 4f 44 45 2e 64 6d 54 54 4f 70 74 69 6f 6e 0a 65 ODE.dmTTOption.e
9b90: 6e 75 6d 20 3a 20 73 68 6f 72 74 20 7b 0a 20 20 num : short {.
9ba0: 20 20 44 4d 54 54 5f 42 49 54 4d 41 50 20 3d 20 DMTT_BITMAP =
9bb0: 31 2c 0a 20 20 20 20 44 4d 54 54 5f 44 4f 57 4e 1,. DMTT_DOWN
9bc0: 4c 4f 41 44 2c 0a 20 20 20 20 44 4d 54 54 5f 53 LOAD,. DMTT_S
9bd0: 55 42 44 45 56 2c 0a 20 20 20 20 44 4d 54 54 5f UBDEV,. DMTT_
9be0: 44 4f 57 4e 4c 4f 41 44 5f 4f 55 54 4c 49 4e 45 DOWNLOAD_OUTLINE
9bf0: 0a 7d 0a 0a 2f 2f 20 44 45 56 4d 4f 44 45 2e 64 .}..// DEVMODE.d
9c00: 6d 43 6f 6c 6c 61 74 65 0a 65 6e 75 6d 20 3a 20 mCollate.enum :
9c10: 73 68 6f 72 74 20 7b 0a 20 20 20 20 44 4d 43 4f short {. DMCO
9c20: 4c 4c 41 54 45 5f 46 41 4c 53 45 20 3d 20 30 2c LLATE_FALSE = 0,
9c30: 0a 20 20 20 20 44 4d 43 4f 4c 4c 41 54 45 5f 54 . DMCOLLATE_T
9c40: 52 55 45 0a 7d 0a 0a 73 74 61 74 69 63 0a 0a 69 RUE.}..static..i
9c50: 66 20 28 57 49 4e 56 45 52 20 3e 3d 20 30 78 30 f (WINVER >= 0x0
9c60: 35 30 31 29 0a 7b 0a 20 20 20 20 2f 2a 20 44 45 501).{. /* DE
9c70: 56 4d 4f 44 45 20 64 6d 44 69 73 70 6c 61 79 4f VMODE dmDisplayO
9c80: 72 69 65 6e 74 61 74 69 6f 6e 20 73 70 65 63 69 rientation speci
9c90: 66 69 61 74 69 6f 6e 73 20 2a 2f 0a 20 20 20 20 fiations */.
9ca0: 65 6e 75 6d 20 3a 20 73 68 6f 72 74 20 7b 0a 20 enum : short {.
9cb0: 20 20 20 20 20 20 20 44 4d 44 4f 5f 44 45 46 41 DMDO_DEFA
9cc0: 55 4c 54 20 3d 20 30 2c 0a 20 20 20 20 20 20 20 ULT = 0,.
9cd0: 20 44 4d 44 4f 5f 39 30 20 20 20 20 20 20 3d 20 DMDO_90 =
9ce0: 31 2c 0a 20 20 20 20 20 20 20 20 44 4d 44 4f 5f 1,. DMDO_
9cf0: 31 38 30 20 20 20 20 20 3d 20 32 2c 0a 20 20 20 180 = 2,.
9d00: 20 20 20 20 20 44 4d 44 4f 5f 32 37 30 20 20 20 DMDO_270
9d10: 20 20 3d 20 33 2c 0a 20 20 20 20 7d 0a 0a 20 20 = 3,. }..
9d20: 20 20 2f 2a 20 44 45 56 4d 4f 44 45 20 64 6d 44 /* DEVMODE dmD
9d30: 69 73 70 6c 61 79 46 69 78 65 64 4f 75 74 70 75 isplayFixedOutpu
9d40: 74 20 73 70 65 63 69 66 69 61 74 69 6f 6e 73 20 t specifiations
9d50: 2a 2f 0a 20 20 20 20 65 6e 75 6d 20 3a 20 73 68 */. enum : sh
9d60: 6f 72 74 20 7b 0a 20 20 20 20 20 20 20 20 44 4d ort {. DM
9d70: 44 46 4f 5f 44 45 46 41 55 4c 54 20 3d 20 30 2c DFO_DEFAULT = 0,
9d80: 0a 20 20 20 20 20 20 20 20 44 4d 44 46 4f 5f 53 . DMDFO_S
9d90: 54 52 45 54 43 48 20 3d 20 31 2c 0a 20 20 20 20 TRETCH = 1,.
9da0: 20 20 20 20 44 4d 44 46 4f 5f 43 45 4e 54 45 52 DMDFO_CENTER
9db0: 20 20 3d 20 32 2c 0a 20 20 20 20 7d 0a 7d 0a 0a = 2,. }.}..
9dc0: 2f 2a 20 46 49 58 4d 45 3a 20 74 68 69 73 20 66 /* FIXME: this f
9dd0: 6c 61 67 73 20 61 72 65 20 64 65 70 72 65 63 61 lags are depreca
9de0: 74 65 64 20 3f 20 2a 2f 0a 0a 2f 2f 20 44 45 56 ted ? */..// DEV
9df0: 4d 4f 44 45 2e 64 6d 44 69 73 70 6c 61 79 46 6c MODE.dmDisplayFl
9e00: 61 67 73 0a 63 6f 6e 73 74 20 44 57 4f 52 44 0a ags.const DWORD.
9e10: 44 4d 5f 47 52 41 59 53 43 41 4c 45 20 20 3d 20 DM_GRAYSCALE =
9e20: 31 2c 0a 44 4d 5f 49 4e 54 45 52 4c 41 43 45 44 1,.DM_INTERLACED
9e30: 20 3d 20 32 3b 0a 0a 63 6f 6e 73 74 20 44 57 4f = 2;..const DWO
9e40: 52 44 0a 44 4d 44 49 53 50 4c 41 59 46 4c 41 47 RD.DMDISPLAYFLAG
9e50: 53 5f 54 45 58 54 4d 4f 44 45 20 3d 20 30 78 30 S_TEXTMODE = 0x0
9e60: 30 30 30 30 30 30 34 3b 0a 0a 2f 2a 20 64 6d 4e 0000004;../* dmN
9e70: 75 70 20 2c 20 6d 75 6c 74 69 70 6c 65 20 6c 6f up , multiple lo
9e80: 67 69 63 61 6c 20 70 61 67 65 20 70 65 72 20 70 gical page per p
9e90: 68 79 73 69 63 61 6c 20 70 61 67 65 20 6f 70 74 hysical page opt
9ea0: 69 6f 6e 73 20 2a 2f 0a 63 6f 6e 73 74 20 44 57 ions */.const DW
9eb0: 4f 52 44 0a 44 4d 4e 55 50 5f 53 59 53 54 45 4d ORD.DMNUP_SYSTEM
9ec0: 20 3d 20 31 2c 0a 44 4d 4e 55 50 5f 4f 4e 45 55 = 1,.DMNUP_ONEU
9ed0: 50 20 20 3d 20 32 3b 0a 0a 2f 2f 20 44 45 56 4d P = 2;..// DEVM
9ee0: 4f 44 45 2e 64 6d 46 69 65 6c 64 73 0a 63 6f 6e ODE.dmFields.con
9ef0: 73 74 20 44 57 4f 52 44 0a 44 4d 5f 4f 52 49 45 st DWORD.DM_ORIE
9f00: 4e 54 41 54 49 4f 4e 20 3d 20 30 78 30 30 30 30 NTATION = 0x0000
9f10: 30 30 30 31 2c 0a 44 4d 5f 50 41 50 45 52 53 49 0001,.DM_PAPERSI
9f20: 5a 45 20 20 20 3d 20 30 78 30 30 30 30 30 30 30 ZE = 0x0000000
9f30: 32 2c 0a 44 4d 5f 50 41 50 45 52 4c 45 4e 47 54 2,.DM_PAPERLENGT
9f40: 48 20 3d 20 30 78 30 30 30 30 30 30 30 34 2c 0a H = 0x00000004,.
9f50: 44 4d 5f 50 41 50 45 52 57 49 44 54 48 20 20 3d DM_PAPERWIDTH =
9f60: 20 30 78 30 30 30 30 30 30 30 38 2c 0a 44 4d 5f 0x00000008,.DM_
9f70: 53 43 41 4c 45 20 20 20 20 20 20 20 3d 20 30 78 SCALE = 0x
9f80: 30 30 30 30 30 30 31 30 3b 0a 73 74 61 74 69 63 00000010;.static
9f90: 0a 0a 69 66 20 28 57 49 4e 56 45 52 20 3e 3d 20 ..if (WINVER >=
9fa0: 30 78 30 35 30 30 29 0a 7b 0a 20 20 20 20 63 6f 0x0500).{. co
9fb0: 6e 73 74 20 44 57 4f 52 44 0a 20 20 20 20 44 4d nst DWORD. DM
9fc0: 5f 50 4f 53 49 54 49 4f 4e 20 3d 20 30 78 30 30 _POSITION = 0x00
9fd0: 30 30 30 30 32 30 2c 0a 20 20 20 20 44 4d 5f 4e 000020,. DM_N
9fe0: 55 50 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 UP = 0x0000
9ff0: 30 30 34 30 3b 0a 7d 0a 0a 73 74 61 74 69 63 0a 0040;.}..static.
a000: 0a 69 66 20 28 57 49 4e 56 45 52 20 3e 3d 20 30 .if (WINVER >= 0
a010: 78 30 35 30 31 29 0a 7b 0a 20 20 20 20 63 6f 6e x0501).{. con
a020: 73 74 20 44 57 4f 52 44 0a 20 20 20 20 44 4d 5f st DWORD. DM_
a030: 44 49 53 50 4c 41 59 4f 52 49 45 4e 54 41 54 49 DISPLAYORIENTATI
a040: 4f 4e 20 3d 20 30 78 30 30 30 30 30 30 38 30 3b ON = 0x00000080;
a050: 0a 7d 0a 0a 63 6f 6e 73 74 20 44 57 4f 52 44 0a .}..const DWORD.
a060: 44 4d 5f 43 4f 50 49 45 53 20 3d 20 30 78 30 30 DM_COPIES = 0x00
a070: 30 30 30 31 30 30 2c 0a 44 4d 5f 44 45 46 41 55 000100,.DM_DEFAU
a080: 4c 54 53 4f 55 52 43 45 20 20 20 20 3d 20 30 78 LTSOURCE = 0x
a090: 30 30 30 30 30 32 30 30 2c 0a 44 4d 5f 50 52 49 00000200,.DM_PRI
a0a0: 4e 54 51 55 41 4c 49 54 59 20 20 20 20 20 3d 20 NTQUALITY =
a0b0: 30 78 30 30 30 30 30 34 30 30 2c 0a 44 4d 5f 43 0x00000400,.DM_C
a0c0: 4f 4c 4f 52 20 20 20 20 20 20 20 20 20 20 20 20 OLOR
a0d0: 3d 20 30 78 30 30 30 30 30 38 30 30 2c 0a 44 4d = 0x00000800,.DM
a0e0: 5f 44 55 50 4c 45 58 20 20 20 20 20 20 20 20 20 _DUPLEX
a0f0: 20 20 3d 20 30 78 30 30 30 30 31 30 30 30 2c 0a = 0x00001000,.
a100: 44 4d 5f 59 52 45 53 4f 4c 55 54 49 4f 4e 20 20 DM_YRESOLUTION
a110: 20 20 20 20 3d 20 30 78 30 30 30 30 32 30 30 30 = 0x00002000
a120: 2c 0a 44 4d 5f 54 54 4f 50 54 49 4f 4e 20 20 20 ,.DM_TTOPTION
a130: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 34 30 = 0x000040
a140: 30 30 2c 0a 44 4d 5f 43 4f 4c 4c 41 54 45 20 20 00,.DM_COLLATE
a150: 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 = 0x0000
a160: 38 30 30 30 2c 0a 44 4d 5f 46 4f 52 4d 4e 41 4d 8000,.DM_FORMNAM
a170: 45 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 E = 0x00
a180: 30 31 30 30 30 30 2c 0a 44 4d 5f 4c 4f 47 50 49 010000,.DM_LOGPI
a190: 58 45 4c 53 20 20 20 20 20 20 20 20 3d 20 30 78 XELS = 0x
a1a0: 30 30 30 32 30 30 30 30 2c 0a 44 4d 5f 42 49 54 00020000,.DM_BIT
a1b0: 53 50 45 52 50 45 4c 20 20 20 20 20 20 20 3d 20 SPERPEL =
a1c0: 30 78 30 30 30 34 30 30 30 30 2c 0a 44 4d 5f 50 0x00040000,.DM_P
a1d0: 45 4c 53 57 49 44 54 48 20 20 20 20 20 20 20 20 ELSWIDTH
a1e0: 3d 20 30 78 30 30 30 38 30 30 30 30 2c 0a 44 4d = 0x00080000,.DM
a1f0: 5f 50 45 4c 53 48 45 49 47 48 54 20 20 20 20 20 _PELSHEIGHT
a200: 20 20 3d 20 30 78 30 30 31 30 30 30 30 30 2c 0a = 0x00100000,.
a210: 44 4d 5f 44 49 53 50 4c 41 59 46 4c 41 47 53 20 DM_DISPLAYFLAGS
a220: 20 20 20 20 3d 20 30 78 30 30 32 30 30 30 30 30 = 0x00200000
a230: 2c 0a 44 4d 5f 44 49 53 50 4c 41 59 46 52 45 51 ,.DM_DISPLAYFREQ
a240: 55 45 4e 43 59 20 3d 20 30 78 30 30 34 30 30 30 UENCY = 0x004000
a250: 30 30 3b 0a 73 74 61 74 69 63 0a 0a 69 66 20 28 00;.static..if (
a260: 57 49 4e 56 45 52 20 3e 3d 20 30 78 30 34 30 30 WINVER >= 0x0400
a270: 29 0a 7b 0a 20 20 20 20 63 6f 6e 73 74 20 44 57 ).{. const DW
a280: 4f 52 44 0a 20 20 20 20 44 4d 5f 49 43 4d 4d 45 ORD. DM_ICMME
a290: 54 48 4f 44 20 20 20 20 20 3d 20 30 78 30 30 38 THOD = 0x008
a2a0: 30 30 30 30 30 2c 0a 20 20 20 20 44 4d 5f 49 43 00000,. DM_IC
a2b0: 4d 49 4e 54 45 4e 54 20 20 20 20 20 3d 20 30 78 MINTENT = 0x
a2c0: 30 31 30 30 30 30 30 30 2c 0a 20 20 20 20 44 4d 01000000,. DM
a2d0: 5f 4d 45 44 49 41 54 59 50 45 20 20 20 20 20 3d _MEDIATYPE =
a2e0: 20 30 78 30 32 30 30 30 30 30 30 2c 0a 20 20 20 0x02000000,.
a2f0: 20 44 4d 5f 44 49 54 48 45 52 54 59 50 45 20 20 DM_DITHERTYPE
a300: 20 20 3d 20 30 78 30 34 30 30 30 30 30 30 2c 0a = 0x04000000,.
a310: 20 20 20 20 44 4d 5f 50 41 4e 4e 49 4e 47 57 49 DM_PANNINGWI
a320: 44 54 48 20 20 3d 20 30 78 30 38 30 30 30 30 30 DTH = 0x0800000
a330: 30 2c 0a 20 20 20 20 44 4d 5f 50 41 4e 4e 49 4e 0,. DM_PANNIN
a340: 47 48 45 49 47 48 54 20 3d 20 30 78 31 30 30 30 GHEIGHT = 0x1000
a350: 30 30 30 30 3b 0a 7d 0a 0a 73 74 61 74 69 63 0a 0000;.}..static.
a360: 0a 69 66 20 28 57 49 4e 56 45 52 20 3e 3d 20 30 .if (WINVER >= 0
a370: 78 30 35 30 31 29 0a 7b 0a 20 20 20 20 63 6f 6e x0501).{. con
a380: 73 74 20 44 57 4f 52 44 0a 20 20 20 20 44 4d 5f st DWORD. DM_
a390: 44 49 53 50 4c 41 59 46 49 58 45 44 4f 55 54 50 DISPLAYFIXEDOUTP
a3a0: 55 54 20 3d 20 30 78 32 30 30 30 30 30 30 30 3b UT = 0x20000000;
a3b0: 0a 7d 0a 0a 2f 2f 20 44 45 56 4d 4f 44 45 2e 64 .}..// DEVMODE.d
a3c0: 6d 49 43 4d 4d 65 74 68 6f 64 0a 65 6e 75 6d 20 mICMMethod.enum
a3d0: 3a 20 44 57 4f 52 44 20 7b 0a 20 20 20 20 44 4d : DWORD {. DM
a3e0: 49 43 4d 4d 45 54 48 4f 44 5f 4e 4f 4e 45 20 20 ICMMETHOD_NONE
a3f0: 20 3d 20 31 2c 0a 20 20 20 20 44 4d 49 43 4d 4d = 1,. DMICMM
a400: 45 54 48 4f 44 5f 53 59 53 54 45 4d 20 3d 20 32 ETHOD_SYSTEM = 2
a410: 2c 0a 20 20 20 20 44 4d 49 43 4d 4d 45 54 48 4f ,. DMICMMETHO
a420: 44 5f 44 52 49 56 45 52 20 3d 20 33 2c 0a 20 20 D_DRIVER = 3,.
a430: 20 20 44 4d 49 43 4d 4d 45 54 48 4f 44 5f 44 45 DMICMMETHOD_DE
a440: 56 49 43 45 20 3d 20 34 2c 0a 20 20 20 20 44 4d VICE = 4,. DM
a450: 49 43 4d 4d 45 54 48 4f 44 5f 55 53 45 52 20 20 ICMMETHOD_USER
a460: 20 3d 20 32 35 36 0a 7d 0a 0a 2f 2f 20 44 45 56 = 256.}..// DEV
a470: 4d 4f 44 45 2e 64 6d 49 43 4d 49 6e 74 65 6e 74 MODE.dmICMIntent
a480: 0a 65 6e 75 6d 20 3a 20 44 57 4f 52 44 20 7b 0a .enum : DWORD {.
a490: 20 20 20 20 44 4d 49 43 4d 5f 53 41 54 55 52 41 DMICM_SATURA
a4a0: 54 45 20 20 20 20 20 20 20 20 20 3d 20 31 2c 0a TE = 1,.
a4b0: 20 20 20 20 44 4d 49 43 4d 5f 43 4f 4e 54 52 41 DMICM_CONTRA
a4c0: 53 54 20 20 20 20 20 20 20 20 20 3d 20 32 2c 0a ST = 2,.
a4d0: 20 20 20 20 44 4d 49 43 4d 5f 43 4f 4c 4f 52 49 DMICM_COLORI
a4e0: 4d 45 54 52 49 43 20 20 20 20 20 3d 20 33 2c 0a METRIC = 3,.
a4f0: 20 20 20 20 44 4d 49 43 4d 5f 41 42 53 5f 43 4f DMICM_ABS_CO
a500: 4c 4f 52 49 4d 45 54 52 49 43 20 3d 20 34 2c 0a LORIMETRIC = 4,.
a510: 20 20 20 20 44 4d 49 43 4d 5f 55 53 45 52 20 20 DMICM_USER
a520: 20 20 20 20 20 20 20 20 20 20 20 3d 20 32 35 36 = 256
a530: 0a 7d 0a 0a 2f 2f 20 44 45 56 4d 4f 44 45 2e 64 .}..// DEVMODE.d
a540: 6d 4d 65 64 69 61 54 79 70 65 0a 65 6e 75 6d 20 mMediaType.enum
a550: 3a 20 44 57 4f 52 44 20 7b 0a 20 20 20 20 44 4d : DWORD {. DM
a560: 4d 45 44 49 41 5f 53 54 41 4e 44 41 52 44 20 20 MEDIA_STANDARD
a570: 20 20 20 3d 20 31 2c 0a 20 20 20 20 44 4d 4d 45 = 1,. DMME
a580: 44 49 41 5f 54 52 41 4e 53 50 41 52 45 4e 43 59 DIA_TRANSPARENCY
a590: 20 3d 20 32 2c 0a 20 20 20 20 44 4d 4d 45 44 49 = 2,. DMMEDI
a5a0: 41 5f 47 4c 4f 53 53 59 20 20 20 20 20 20 20 3d A_GLOSSY =
a5b0: 20 33 2c 0a 20 20 20 20 44 4d 4d 45 44 49 41 5f 3,. DMMEDIA_
a5c0: 55 53 45 52 20 20 20 20 20 20 20 20 20 3d 20 32 USER = 2
a5d0: 35 36 0a 7d 0a 0a 2f 2f 20 44 45 56 4d 4f 44 45 56.}..// DEVMODE
a5e0: 2e 64 6d 44 69 74 68 65 72 54 79 70 65 0a 65 6e .dmDitherType.en
a5f0: 75 6d 20 3a 20 44 57 4f 52 44 20 7b 0a 20 20 20 um : DWORD {.
a600: 20 44 4d 44 49 54 48 45 52 5f 4e 4f 4e 45 20 3d DMDITHER_NONE =
a610: 20 31 2c 0a 20 20 20 20 44 4d 44 49 54 48 45 52 1,. DMDITHER
a620: 5f 43 4f 41 52 53 45 2c 0a 20 20 20 20 44 4d 44 _COARSE,. DMD
a630: 49 54 48 45 52 5f 46 49 4e 45 2c 0a 20 20 20 20 ITHER_FINE,.
a640: 44 4d 44 49 54 48 45 52 5f 4c 49 4e 45 41 52 54 DMDITHER_LINEART
a650: 2c 0a 20 20 20 20 44 4d 44 49 54 48 45 52 5f 45 ,. DMDITHER_E
a660: 52 52 4f 52 44 49 46 46 55 53 49 4f 4e 2c 0a 20 RRORDIFFUSION,.
a670: 20 20 20 44 4d 44 49 54 48 45 52 5f 52 45 53 45 DMDITHER_RESE
a680: 52 56 45 44 36 2c 0a 20 20 20 20 44 4d 44 49 54 RVED6,. DMDIT
a690: 48 45 52 5f 52 45 53 45 52 56 45 44 37 2c 0a 20 HER_RESERVED7,.
a6a0: 20 20 20 44 4d 44 49 54 48 45 52 5f 52 45 53 45 DMDITHER_RESE
a6b0: 52 56 45 44 38 2c 0a 20 20 20 20 44 4d 44 49 54 RVED8,. DMDIT
a6c0: 48 45 52 5f 52 45 53 45 52 56 45 44 39 2c 0a 20 HER_RESERVED9,.
a6d0: 20 20 20 44 4d 44 49 54 48 45 52 5f 47 52 41 59 DMDITHER_GRAY
a6e0: 53 43 41 4c 45 2c 0a 20 20 20 20 44 4d 44 49 54 SCALE,. DMDIT
a6f0: 48 45 52 5f 55 53 45 52 20 3d 20 32 35 36 0a 7d HER_USER = 256.}
a700: 0a 0a 2f 2f 20 2d 2d 2d 2d 0a 2f 2f 20 44 6f 63 ..// ----.// Doc
a710: 75 6d 65 6e 74 50 72 6f 70 65 72 74 69 65 73 28 umentProperties(
a720: 29 0a 63 6f 6e 73 74 20 44 57 4f 52 44 0a 44 4d ).const DWORD.DM
a730: 5f 55 50 44 41 54 45 20 20 20 20 20 20 3d 20 31 _UPDATE = 1
a740: 2c 0a 44 4d 5f 43 4f 50 59 20 20 20 20 20 20 20 ,.DM_COPY
a750: 20 3d 20 32 2c 0a 44 4d 5f 50 52 4f 4d 50 54 20 = 2,.DM_PROMPT
a760: 20 20 20 20 20 3d 20 34 2c 0a 44 4d 5f 4d 4f 44 = 4,.DM_MOD
a770: 49 46 59 20 20 20 20 20 20 3d 20 38 2c 0a 44 4d IFY = 8,.DM
a780: 5f 49 4e 5f 42 55 46 46 45 52 20 20 20 3d 20 44 _IN_BUFFER = D
a790: 4d 5f 4d 4f 44 49 46 59 2c 0a 44 4d 5f 49 4e 5f M_MODIFY,.DM_IN_
a7a0: 50 52 4f 4d 50 54 20 20 20 3d 20 44 4d 5f 50 52 PROMPT = DM_PR
a7b0: 4f 4d 50 54 2c 0a 44 4d 5f 4f 55 54 5f 42 55 46 OMPT,.DM_OUT_BUF
a7c0: 46 45 52 20 20 3d 20 44 4d 5f 43 4f 50 59 2c 0a FER = DM_COPY,.
a7d0: 44 4d 5f 4f 55 54 5f 44 45 46 41 55 4c 54 20 3d DM_OUT_DEFAULT =
a7e0: 20 44 4d 5f 55 50 44 41 54 45 3b 0a 0a 2f 2f 20 DM_UPDATE;..//
a7f0: 2d 2d 2d 0a 0a 63 6f 6e 73 74 20 47 44 49 5f 45 ---..const GDI_E
a800: 52 52 4f 52 20 3d 20 30 78 46 46 46 46 46 46 46 RROR = 0xFFFFFFF
a810: 46 3b 0a 63 6f 6e 73 74 20 48 47 44 49 5f 45 52 F;.const HGDI_ER
a820: 52 4f 52 3d 20 63 61 73 74 28 48 41 4e 44 4c 45 ROR= cast(HANDLE
a830: 29 20 47 44 49 5f 45 52 52 4f 52 3b 0a 0a 2f 2f ) GDI_ERROR;..//
a840: 20 54 45 58 54 4d 45 54 52 49 43 2e 74 6d 50 69 TEXTMETRIC.tmPi
a850: 74 63 68 41 6e 64 46 61 6d 69 6c 79 0a 63 6f 6e tchAndFamily.con
a860: 73 74 20 42 59 54 45 0a 54 4d 50 46 5f 46 49 58 st BYTE.TMPF_FIX
a870: 45 44 5f 50 49 54 43 48 20 3d 20 31 2c 0a 54 4d ED_PITCH = 1,.TM
a880: 50 46 5f 56 45 43 54 4f 52 20 20 20 20 20 20 3d PF_VECTOR =
a890: 20 32 2c 0a 54 4d 50 46 5f 54 52 55 45 54 59 50 2,.TMPF_TRUETYP
a8a0: 45 20 20 20 20 3d 20 34 2c 0a 54 4d 50 46 5f 44 E = 4,.TMPF_D
a8b0: 45 56 49 43 45 20 20 20 20 20 20 3d 20 38 3b 0a EVICE = 8;.
a8c0: 0a 2f 2f 20 4e 45 57 54 45 58 54 4d 45 54 52 49 .// NEWTEXTMETRI
a8d0: 43 2e 6e 74 6d 46 6c 61 67 73 0a 63 6f 6e 73 74 C.ntmFlags.const
a8e0: 20 44 57 4f 52 44 0a 4e 54 4d 5f 49 54 41 4c 49 DWORD.NTM_ITALI
a8f0: 43 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 C = 0x00
a900: 30 30 30 30 30 31 2c 0a 4e 54 4d 5f 42 4f 4c 44 000001,.NTM_BOLD
a910: 20 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 = 0x0
a920: 30 30 30 30 30 32 30 2c 0a 4e 54 4d 5f 52 45 47 0000020,.NTM_REG
a930: 55 4c 41 52 20 20 20 20 20 20 20 20 3d 20 30 78 ULAR = 0x
a940: 30 30 30 30 30 30 34 30 2c 0a 4e 54 4d 5f 4e 4f 00000040,.NTM_NO
a950: 4e 4e 45 47 41 54 49 56 45 5f 41 43 20 3d 20 30 NNEGATIVE_AC = 0
a960: 78 30 30 30 31 30 30 30 30 2c 0a 4e 54 4d 5f 50 x00010000,.NTM_P
a970: 53 5f 4f 50 45 4e 54 59 50 45 20 20 20 20 3d 20 S_OPENTYPE =
a980: 30 78 30 30 30 32 30 30 30 30 2c 0a 4e 54 4d 5f 0x00020000,.NTM_
a990: 54 54 5f 4f 50 45 4e 54 59 50 45 20 20 20 20 3d TT_OPENTYPE =
a9a0: 20 30 78 30 30 30 34 30 30 30 30 2c 0a 4e 54 4d 0x00040000,.NTM
a9b0: 5f 4d 55 4c 54 49 50 4c 45 4d 41 53 54 45 52 20 _MULTIPLEMASTER
a9c0: 3d 20 30 78 30 30 30 38 30 30 30 30 2c 0a 4e 54 = 0x00080000,.NT
a9d0: 4d 5f 54 59 50 45 31 20 20 20 20 20 20 20 20 20 M_TYPE1
a9e0: 20 3d 20 30 78 30 30 31 30 30 30 30 30 2c 0a 4e = 0x00100000,.N
a9f0: 54 4d 5f 44 53 49 47 20 20 20 20 20 20 20 20 20 TM_DSIG
aa00: 20 20 3d 20 30 78 30 30 32 30 30 30 30 30 3b 0a = 0x00200000;.
aa10: 0a 2f 2f 20 2d 2d 2d 0a 63 6f 6e 73 74 20 44 57 .// ---.const DW
aa20: 4f 52 44 20 54 54 5f 50 4f 4c 59 47 4f 4e 5f 54 ORD TT_POLYGON_T
aa30: 59 50 45 20 3d 20 32 34 3b 0a 0a 2f 2f 20 54 54 YPE = 24;..// TT
aa40: 50 4f 4c 59 43 55 52 56 45 0a 65 6e 75 6d 20 3a POLYCURVE.enum :
aa50: 20 57 4f 52 44 20 7b 0a 20 20 20 20 54 54 5f 50 WORD {. TT_P
aa60: 52 49 4d 5f 4c 49 4e 45 20 20 20 20 3d 20 31 2c RIM_LINE = 1,
aa70: 0a 20 20 20 20 54 54 5f 50 52 49 4d 5f 51 53 50 . TT_PRIM_QSP
aa80: 4c 49 4e 45 20 3d 20 32 2c 0a 20 20 20 20 54 54 LINE = 2,. TT
aa90: 5f 50 52 49 4d 5f 43 53 50 4c 49 4e 45 20 3d 20 _PRIM_CSPLINE =
aaa0: 33 2c 0a 7d 0a 0a 2f 2f 20 2d 2d 2d 0a 63 6f 6e 3,.}..// ---.con
aab0: 73 74 20 46 4f 4e 54 4d 41 50 50 45 52 5f 4d 41 st FONTMAPPER_MA
aac0: 58 20 20 20 20 20 20 20 3d 20 31 30 3b 0a 63 6f X = 10;.co
aad0: 6e 73 74 20 45 4e 48 4d 45 54 41 5f 53 54 4f 43 nst ENHMETA_STOC
aae0: 4b 5f 4f 42 4a 45 43 54 20 3d 20 30 78 38 30 30 K_OBJECT = 0x800
aaf0: 30 30 30 30 30 3b 0a 63 6f 6e 73 74 20 57 47 4c 00000;.const WGL
ab00: 5f 46 4f 4e 54 5f 4c 49 4e 45 53 20 20 20 20 20 _FONT_LINES
ab10: 20 20 3d 20 30 3b 0a 63 6f 6e 73 74 20 57 47 4c = 0;.const WGL
ab20: 5f 46 4f 4e 54 5f 50 4f 4c 59 47 4f 4e 53 20 20 _FONT_POLYGONS
ab30: 20 20 3d 20 31 3b 0a 0a 2f 2f 20 2d 2d 2d 0a 2f = 1;..// ---./
ab40: 2f 20 4c 41 59 45 52 50 4c 41 4e 45 44 45 53 43 / LAYERPLANEDESC
ab50: 52 49 50 54 4f 52 2e 64 77 46 6c 61 67 73 0a 63 RIPTOR.dwFlags.c
ab60: 6f 6e 73 74 20 44 57 4f 52 44 0a 4c 50 44 5f 44 onst DWORD.LPD_D
ab70: 4f 55 42 4c 45 42 55 46 46 45 52 20 20 20 3d 20 OUBLEBUFFER =
ab80: 31 2c 0a 4c 50 44 5f 53 54 45 52 45 4f 20 20 20 1,.LPD_STEREO
ab90: 20 20 20 20 20 20 3d 20 32 2c 0a 4c 50 44 5f 53 = 2,.LPD_S
aba0: 55 50 50 4f 52 54 5f 47 44 49 20 20 20 20 3d 20 UPPORT_GDI =
abb0: 31 36 2c 0a 4c 50 44 5f 53 55 50 50 4f 52 54 5f 16,.LPD_SUPPORT_
abc0: 4f 50 45 4e 47 4c 20 3d 20 33 32 2c 0a 4c 50 44 OPENGL = 32,.LPD
abd0: 5f 53 48 41 52 45 5f 44 45 50 54 48 20 20 20 20 _SHARE_DEPTH
abe0: 3d 20 36 34 2c 0a 4c 50 44 5f 53 48 41 52 45 5f = 64,.LPD_SHARE_
abf0: 53 54 45 4e 43 49 4c 20 20 3d 20 31 32 38 2c 0a STENCIL = 128,.
ac00: 4c 50 44 5f 53 48 41 52 45 5f 41 43 43 55 4d 20 LPD_SHARE_ACCUM
ac10: 20 20 20 3d 20 32 35 36 2c 0a 4c 50 44 5f 53 57 = 256,.LPD_SW
ac20: 41 50 5f 45 58 43 48 41 4e 47 45 20 20 3d 20 35 AP_EXCHANGE = 5
ac30: 31 32 2c 0a 4c 50 44 5f 53 57 41 50 5f 43 4f 50 12,.LPD_SWAP_COP
ac40: 59 20 20 20 20 20 20 3d 20 31 30 32 34 2c 0a 4c Y = 1024,.L
ac50: 50 44 5f 54 52 41 4e 53 50 41 52 45 4e 54 20 20 PD_TRANSPARENT
ac60: 20 20 3d 20 34 30 39 36 3b 0a 0a 2f 2f 20 4c 41 = 4096;..// LA
ac70: 59 45 52 50 4c 41 4e 45 44 45 53 43 52 49 50 54 YERPLANEDESCRIPT
ac80: 4f 52 2e 69 50 69 78 65 6c 54 79 70 65 0a 65 6e OR.iPixelType.en
ac90: 75 6d 20 3a 20 42 59 54 45 20 7b 0a 20 20 20 20 um : BYTE {.
aca0: 4c 50 44 5f 54 59 50 45 5f 52 47 42 41 20 20 20 LPD_TYPE_RGBA
acb0: 20 20 20 20 3d 20 30 2c 0a 20 20 20 20 4c 50 44 = 0,. LPD
acc0: 5f 54 59 50 45 5f 43 4f 4c 4f 52 49 4e 44 45 58 _TYPE_COLORINDEX
acd0: 20 3d 20 31 0a 7d 0a 0a 2f 2f 20 2d 2d 2d 0a 0a = 1.}..// ---..
ace0: 2f 2f 20 77 67 6c 53 77 61 70 4c 61 79 65 72 42 // wglSwapLayerB
acf0: 75 66 66 65 72 73 28 29 0a 63 6f 6e 73 74 20 55 uffers().const U
ad00: 49 4e 54 0a 57 47 4c 5f 53 57 41 50 5f 4d 41 49 INT.WGL_SWAP_MAI
ad10: 4e 5f 50 4c 41 4e 45 20 3d 20 31 2c 0a 57 47 4c N_PLANE = 1,.WGL
ad20: 5f 53 57 41 50 5f 4f 56 45 52 4c 41 59 31 20 20 _SWAP_OVERLAY1
ad30: 20 3d 20 32 2c 0a 57 47 4c 5f 53 57 41 50 5f 4f = 2,.WGL_SWAP_O
ad40: 56 45 52 4c 41 59 32 20 20 20 3d 20 34 2c 0a 57 VERLAY2 = 4,.W
ad50: 47 4c 5f 53 57 41 50 5f 4f 56 45 52 4c 41 59 33 GL_SWAP_OVERLAY3
ad60: 20 20 20 3d 20 38 2c 0a 57 47 4c 5f 53 57 41 50 = 8,.WGL_SWAP
ad70: 5f 4f 56 45 52 4c 41 59 34 20 20 20 3d 20 31 36 _OVERLAY4 = 16
ad80: 2c 0a 57 47 4c 5f 53 57 41 50 5f 4f 56 45 52 4c ,.WGL_SWAP_OVERL
ad90: 41 59 35 20 20 20 3d 20 33 32 2c 0a 57 47 4c 5f AY5 = 32,.WGL_
ada0: 53 57 41 50 5f 4f 56 45 52 4c 41 59 36 20 20 20 SWAP_OVERLAY6
adb0: 3d 20 36 34 2c 0a 57 47 4c 5f 53 57 41 50 5f 4f = 64,.WGL_SWAP_O
adc0: 56 45 52 4c 41 59 37 20 20 20 3d 20 31 32 38 2c VERLAY7 = 128,
add0: 0a 57 47 4c 5f 53 57 41 50 5f 4f 56 45 52 4c 41 .WGL_SWAP_OVERLA
ade0: 59 38 20 20 20 3d 20 32 35 36 2c 0a 57 47 4c 5f Y8 = 256,.WGL_
adf0: 53 57 41 50 5f 4f 56 45 52 4c 41 59 39 20 20 20 SWAP_OVERLAY9
ae00: 3d 20 35 31 32 2c 0a 57 47 4c 5f 53 57 41 50 5f = 512,.WGL_SWAP_
ae10: 4f 56 45 52 4c 41 59 31 30 20 20 3d 20 31 30 32 OVERLAY10 = 102
ae20: 34 2c 0a 57 47 4c 5f 53 57 41 50 5f 4f 56 45 52 4,.WGL_SWAP_OVER
ae30: 4c 41 59 31 31 20 20 3d 20 32 30 34 38 2c 0a 57 LAY11 = 2048,.W
ae40: 47 4c 5f 53 57 41 50 5f 4f 56 45 52 4c 41 59 31 GL_SWAP_OVERLAY1
ae50: 32 20 20 3d 20 34 30 39 36 2c 0a 57 47 4c 5f 53 2 = 4096,.WGL_S
ae60: 57 41 50 5f 4f 56 45 52 4c 41 59 31 33 20 20 3d WAP_OVERLAY13 =
ae70: 20 38 31 39 32 2c 0a 57 47 4c 5f 53 57 41 50 5f 8192,.WGL_SWAP_
ae80: 4f 56 45 52 4c 41 59 31 34 20 20 3d 20 31 36 33 OVERLAY14 = 163
ae90: 38 34 2c 0a 57 47 4c 5f 53 57 41 50 5f 4f 56 45 84,.WGL_SWAP_OVE
aea0: 52 4c 41 59 31 35 20 20 3d 20 33 32 37 36 38 2c RLAY15 = 32768,
aeb0: 0a 57 47 4c 5f 53 57 41 50 5f 55 4e 44 45 52 4c .WGL_SWAP_UNDERL
aec0: 41 59 31 20 20 3d 20 36 35 35 33 36 2c 0a 57 47 AY1 = 65536,.WG
aed0: 4c 5f 53 57 41 50 5f 55 4e 44 45 52 4c 41 59 32 L_SWAP_UNDERLAY2
aee0: 20 20 3d 20 30 78 32 30 30 30 30 2c 0a 57 47 4c = 0x20000,.WGL
aef0: 5f 53 57 41 50 5f 55 4e 44 45 52 4c 41 59 33 20 _SWAP_UNDERLAY3
af00: 20 3d 20 30 78 34 30 30 30 30 2c 0a 57 47 4c 5f = 0x40000,.WGL_
af10: 53 57 41 50 5f 55 4e 44 45 52 4c 41 59 34 20 20 SWAP_UNDERLAY4
af20: 3d 20 30 78 38 30 30 30 30 2c 0a 57 47 4c 5f 53 = 0x80000,.WGL_S
af30: 57 41 50 5f 55 4e 44 45 52 4c 41 59 35 20 20 3d WAP_UNDERLAY5 =
af40: 20 30 78 31 30 30 30 30 30 2c 0a 57 47 4c 5f 53 0x100000,.WGL_S
af50: 57 41 50 5f 55 4e 44 45 52 4c 41 59 36 20 20 3d WAP_UNDERLAY6 =
af60: 20 30 78 32 30 30 30 30 30 2c 0a 57 47 4c 5f 53 0x200000,.WGL_S
af70: 57 41 50 5f 55 4e 44 45 52 4c 41 59 37 20 20 3d WAP_UNDERLAY7 =
af80: 20 30 78 34 30 30 30 30 30 2c 0a 57 47 4c 5f 53 0x400000,.WGL_S
af90: 57 41 50 5f 55 4e 44 45 52 4c 41 59 38 20 20 3d WAP_UNDERLAY8 =
afa0: 20 30 78 38 30 30 30 30 30 2c 0a 57 47 4c 5f 53 0x800000,.WGL_S
afb0: 57 41 50 5f 55 4e 44 45 52 4c 41 59 39 20 20 3d WAP_UNDERLAY9 =
afc0: 20 30 78 31 30 30 30 30 30 30 2c 0a 57 47 4c 5f 0x1000000,.WGL_
afd0: 53 57 41 50 5f 55 4e 44 45 52 4c 41 59 31 30 20 SWAP_UNDERLAY10
afe0: 3d 20 30 78 32 30 30 30 30 30 30 2c 0a 57 47 4c = 0x2000000,.WGL
aff0: 5f 53 57 41 50 5f 55 4e 44 45 52 4c 41 59 31 31 _SWAP_UNDERLAY11
b000: 20 3d 20 30 78 34 30 30 30 30 30 30 2c 0a 57 47 = 0x4000000,.WG
b010: 4c 5f 53 57 41 50 5f 55 4e 44 45 52 4c 41 59 31 L_SWAP_UNDERLAY1
b020: 32 20 3d 20 30 78 38 30 30 30 30 30 30 2c 0a 57 2 = 0x8000000,.W
b030: 47 4c 5f 53 57 41 50 5f 55 4e 44 45 52 4c 41 59 GL_SWAP_UNDERLAY
b040: 31 33 20 3d 20 30 78 31 30 30 30 30 30 30 30 2c 13 = 0x10000000,
b050: 0a 57 47 4c 5f 53 57 41 50 5f 55 4e 44 45 52 4c .WGL_SWAP_UNDERL
b060: 41 59 31 34 20 3d 20 30 78 32 30 30 30 30 30 30 AY14 = 0x2000000
b070: 30 2c 0a 57 47 4c 5f 53 57 41 50 5f 55 4e 44 45 0,.WGL_SWAP_UNDE
b080: 52 4c 41 59 31 35 20 3d 20 30 78 34 30 30 30 30 RLAY15 = 0x40000
b090: 30 30 30 3b 0a 0a 63 6f 6e 73 74 20 41 43 5f 53 000;..const AC_S
b0a0: 52 43 5f 4f 56 45 52 20 20 3d 20 30 78 30 30 3b RC_OVER = 0x00;
b0b0: 0a 63 6f 6e 73 74 20 41 43 5f 53 52 43 5f 41 4c .const AC_SRC_AL
b0c0: 50 48 41 20 3d 20 30 78 30 31 3b 0a 0a 2f 2f 20 PHA = 0x01;..//
b0d0: 3f 3f 3f 0a 63 6f 6e 73 74 20 41 43 5f 53 52 43 ???.const AC_SRC
b0e0: 5f 4e 4f 5f 50 52 45 4d 55 4c 54 5f 41 4c 50 48 _NO_PREMULT_ALPH
b0f0: 41 20 3d 20 30 78 30 31 3b 0a 63 6f 6e 73 74 20 A = 0x01;.const
b100: 41 43 5f 53 52 43 5f 4e 4f 5f 41 4c 50 48 41 20 AC_SRC_NO_ALPHA
b110: 20 20 20 20 20 20 20 20 3d 20 30 78 30 32 3b 0a = 0x02;.
b120: 63 6f 6e 73 74 20 41 43 5f 44 53 54 5f 4e 4f 5f const AC_DST_NO_
b130: 50 52 45 4d 55 4c 54 5f 41 4c 50 48 41 20 3d 20 PREMULT_ALPHA =
b140: 30 78 31 30 3b 0a 63 6f 6e 73 74 20 41 43 5f 44 0x10;.const AC_D
b150: 53 54 5f 4e 4f 5f 41 4c 50 48 41 20 20 20 20 20 ST_NO_ALPHA
b160: 20 20 20 20 3d 20 30 78 32 30 3b 0a 0a 63 6f 6e = 0x20;..con
b170: 73 74 20 4c 41 59 4f 55 54 5f 52 54 4c 20 3d 20 st LAYOUT_RTL =
b180: 31 3b 0a 63 6f 6e 73 74 20 4c 41 59 4f 55 54 5f 1;.const LAYOUT_
b190: 42 54 54 20 3d 20 32 3b 0a 63 6f 6e 73 74 20 4c BTT = 2;.const L
b1a0: 41 59 4f 55 54 5f 56 42 48 20 3d 20 34 3b 0a 63 AYOUT_VBH = 4;.c
b1b0: 6f 6e 73 74 20 4c 41 59 4f 55 54 5f 42 49 54 4d onst LAYOUT_BITM
b1c0: 41 50 4f 52 49 45 4e 54 41 54 49 4f 4e 50 52 45 APORIENTATIONPRE
b1d0: 53 45 52 56 45 44 20 3d 20 38 3b 0a 0a 73 74 61 SERVED = 8;..sta
b1e0: 74 69 63 0a 0a 69 66 20 28 57 49 4e 56 45 52 20 tic..if (WINVER
b1f0: 3e 20 30 78 30 34 30 30 29 0a 7b 0a 20 20 20 20 > 0x0400).{.
b200: 63 6f 6e 73 74 20 43 53 5f 45 4e 41 42 4c 45 20 const CS_ENABLE
b210: 20 3d 20 30 78 30 30 30 30 30 30 30 31 3b 0a 20 = 0x00000001;.
b220: 20 20 20 63 6f 6e 73 74 20 43 53 5f 44 49 53 41 const CS_DISA
b230: 42 4c 45 20 3d 20 30 78 30 30 30 30 30 30 30 32 BLE = 0x00000002
b240: 3b 0a 20 20 20 20 63 6f 6e 73 74 20 43 53 5f 44 ;. const CS_D
b250: 45 4c 45 54 45 5f 54 52 41 4e 53 46 4f 52 4d 20 ELETE_TRANSFORM
b260: 3d 20 30 78 30 30 30 30 30 30 30 33 3b 0a 7d 0a = 0x00000003;.}.
b270: 0a 73 74 61 74 69 63 0a 0a 69 66 20 28 57 49 4e .static..if (WIN
b280: 56 45 52 20 3e 20 30 78 30 35 30 30 29 0a 7b 0a VER > 0x0500).{.
b290: 20 20 20 20 63 6f 6e 73 74 20 47 52 41 44 49 45 const GRADIE
b2a0: 4e 54 5f 46 49 4c 4c 5f 52 45 43 54 5f 48 20 20 NT_FILL_RECT_H
b2b0: 20 20 20 20 3d 30 78 30 30 3b 0a 20 20 20 20 63 =0x00;. c
b2c0: 6f 6e 73 74 20 47 52 41 44 49 45 4e 54 5f 46 49 onst GRADIENT_FI
b2d0: 4c 4c 5f 52 45 43 54 5f 56 20 20 20 20 20 20 3d LL_RECT_V =
b2e0: 30 78 30 31 3b 0a 20 20 20 20 63 6f 6e 73 74 20 0x01;. const
b2f0: 47 52 41 44 49 45 4e 54 5f 46 49 4c 4c 5f 54 52 GRADIENT_FILL_TR
b300: 49 41 4e 47 4c 45 20 20 20 20 3d 30 78 30 32 3b IANGLE =0x02;
b310: 0a 20 20 20 20 63 6f 6e 73 74 20 47 52 41 44 49 . const GRADI
b320: 45 4e 54 5f 46 49 4c 4c 5f 4f 50 5f 46 4c 41 47 ENT_FILL_OP_FLAG
b330: 20 20 20 20 20 3d 30 78 66 66 3b 0a 20 20 20 20 =0xff;.
b340: 63 6f 6e 73 74 20 43 4f 4c 4f 52 4d 41 54 43 48 const COLORMATCH
b350: 54 4f 54 41 52 47 45 54 5f 45 4d 42 45 44 45 44 TOTARGET_EMBEDED
b360: 3d 30 78 30 30 30 30 30 30 30 31 3b 0a 20 20 20 =0x00000001;.
b370: 20 63 6f 6e 73 74 20 43 52 45 41 54 45 43 4f 4c const CREATECOL
b380: 4f 52 53 50 41 43 45 5f 45 4d 42 45 44 45 44 20 ORSPACE_EMBEDED
b390: 20 3d 30 78 30 30 30 30 30 30 30 31 3b 0a 20 20 =0x00000001;.
b3a0: 20 20 63 6f 6e 73 74 20 53 45 54 49 43 4d 50 52 const SETICMPR
b3b0: 4f 46 49 4c 45 5f 45 4d 42 45 44 45 44 20 20 20 OFILE_EMBEDED
b3c0: 20 20 3d 30 78 30 30 30 30 30 30 30 31 3b 0a 7d =0x00000001;.}
b3d0: 0a 0a 2f 2f 20 44 49 53 50 4c 41 59 5f 44 45 56 ..// DISPLAY_DEV
b3e0: 49 43 45 2e 53 74 61 74 65 46 6c 61 67 73 0a 63 ICE.StateFlags.c
b3f0: 6f 6e 73 74 20 44 57 4f 52 44 0a 44 49 53 50 4c onst DWORD.DISPL
b400: 41 59 5f 44 45 56 49 43 45 5f 41 54 54 41 43 48 AY_DEVICE_ATTACH
b410: 45 44 5f 54 4f 5f 44 45 53 4b 54 4f 50 20 3d 20 ED_TO_DESKTOP =
b420: 30 78 30 30 30 30 30 30 30 31 2c 0a 44 49 53 50 0x00000001,.DISP
b430: 4c 41 59 5f 44 45 56 49 43 45 5f 4d 55 4c 54 49 LAY_DEVICE_MULTI
b440: 5f 44 52 49 56 45 52 20 20 20 20 20 20 20 20 3d _DRIVER =
b450: 20 30 78 30 30 30 30 30 30 30 32 2c 0a 44 49 53 0x00000002,.DIS
b460: 50 4c 41 59 5f 44 45 56 49 43 45 5f 50 52 49 4d PLAY_DEVICE_PRIM
b470: 41 52 59 5f 44 45 56 49 43 45 20 20 20 20 20 20 ARY_DEVICE
b480: 3d 20 30 78 30 30 30 30 30 30 30 34 2c 0a 44 49 = 0x00000004,.DI
b490: 53 50 4c 41 59 5f 44 45 56 49 43 45 5f 4d 49 52 SPLAY_DEVICE_MIR
b4a0: 52 4f 52 49 4e 47 5f 44 52 49 56 45 52 20 20 20 RORING_DRIVER
b4b0: 20 3d 20 30 78 30 30 30 30 30 30 30 38 2c 0a 44 = 0x00000008,.D
b4c0: 49 53 50 4c 41 59 5f 44 45 56 49 43 45 5f 56 47 ISPLAY_DEVICE_VG
b4d0: 41 5f 43 4f 4d 50 41 54 49 42 4c 45 20 20 20 20 A_COMPATIBLE
b4e0: 20 20 3d 20 30 78 30 30 30 30 30 30 31 30 2c 0a = 0x00000010,.
b4f0: 44 49 53 50 4c 41 59 5f 44 45 56 49 43 45 5f 52 DISPLAY_DEVICE_R
b500: 45 4d 4f 56 41 42 4c 45 20 20 20 20 20 20 20 20 EMOVABLE
b510: 20 20 20 3d 20 30 78 30 30 30 30 30 30 32 30 2c = 0x00000020,
b520: 0a 44 49 53 50 4c 41 59 5f 44 45 56 49 43 45 5f .DISPLAY_DEVICE_
b530: 44 49 53 43 4f 4e 4e 45 43 54 20 20 20 20 20 20 DISCONNECT
b540: 20 20 20 20 3d 20 30 78 30 32 30 30 30 30 30 30 = 0x02000000
b550: 2c 0a 44 49 53 50 4c 41 59 5f 44 45 56 49 43 45 ,.DISPLAY_DEVICE
b560: 5f 52 45 4d 4f 54 45 20 20 20 20 20 20 20 20 20 _REMOTE
b570: 20 20 20 20 20 3d 20 30 78 30 34 30 30 30 30 30 = 0x0400000
b580: 30 2c 0a 44 49 53 50 4c 41 59 5f 44 45 56 49 43 0,.DISPLAY_DEVIC
b590: 45 5f 4d 4f 44 45 53 50 52 55 4e 45 44 20 20 20 E_MODESPRUNED
b5a0: 20 20 20 20 20 20 3d 20 30 78 30 38 30 30 30 30 = 0x080000
b5b0: 30 30 3b 0a 0a 2f 2a 20 43 68 69 6c 64 20 64 65 00;../* Child de
b5c0: 76 69 63 65 20 73 74 61 74 65 20 2a 2f 0a 63 6f vice state */.co
b5d0: 6e 73 74 20 44 57 4f 52 44 0a 44 49 53 50 4c 41 nst DWORD.DISPLA
b5e0: 59 5f 44 45 56 49 43 45 5f 41 43 54 49 56 45 20 Y_DEVICE_ACTIVE
b5f0: 20 20 3d 20 30 78 30 30 30 30 30 30 30 31 2c 0a = 0x00000001,.
b600: 44 49 53 50 4c 41 59 5f 44 45 56 49 43 45 5f 41 DISPLAY_DEVICE_A
b610: 54 54 41 43 48 45 44 20 3d 20 30 78 30 30 30 30 TTACHED = 0x0000
b620: 30 30 30 32 3b 0a 0a 73 74 61 74 69 63 0a 0a 69 0002;..static..i
b630: 66 20 28 5f 57 49 4e 33 32 5f 57 49 4e 4e 54 20 f (_WIN32_WINNT
b640: 3e 3d 20 30 78 30 35 30 30 29 0a 7b 0a 20 20 20 >= 0x0500).{.
b650: 20 63 6f 6e 73 74 20 47 47 49 5f 4d 41 52 4b 5f const GGI_MARK_
b660: 4e 4f 4e 45 58 49 53 54 49 4e 47 5f 47 4c 59 50 NONEXISTING_GLYP
b670: 48 53 20 3d 20 31 3b 0a 7d 0a 0a 2f 2f 20 2d 2d HS = 1;.}..// --
b680: 2d 2d 2d 2d 2d 2d 2d 2d 0a 2f 2f 20 20 20 53 54 --------.// ST
b690: 52 55 43 54 53 0a 2f 2f 20 2d 2d 2d 2d 2d 2d 2d RUCTS.// -------
b6a0: 2d 2d 2d 0a 0a 73 74 72 75 63 74 20 41 42 43 0a ---..struct ABC.
b6b0: 7b 0a 20 20 20 20 69 6e 74 20 61 62 63 41 3b 0a {. int abcA;.
b6c0: 20 20 20 20 55 49 4e 54 20 61 62 63 42 3b 0a 20 UINT abcB;.
b6d0: 20 20 20 69 6e 74 20 61 62 63 43 3b 0a 7d 0a 61 int abcC;.}.a
b6e0: 6c 69 61 73 20 41 42 43 2a 50 41 42 43 2c 20 4e lias ABC*PABC, N
b6f0: 50 41 42 43 2c 20 4c 50 41 42 43 3b 0a 0a 73 74 PABC, LPABC;..st
b700: 72 75 63 74 20 41 42 43 46 4c 4f 41 54 0a 7b 0a ruct ABCFLOAT.{.
b710: 20 20 20 20 46 4c 4f 41 54 20 61 62 63 66 41 3b FLOAT abcfA;
b720: 0a 20 20 20 20 46 4c 4f 41 54 20 61 62 63 66 42 . FLOAT abcfB
b730: 3b 0a 20 20 20 20 46 4c 4f 41 54 20 61 62 63 66 ;. FLOAT abcf
b740: 43 3b 0a 7d 0a 61 6c 69 61 73 20 41 42 43 46 4c C;.}.alias ABCFL
b750: 4f 41 54 2a 50 41 42 43 46 4c 4f 41 54 2c 20 4e OAT*PABCFLOAT, N
b760: 50 41 42 43 46 4c 4f 41 54 2c 20 4c 50 41 42 43 PABCFLOAT, LPABC
b770: 46 4c 4f 41 54 3b 0a 0a 73 74 72 75 63 74 20 42 FLOAT;..struct B
b780: 49 54 4d 41 50 0a 7b 0a 20 20 20 20 4c 4f 4e 47 ITMAP.{. LONG
b790: 20 62 6d 54 79 70 65 3b 0a 20 20 20 20 4c 4f 4e bmType;. LON
b7a0: 47 20 62 6d 57 69 64 74 68 3b 0a 20 20 20 20 4c G bmWidth;. L
b7b0: 4f 4e 47 20 62 6d 48 65 69 67 68 74 3b 0a 20 20 ONG bmHeight;.
b7c0: 20 20 4c 4f 4e 47 20 62 6d 57 69 64 74 68 42 79 LONG bmWidthBy
b7d0: 74 65 73 3b 0a 20 20 20 20 57 4f 52 44 20 62 6d tes;. WORD bm
b7e0: 50 6c 61 6e 65 73 3b 0a 20 20 20 20 57 4f 52 44 Planes;. WORD
b7f0: 20 62 6d 42 69 74 73 50 69 78 65 6c 3b 0a 20 20 bmBitsPixel;.
b800: 20 20 4c 50 56 4f 49 44 20 62 6d 42 69 74 73 3b LPVOID bmBits;
b810: 0a 7d 0a 61 6c 69 61 73 20 42 49 54 4d 41 50 2a .}.alias BITMAP*
b820: 50 42 49 54 4d 41 50 2c 20 4e 50 42 49 54 4d 41 PBITMAP, NPBITMA
b830: 50 2c 20 4c 50 42 49 54 4d 41 50 3b 0a 0a 73 74 P, LPBITMAP;..st
b840: 72 75 63 74 20 42 49 54 4d 41 50 43 4f 52 45 48 ruct BITMAPCOREH
b850: 45 41 44 45 52 0a 7b 0a 20 20 20 20 44 57 4f 52 EADER.{. DWOR
b860: 44 20 62 63 53 69 7a 65 3b 0a 20 20 20 20 57 4f D bcSize;. WO
b870: 52 44 20 62 63 57 69 64 74 68 3b 0a 20 20 20 20 RD bcWidth;.
b880: 57 4f 52 44 20 62 63 48 65 69 67 68 74 3b 0a 20 WORD bcHeight;.
b890: 20 20 20 57 4f 52 44 20 62 63 50 6c 61 6e 65 73 WORD bcPlanes
b8a0: 3b 0a 20 20 20 20 57 4f 52 44 20 62 63 42 69 74 ;. WORD bcBit
b8b0: 43 6f 75 6e 74 3b 0a 7d 0a 61 6c 69 61 73 20 42 Count;.}.alias B
b8c0: 49 54 4d 41 50 43 4f 52 45 48 45 41 44 45 52 2a ITMAPCOREHEADER*
b8d0: 50 42 49 54 4d 41 50 43 4f 52 45 48 45 41 44 45 PBITMAPCOREHEADE
b8e0: 52 2c 20 4c 50 42 49 54 4d 41 50 43 4f 52 45 48 R, LPBITMAPCOREH
b8f0: 45 41 44 45 52 3b 0a 0a 61 6c 69 67 6e 20 28 31 EADER;..align (1
b900: 29 20 3a 0a 73 74 72 75 63 74 20 52 47 42 54 52 ) :.struct RGBTR
b910: 49 50 4c 45 0a 7b 0a 20 20 20 20 42 59 54 45 20 IPLE.{. BYTE
b920: 72 67 62 74 42 6c 75 65 3b 0a 20 20 20 20 42 59 rgbtBlue;. BY
b930: 54 45 20 72 67 62 74 47 72 65 65 6e 3b 0a 20 20 TE rgbtGreen;.
b940: 20 20 42 59 54 45 20 72 67 62 74 52 65 64 3b 0a BYTE rgbtRed;.
b950: 7d 0a 61 6c 69 61 73 20 52 47 42 54 52 49 50 4c }.alias RGBTRIPL
b960: 45 2a 4c 50 52 47 42 54 52 49 50 4c 45 3b 0a 0a E*LPRGBTRIPLE;..
b970: 61 6c 69 67 6e 20 28 32 29 20 3a 0a 73 74 72 75 align (2) :.stru
b980: 63 74 20 42 49 54 4d 41 50 46 49 4c 45 48 45 41 ct BITMAPFILEHEA
b990: 44 45 52 0a 7b 0a 20 20 20 20 57 4f 52 44 20 62 DER.{. WORD b
b9a0: 66 54 79 70 65 3b 0a 20 20 20 20 44 57 4f 52 44 fType;. DWORD
b9b0: 20 62 66 53 69 7a 65 3b 0a 20 20 20 20 57 4f 52 bfSize;. WOR
b9c0: 44 20 62 66 52 65 73 65 72 76 65 64 31 3b 0a 20 D bfReserved1;.
b9d0: 20 20 20 57 4f 52 44 20 62 66 52 65 73 65 72 76 WORD bfReserv
b9e0: 65 64 32 3b 0a 20 20 20 20 44 57 4f 52 44 20 62 ed2;. DWORD b
b9f0: 66 4f 66 66 42 69 74 73 3b 0a 7d 0a 61 6c 69 61 fOffBits;.}.alia
ba00: 73 20 42 49 54 4d 41 50 46 49 4c 45 48 45 41 44 s BITMAPFILEHEAD
ba10: 45 52 2a 4c 50 42 49 54 4d 41 50 46 49 4c 45 48 ER*LPBITMAPFILEH
ba20: 45 41 44 45 52 2c 20 50 42 49 54 4d 41 50 46 49 EADER, PBITMAPFI
ba30: 4c 45 48 45 41 44 45 52 3b 0a 0a 61 6c 69 67 6e LEHEADER;..align
ba40: 20 3a 0a 0a 73 74 72 75 63 74 20 42 49 54 4d 41 :..struct BITMA
ba50: 50 43 4f 52 45 49 4e 46 4f 0a 7b 0a 20 20 20 20 PCOREINFO.{.
ba60: 42 49 54 4d 41 50 43 4f 52 45 48 45 41 44 45 52 BITMAPCOREHEADER
ba70: 20 62 6d 63 69 48 65 61 64 65 72 3b 0a 20 20 20 bmciHeader;.
ba80: 20 52 47 42 54 52 49 50 4c 45 5b 31 5d 20 20 20 RGBTRIPLE[1]
ba90: 20 20 62 6d 63 69 43 6f 6c 6f 72 73 3b 0a 7d 0a bmciColors;.}.
baa0: 61 6c 69 61 73 20 42 49 54 4d 41 50 43 4f 52 45 alias BITMAPCORE
bab0: 49 4e 46 4f 2a 4c 50 42 49 54 4d 41 50 43 4f 52 INFO*LPBITMAPCOR
bac0: 45 49 4e 46 4f 2c 20 50 42 49 54 4d 41 50 43 4f EINFO, PBITMAPCO
bad0: 52 45 49 4e 46 4f 3b 0a 0a 73 74 72 75 63 74 20 REINFO;..struct
bae0: 42 49 54 4d 41 50 49 4e 46 4f 48 45 41 44 45 52 BITMAPINFOHEADER
baf0: 0a 7b 0a 20 20 20 20 44 57 4f 52 44 20 62 69 53 .{. DWORD biS
bb00: 69 7a 65 3b 0a 20 20 20 20 4c 4f 4e 47 20 62 69 ize;. LONG bi
bb10: 57 69 64 74 68 3b 0a 20 20 20 20 4c 4f 4e 47 20 Width;. LONG
bb20: 62 69 48 65 69 67 68 74 3b 0a 20 20 20 20 57 4f biHeight;. WO
bb30: 52 44 20 62 69 50 6c 61 6e 65 73 3b 0a 20 20 20 RD biPlanes;.
bb40: 20 57 4f 52 44 20 62 69 42 69 74 43 6f 75 6e 74 WORD biBitCount
bb50: 3b 0a 20 20 20 20 44 57 4f 52 44 20 62 69 43 6f ;. DWORD biCo
bb60: 6d 70 72 65 73 73 69 6f 6e 3b 0a 20 20 20 20 44 mpression;. D
bb70: 57 4f 52 44 20 62 69 53 69 7a 65 49 6d 61 67 65 WORD biSizeImage
bb80: 3b 0a 20 20 20 20 4c 4f 4e 47 20 62 69 58 50 65 ;. LONG biXPe
bb90: 6c 73 50 65 72 4d 65 74 65 72 3b 0a 20 20 20 20 lsPerMeter;.
bba0: 4c 4f 4e 47 20 62 69 59 50 65 6c 73 50 65 72 4d LONG biYPelsPerM
bbb0: 65 74 65 72 3b 0a 20 20 20 20 44 57 4f 52 44 20 eter;. DWORD
bbc0: 62 69 43 6c 72 55 73 65 64 3b 0a 20 20 20 20 44 biClrUsed;. D
bbd0: 57 4f 52 44 20 62 69 43 6c 72 49 6d 70 6f 72 74 WORD biClrImport
bbe0: 61 6e 74 3b 0a 7d 0a 0a 61 6c 69 61 73 20 42 49 ant;.}..alias BI
bbf0: 54 4d 41 50 49 4e 46 4f 48 45 41 44 45 52 2a 4c TMAPINFOHEADER*L
bc00: 50 42 49 54 4d 41 50 49 4e 46 4f 48 45 41 44 45 PBITMAPINFOHEADE
bc10: 52 2c 20 50 42 49 54 4d 41 50 49 4e 46 4f 48 45 R, PBITMAPINFOHE
bc20: 41 44 45 52 3b 0a 0a 73 74 72 75 63 74 20 52 47 ADER;..struct RG
bc30: 42 51 55 41 44 0a 7b 0a 20 20 20 20 42 59 54 45 BQUAD.{. BYTE
bc40: 20 72 67 62 42 6c 75 65 3b 0a 20 20 20 20 42 59 rgbBlue;. BY
bc50: 54 45 20 72 67 62 47 72 65 65 6e 3b 0a 20 20 20 TE rgbGreen;.
bc60: 20 42 59 54 45 20 72 67 62 52 65 64 3b 0a 20 20 BYTE rgbRed;.
bc70: 20 20 42 59 54 45 20 72 67 62 52 65 73 65 72 76 BYTE rgbReserv
bc80: 65 64 3b 0a 7d 3b 0a 61 6c 69 61 73 20 52 47 42 ed;.};.alias RGB
bc90: 51 55 41 44 2a 4c 50 52 47 42 51 55 41 44 3b 0a QUAD*LPRGBQUAD;.
bca0: 0a 73 74 72 75 63 74 20 42 49 54 4d 41 50 49 4e .struct BITMAPIN
bcb0: 46 4f 0a 7b 0a 20 20 20 20 42 49 54 4d 41 50 49 FO.{. BITMAPI
bcc0: 4e 46 4f 48 45 41 44 45 52 20 62 6d 69 48 65 61 NFOHEADER bmiHea
bcd0: 64 65 72 3b 0a 20 20 20 20 52 47 42 51 55 41 44 der;. RGBQUAD
bce0: 5b 31 5d 20 20 20 20 20 20 20 62 6d 69 43 6f 6c [1] bmiCol
bcf0: 6f 72 73 3b 0a 7d 3b 0a 61 6c 69 61 73 20 42 49 ors;.};.alias BI
bd00: 54 4d 41 50 49 4e 46 4f 2a 50 42 49 54 4d 41 50 TMAPINFO*PBITMAP
bd10: 49 4e 46 4f 2c 20 4c 50 42 49 54 4d 41 50 49 4e INFO, LPBITMAPIN
bd20: 46 4f 3b 0a 0a 61 6c 69 61 73 20 69 6e 74 20 46 FO;..alias int F
bd30: 58 50 54 31 36 44 4f 54 31 36 3b 0a 61 6c 69 61 XPT16DOT16;.alia
bd40: 73 20 69 6e 74 2a 4c 50 46 58 50 54 31 36 44 4f s int*LPFXPT16DO
bd50: 54 31 36 3b 0a 61 6c 69 61 73 20 69 6e 74 20 46 T16;.alias int F
bd60: 58 50 54 32 44 4f 54 33 30 3b 0a 61 6c 69 61 73 XPT2DOT30;.alias
bd70: 20 69 6e 74 2a 4c 50 46 58 50 54 32 44 4f 54 33 int*LPFXPT2DOT3
bd80: 30 3b 0a 0a 73 74 72 75 63 74 20 43 49 45 58 59 0;..struct CIEXY
bd90: 5a 0a 7b 0a 20 20 20 20 46 58 50 54 32 44 4f 54 Z.{. FXPT2DOT
bda0: 33 30 20 63 69 65 78 79 7a 58 3b 0a 20 20 20 20 30 ciexyzX;.
bdb0: 46 58 50 54 32 44 4f 54 33 30 20 63 69 65 78 79 FXPT2DOT30 ciexy
bdc0: 7a 59 3b 0a 20 20 20 20 46 58 50 54 32 44 4f 54 zY;. FXPT2DOT
bdd0: 33 30 20 63 69 65 78 79 7a 5a 3b 0a 7d 0a 61 6c 30 ciexyzZ;.}.al
bde0: 69 61 73 20 43 49 45 58 59 5a 2a 4c 50 43 49 45 ias CIEXYZ*LPCIE
bdf0: 58 59 5a 3b 0a 0a 73 74 72 75 63 74 20 43 49 45 XYZ;..struct CIE
be00: 58 59 5a 54 52 49 50 4c 45 0a 7b 0a 20 20 20 20 XYZTRIPLE.{.
be10: 43 49 45 58 59 5a 20 63 69 65 78 79 7a 52 65 64 CIEXYZ ciexyzRed
be20: 3b 0a 20 20 20 20 43 49 45 58 59 5a 20 63 69 65 ;. CIEXYZ cie
be30: 78 79 7a 47 72 65 65 6e 3b 0a 20 20 20 20 43 49 xyzGreen;. CI
be40: 45 58 59 5a 20 63 69 65 78 79 7a 42 6c 75 65 3b EXYZ ciexyzBlue;
be50: 0a 7d 0a 61 6c 69 61 73 20 43 49 45 58 59 5a 54 .}.alias CIEXYZT
be60: 52 49 50 4c 45 2a 4c 50 43 49 45 58 59 5a 54 52 RIPLE*LPCIEXYZTR
be70: 49 50 4c 45 3b 0a 0a 73 74 72 75 63 74 20 42 49 IPLE;..struct BI
be80: 54 4d 41 50 56 34 48 45 41 44 45 52 0a 7b 0a 20 TMAPV4HEADER.{.
be90: 20 20 20 44 57 4f 52 44 20 62 56 34 53 69 7a 65 DWORD bV4Size
bea0: 3b 0a 20 20 20 20 4c 4f 4e 47 20 62 56 34 57 69 ;. LONG bV4Wi
beb0: 64 74 68 3b 0a 20 20 20 20 4c 4f 4e 47 20 62 56 dth;. LONG bV
bec0: 34 48 65 69 67 68 74 3b 0a 20 20 20 20 57 4f 52 4Height;. WOR
bed0: 44 20 62 56 34 50 6c 61 6e 65 73 3b 0a 20 20 20 D bV4Planes;.
bee0: 20 57 4f 52 44 20 62 56 34 42 69 74 43 6f 75 6e WORD bV4BitCoun
bef0: 74 3b 0a 20 20 20 20 44 57 4f 52 44 20 62 56 34 t;. DWORD bV4
bf00: 56 34 43 6f 6d 70 72 65 73 73 69 6f 6e 3b 0a 20 V4Compression;.
bf10: 20 20 20 44 57 4f 52 44 20 62 56 34 53 69 7a 65 DWORD bV4Size
bf20: 49 6d 61 67 65 3b 0a 20 20 20 20 4c 4f 4e 47 20 Image;. LONG
bf30: 62 56 34 58 50 65 6c 73 50 65 72 4d 65 74 65 72 bV4XPelsPerMeter
bf40: 3b 0a 20 20 20 20 4c 4f 4e 47 20 62 56 34 59 50 ;. LONG bV4YP
bf50: 65 6c 73 50 65 72 4d 65 74 65 72 3b 0a 20 20 20 elsPerMeter;.
bf60: 20 44 57 4f 52 44 20 62 56 34 43 6c 72 55 73 65 DWORD bV4ClrUse
bf70: 64 3b 0a 20 20 20 20 44 57 4f 52 44 20 62 56 34 d;. DWORD bV4
bf80: 43 6c 72 49 6d 70 6f 72 74 61 6e 74 3b 0a 20 20 ClrImportant;.
bf90: 20 20 44 57 4f 52 44 20 62 56 34 52 65 64 4d 61 DWORD bV4RedMa
bfa0: 73 6b 3b 0a 20 20 20 20 44 57 4f 52 44 20 62 56 sk;. DWORD bV
bfb0: 34 47 72 65 65 6e 4d 61 73 6b 3b 0a 20 20 20 20 4GreenMask;.
bfc0: 44 57 4f 52 44 20 62 56 34 42 6c 75 65 4d 61 73 DWORD bV4BlueMas
bfd0: 6b 3b 0a 20 20 20 20 44 57 4f 52 44 20 62 56 34 k;. DWORD bV4
bfe0: 41 6c 70 68 61 4d 61 73 6b 3b 0a 20 20 20 20 44 AlphaMask;. D
bff0: 57 4f 52 44 20 62 56 34 43 53 54 79 70 65 3b 0a WORD bV4CSType;.
c000: 20 20 20 20 43 49 45 58 59 5a 54 52 49 50 4c 45 CIEXYZTRIPLE
c010: 20 62 56 34 45 6e 64 70 6f 69 6e 74 73 3b 0a 20 bV4Endpoints;.
c020: 20 20 20 44 57 4f 52 44 20 62 56 34 47 61 6d 6d DWORD bV4Gamm
c030: 61 52 65 64 3b 0a 20 20 20 20 44 57 4f 52 44 20 aRed;. DWORD
c040: 62 56 34 47 61 6d 6d 61 47 72 65 65 6e 3b 0a 20 bV4GammaGreen;.
c050: 20 20 20 44 57 4f 52 44 20 62 56 34 47 61 6d 6d DWORD bV4Gamm
c060: 61 42 6c 75 65 3b 0a 7d 0a 61 6c 69 61 73 20 42 aBlue;.}.alias B
c070: 49 54 4d 41 50 56 34 48 45 41 44 45 52 2a 4c 50 ITMAPV4HEADER*LP
c080: 42 49 54 4d 41 50 56 34 48 45 41 44 45 52 2c 20 BITMAPV4HEADER,
c090: 50 42 49 54 4d 41 50 56 34 48 45 41 44 45 52 3b PBITMAPV4HEADER;
c0a0: 0a 0a 73 74 72 75 63 74 20 42 49 54 4d 41 50 56 ..struct BITMAPV
c0b0: 35 48 45 41 44 45 52 0a 7b 0a 20 20 20 20 44 57 5HEADER.{. DW
c0c0: 4f 52 44 20 62 56 35 53 69 7a 65 3b 0a 20 20 20 ORD bV5Size;.
c0d0: 20 4c 4f 4e 47 20 62 56 35 57 69 64 74 68 3b 0a LONG bV5Width;.
c0e0: 20 20 20 20 4c 4f 4e 47 20 62 56 35 48 65 69 67 LONG bV5Heig
c0f0: 68 74 3b 0a 20 20 20 20 57 4f 52 44 20 62 56 35 ht;. WORD bV5
c100: 50 6c 61 6e 65 73 3b 0a 20 20 20 20 57 4f 52 44 Planes;. WORD
c110: 20 62 56 35 42 69 74 43 6f 75 6e 74 3b 0a 20 20 bV5BitCount;.
c120: 20 20 44 57 4f 52 44 20 62 56 35 43 6f 6d 70 72 DWORD bV5Compr
c130: 65 73 73 69 6f 6e 3b 0a 20 20 20 20 44 57 4f 52 ession;. DWOR
c140: 44 20 62 56 35 53 69 7a 65 49 6d 61 67 65 3b 0a D bV5SizeImage;.
c150: 20 20 20 20 4c 4f 4e 47 20 62 56 35 58 50 65 6c LONG bV5XPel
c160: 73 50 65 72 4d 65 74 65 72 3b 0a 20 20 20 20 4c sPerMeter;. L
c170: 4f 4e 47 20 62 56 35 59 50 65 6c 73 50 65 72 4d ONG bV5YPelsPerM
c180: 65 74 65 72 3b 0a 20 20 20 20 44 57 4f 52 44 20 eter;. DWORD
c190: 62 56 35 43 6c 72 55 73 65 64 3b 0a 20 20 20 20 bV5ClrUsed;.
c1a0: 44 57 4f 52 44 20 62 56 35 43 6c 72 49 6d 70 6f DWORD bV5ClrImpo
c1b0: 72 74 61 6e 74 3b 0a 20 20 20 20 44 57 4f 52 44 rtant;. DWORD
c1c0: 20 62 56 35 52 65 64 4d 61 73 6b 3b 0a 20 20 20 bV5RedMask;.
c1d0: 20 44 57 4f 52 44 20 62 56 35 47 72 65 65 6e 4d DWORD bV5GreenM
c1e0: 61 73 6b 3b 0a 20 20 20 20 44 57 4f 52 44 20 62 ask;. DWORD b
c1f0: 56 35 42 6c 75 65 4d 61 73 6b 3b 0a 20 20 20 20 V5BlueMask;.
c200: 44 57 4f 52 44 20 62 56 35 41 6c 70 68 61 4d 61 DWORD bV5AlphaMa
c210: 73 6b 3b 0a 20 20 20 20 44 57 4f 52 44 20 62 56 sk;. DWORD bV
c220: 35 43 53 54 79 70 65 3b 0a 20 20 20 20 43 49 45 5CSType;. CIE
c230: 58 59 5a 54 52 49 50 4c 45 20 62 56 35 45 6e 64 XYZTRIPLE bV5End
c240: 70 6f 69 6e 74 73 3b 0a 20 20 20 20 44 57 4f 52 points;. DWOR
c250: 44 20 62 56 35 47 61 6d 6d 61 52 65 64 3b 0a 20 D bV5GammaRed;.
c260: 20 20 20 44 57 4f 52 44 20 62 56 35 47 61 6d 6d DWORD bV5Gamm
c270: 61 47 72 65 65 6e 3b 0a 20 20 20 20 44 57 4f 52 aGreen;. DWOR
c280: 44 20 62 56 35 47 61 6d 6d 61 42 6c 75 65 3b 0a D bV5GammaBlue;.
c290: 20 20 20 20 44 57 4f 52 44 20 62 56 35 49 6e 74 DWORD bV5Int
c2a0: 65 6e 74 3b 0a 20 20 20 20 44 57 4f 52 44 20 62 ent;. DWORD b
c2b0: 56 35 50 72 6f 66 69 6c 65 44 61 74 61 3b 0a 20 V5ProfileData;.
c2c0: 20 20 20 44 57 4f 52 44 20 62 56 35 50 72 6f 66 DWORD bV5Prof
c2d0: 69 6c 65 53 69 7a 65 3b 0a 20 20 20 20 44 57 4f ileSize;. DWO
c2e0: 52 44 20 62 56 35 52 65 73 65 72 76 65 64 3b 0a RD bV5Reserved;.
c2f0: 7d 0a 61 6c 69 61 73 20 42 49 54 4d 41 50 56 35 }.alias BITMAPV5
c300: 48 45 41 44 45 52 2a 4c 50 42 49 54 4d 41 50 56 HEADER*LPBITMAPV
c310: 35 48 45 41 44 45 52 2c 20 50 42 49 54 4d 41 50 5HEADER, PBITMAP
c320: 56 35 48 45 41 44 45 52 3b 0a 0a 73 74 72 75 63 V5HEADER;..struc
c330: 74 20 46 4f 4e 54 53 49 47 4e 41 54 55 52 45 0a t FONTSIGNATURE.
c340: 7b 0a 20 20 20 20 44 57 4f 52 44 5b 34 5d 20 66 {. DWORD[4] f
c350: 73 55 73 62 3b 0a 20 20 20 20 44 57 4f 52 44 5b sUsb;. DWORD[
c360: 32 5d 20 66 73 43 73 62 3b 0a 7d 0a 61 6c 69 61 2] fsCsb;.}.alia
c370: 73 20 46 4f 4e 54 53 49 47 4e 41 54 55 52 45 2a s FONTSIGNATURE*
c380: 50 46 4f 4e 54 53 49 47 4e 41 54 55 52 45 2c 20 PFONTSIGNATURE,
c390: 4c 50 46 4f 4e 54 53 49 47 4e 41 54 55 52 45 3b LPFONTSIGNATURE;
c3a0: 0a 0a 73 74 72 75 63 74 20 43 48 41 52 53 45 54 ..struct CHARSET
c3b0: 49 4e 46 4f 0a 7b 0a 20 20 20 20 55 49 4e 54 20 INFO.{. UINT
c3c0: 63 69 43 68 61 72 73 65 74 3b 0a 20 20 20 20 55 ciCharset;. U
c3d0: 49 4e 54 20 63 69 41 43 50 3b 0a 20 20 20 20 46 INT ciACP;. F
c3e0: 4f 4e 54 53 49 47 4e 41 54 55 52 45 20 66 73 3b ONTSIGNATURE fs;
c3f0: 0a 7d 0a 61 6c 69 61 73 20 43 48 41 52 53 45 54 .}.alias CHARSET
c400: 49 4e 46 4f 2a 50 43 48 41 52 53 45 54 49 4e 46 INFO*PCHARSETINF
c410: 4f 2c 20 4e 50 43 48 41 52 53 45 54 49 4e 46 4f O, NPCHARSETINFO
c420: 2c 20 4c 50 43 48 41 52 53 45 54 49 4e 46 4f 3b , LPCHARSETINFO;
c430: 0a 0a 73 74 72 75 63 74 20 43 4f 4c 4f 52 41 44 ..struct COLORAD
c440: 4a 55 53 54 4d 45 4e 54 0a 7b 0a 20 20 20 20 57 JUSTMENT.{. W
c450: 4f 52 44 20 63 61 53 69 7a 65 3b 0a 20 20 20 20 ORD caSize;.
c460: 57 4f 52 44 20 63 61 46 6c 61 67 73 3b 0a 20 20 WORD caFlags;.
c470: 20 20 57 4f 52 44 20 63 61 49 6c 6c 75 6d 69 6e WORD caIllumin
c480: 61 6e 74 49 6e 64 65 78 3b 0a 20 20 20 20 57 4f antIndex;. WO
c490: 52 44 20 63 61 52 65 64 47 61 6d 6d 61 3b 0a 20 RD caRedGamma;.
c4a0: 20 20 20 57 4f 52 44 20 63 61 47 72 65 65 6e 47 WORD caGreenG
c4b0: 61 6d 6d 61 3b 0a 20 20 20 20 57 4f 52 44 20 63 amma;. WORD c
c4c0: 61 42 6c 75 65 47 61 6d 6d 61 3b 0a 20 20 20 20 aBlueGamma;.
c4d0: 57 4f 52 44 20 63 61 52 65 66 65 72 65 6e 63 65 WORD caReference
c4e0: 42 6c 61 63 6b 3b 0a 20 20 20 20 57 4f 52 44 20 Black;. WORD
c4f0: 63 61 52 65 66 65 72 65 6e 63 65 57 68 69 74 65 caReferenceWhite
c500: 3b 0a 20 20 20 20 53 48 4f 52 54 20 63 61 43 6f ;. SHORT caCo
c510: 6e 74 72 61 73 74 3b 0a 20 20 20 20 53 48 4f 52 ntrast;. SHOR
c520: 54 20 63 61 42 72 69 67 68 74 6e 65 73 73 3b 0a T caBrightness;.
c530: 20 20 20 20 53 48 4f 52 54 20 63 61 43 6f 6c 6f SHORT caColo
c540: 72 66 75 6c 6e 65 73 73 3b 0a 20 20 20 20 53 48 rfulness;. SH
c550: 4f 52 54 20 63 61 52 65 64 47 72 65 65 6e 54 69 ORT caRedGreenTi
c560: 6e 74 3b 0a 7d 0a 61 6c 69 61 73 20 43 4f 4c 4f nt;.}.alias COLO
c570: 52 41 44 4a 55 53 54 4d 45 4e 54 2a 50 43 4f 4c RADJUSTMENT*PCOL
c580: 4f 52 41 44 4a 55 53 54 4d 45 4e 54 2c 20 4c 50 ORADJUSTMENT, LP
c590: 43 4f 4c 4f 52 41 44 4a 55 53 54 4d 45 4e 54 3b COLORADJUSTMENT;
c5a0: 0a 0a 73 74 72 75 63 74 20 44 45 56 4d 4f 44 45 ..struct DEVMODE
c5b0: 41 0a 7b 0a 20 20 20 20 42 59 54 45 5b 43 43 48 A.{. BYTE[CCH
c5c0: 44 45 56 49 43 45 4e 41 4d 45 5d 20 64 6d 44 65 DEVICENAME] dmDe
c5d0: 76 69 63 65 4e 61 6d 65 3b 0a 20 20 20 20 57 4f viceName;. WO
c5e0: 52 44 20 64 6d 53 70 65 63 56 65 72 73 69 6f 6e RD dmSpecVersion
c5f0: 3b 0a 20 20 20 20 57 4f 52 44 20 64 6d 44 72 69 ;. WORD dmDri
c600: 76 65 72 56 65 72 73 69 6f 6e 3b 0a 20 20 20 20 verVersion;.
c610: 57 4f 52 44 20 64 6d 53 69 7a 65 3b 0a 20 20 20 WORD dmSize;.
c620: 20 57 4f 52 44 20 64 6d 44 72 69 76 65 72 45 78 WORD dmDriverEx
c630: 74 72 61 3b 0a 20 20 20 20 44 57 4f 52 44 20 64 tra;. DWORD d
c640: 6d 46 69 65 6c 64 73 3b 0a 20 20 20 20 75 6e 69 mFields;. uni
c650: 6f 6e 20 7b 0a 20 20 20 20 20 20 20 20 73 74 72 on {. str
c660: 75 63 74 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 uct. {.
c670: 20 20 20 20 20 20 20 20 20 20 73 68 6f 72 74 20 short
c680: 64 6d 4f 72 69 65 6e 74 61 74 69 6f 6e 3b 0a 20 dmOrientation;.
c690: 20 20 20 20 20 20 20 20 20 20 20 73 68 6f 72 74 short
c6a0: 20 64 6d 50 61 70 65 72 53 69 7a 65 3b 0a 20 20 dmPaperSize;.
c6b0: 20 20 20 20 20 20 20 20 20 20 73 68 6f 72 74 20 short
c6c0: 64 6d 50 61 70 65 72 4c 65 6e 67 74 68 3b 0a 20 dmPaperLength;.
c6d0: 20 20 20 20 20 20 20 20 20 20 20 73 68 6f 72 74 short
c6e0: 20 64 6d 50 61 70 65 72 57 69 64 74 68 3b 0a 20 dmPaperWidth;.
c6f0: 20 20 20 20 20 20 20 20 20 20 20 73 68 6f 72 74 short
c700: 20 64 6d 53 63 61 6c 65 3b 0a 20 20 20 20 20 20 dmScale;.
c710: 20 20 20 20 20 20 73 68 6f 72 74 20 64 6d 43 6f short dmCo
c720: 70 69 65 73 3b 0a 20 20 20 20 20 20 20 20 20 20 pies;.
c730: 20 20 73 68 6f 72 74 20 64 6d 44 65 66 61 75 6c short dmDefaul
c740: 74 53 6f 75 72 63 65 3b 0a 20 20 20 20 20 20 20 tSource;.
c750: 20 20 20 20 20 73 68 6f 72 74 20 64 6d 50 72 69 short dmPri
c760: 6e 74 51 75 61 6c 69 74 79 3b 0a 20 20 20 20 20 ntQuality;.
c770: 20 20 20 7d 0a 20 20 20 20 20 20 20 20 50 4f 49 }. POI
c780: 4e 54 4c 20 64 6d 50 6f 73 69 74 69 6f 6e 3b 0a NTL dmPosition;.
c790: 20 20 20 20 20 20 20 20 44 57 4f 52 44 20 64 6d DWORD dm
c7a0: 44 69 73 70 6c 61 79 4f 72 69 65 6e 74 61 74 69 DisplayOrientati
c7b0: 6f 6e 3b 0a 20 20 20 20 20 20 20 20 44 57 4f 52 on;. DWOR
c7c0: 44 20 64 6d 44 69 73 70 6c 61 79 46 69 78 65 64 D dmDisplayFixed
c7d0: 4f 75 74 70 75 74 3b 0a 20 20 20 20 7d 0a 20 20 Output;. }.
c7e0: 20 20 73 68 6f 72 74 20 64 6d 43 6f 6c 6f 72 3b short dmColor;
c7f0: 0a 20 20 20 20 73 68 6f 72 74 20 64 6d 44 75 70 . short dmDup
c800: 6c 65 78 3b 0a 20 20 20 20 73 68 6f 72 74 20 64 lex;. short d
c810: 6d 59 52 65 73 6f 6c 75 74 69 6f 6e 3b 0a 20 20 mYResolution;.
c820: 20 20 73 68 6f 72 74 20 64 6d 54 54 4f 70 74 69 short dmTTOpti
c830: 6f 6e 3b 0a 20 20 20 20 73 68 6f 72 74 20 64 6d on;. short dm
c840: 43 6f 6c 6c 61 74 65 3b 0a 20 20 20 20 42 59 54 Collate;. BYT
c850: 45 5b 43 43 48 46 4f 52 4d 4e 41 4d 45 5d 20 20 E[CCHFORMNAME]
c860: 20 64 6d 46 6f 72 6d 4e 61 6d 65 3b 0a 20 20 20 dmFormName;.
c870: 20 57 4f 52 44 20 64 6d 4c 6f 67 50 69 78 65 6c WORD dmLogPixel
c880: 73 3b 0a 20 20 20 20 44 57 4f 52 44 20 64 6d 42 s;. DWORD dmB
c890: 69 74 73 50 65 72 50 65 6c 3b 0a 20 20 20 20 44 itsPerPel;. D
c8a0: 57 4f 52 44 20 64 6d 50 65 6c 73 57 69 64 74 68 WORD dmPelsWidth
c8b0: 3b 0a 20 20 20 20 44 57 4f 52 44 20 64 6d 50 65 ;. DWORD dmPe
c8c0: 6c 73 48 65 69 67 68 74 3b 0a 20 20 20 20 75 6e lsHeight;. un
c8d0: 69 6f 6e 20 7b 0a 20 20 20 20 20 20 20 20 44 57 ion {. DW
c8e0: 4f 52 44 20 64 6d 44 69 73 70 6c 61 79 46 6c 61 ORD dmDisplayFla
c8f0: 67 73 3b 0a 20 20 20 20 20 20 20 20 44 57 4f 52 gs;. DWOR
c900: 44 20 64 6d 4e 75 70 3b 0a 20 20 20 20 7d 0a 20 D dmNup;. }.
c910: 20 20 20 44 57 4f 52 44 20 64 6d 44 69 73 70 6c DWORD dmDispl
c920: 61 79 46 72 65 71 75 65 6e 63 79 3b 0a 20 20 20 ayFrequency;.
c930: 20 73 74 61 74 69 63 0a 0a 20 20 20 20 69 66 20 static.. if
c940: 28 57 49 4e 56 45 52 20 3e 3d 20 30 78 30 34 30 (WINVER >= 0x040
c950: 30 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 0). {.
c960: 20 44 57 4f 52 44 20 64 6d 49 43 4d 4d 65 74 68 DWORD dmICMMeth
c970: 6f 64 3b 0a 20 20 20 20 20 20 20 20 44 57 4f 52 od;. DWOR
c980: 44 20 64 6d 49 43 4d 49 6e 74 65 6e 74 3b 0a 20 D dmICMIntent;.
c990: 20 20 20 20 20 20 20 44 57 4f 52 44 20 64 6d 4d DWORD dmM
c9a0: 65 64 69 61 54 79 70 65 3b 0a 20 20 20 20 20 20 ediaType;.
c9b0: 20 20 44 57 4f 52 44 20 64 6d 44 69 74 68 65 72 DWORD dmDither
c9c0: 54 79 70 65 3b 0a 20 20 20 20 20 20 20 20 44 57 Type;. DW
c9d0: 4f 52 44 20 64 6d 52 65 73 65 72 76 65 64 31 3b ORD dmReserved1;
c9e0: 0a 20 20 20 20 20 20 20 20 44 57 4f 52 44 20 64 . DWORD d
c9f0: 6d 52 65 73 65 72 76 65 64 32 3b 0a 20 20 20 20 mReserved2;.
ca00: 20 20 20 20 73 74 61 74 69 63 0a 0a 20 20 20 20 static..
ca10: 20 20 20 20 69 66 20 28 28 57 49 4e 56 45 52 20 if ((WINVER
ca20: 3e 3d 20 30 78 30 35 30 30 29 20 7c 7c 20 28 5f >= 0x0500) || (_
ca30: 57 49 4e 33 32 5f 57 49 4e 4e 54 20 3e 3d 20 30 WIN32_WINNT >= 0
ca40: 78 30 34 30 30 29 29 0a 20 20 20 20 20 20 20 20 x0400)).
ca50: 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 44 57 {. DW
ca60: 4f 52 44 20 64 6d 50 61 6e 6e 69 6e 67 57 69 64 ORD dmPanningWid
ca70: 74 68 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 th;.
ca80: 44 57 4f 52 44 20 64 6d 50 61 6e 6e 69 6e 67 48 DWORD dmPanningH
ca90: 65 69 67 68 74 3b 0a 20 20 20 20 20 20 20 20 7d eight;. }
caa0: 0a 20 20 20 20 7d 0a 7d 0a 61 6c 69 61 73 20 44 . }.}.alias D
cab0: 45 56 4d 4f 44 45 41 2a 50 44 45 56 4d 4f 44 45 EVMODEA*PDEVMODE
cac0: 41 2c 20 4e 50 44 45 56 4d 4f 44 45 41 2c 20 4c A, NPDEVMODEA, L
cad0: 50 44 45 56 4d 4f 44 45 41 3b 0a 0a 73 74 72 75 PDEVMODEA;..stru
cae0: 63 74 20 44 45 56 4d 4f 44 45 57 0a 7b 0a 20 20 ct DEVMODEW.{.
caf0: 20 20 57 43 48 41 52 5b 43 43 48 44 45 56 49 43 WCHAR[CCHDEVIC
cb00: 45 4e 41 4d 45 5d 20 20 20 64 6d 44 65 76 69 63 ENAME] dmDevic
cb10: 65 4e 61 6d 65 3b 0a 20 20 20 20 57 4f 52 44 20 eName;. WORD
cb20: 64 6d 53 70 65 63 56 65 72 73 69 6f 6e 3b 0a 20 dmSpecVersion;.
cb30: 20 20 20 57 4f 52 44 20 64 6d 44 72 69 76 65 72 WORD dmDriver
cb40: 56 65 72 73 69 6f 6e 3b 0a 20 20 20 20 57 4f 52 Version;. WOR
cb50: 44 20 64 6d 53 69 7a 65 3b 0a 20 20 20 20 57 4f D dmSize;. WO
cb60: 52 44 20 64 6d 44 72 69 76 65 72 45 78 74 72 61 RD dmDriverExtra
cb70: 3b 0a 20 20 20 20 44 57 4f 52 44 20 64 6d 46 69 ;. DWORD dmFi
cb80: 65 6c 64 73 3b 0a 20 20 20 20 75 6e 69 6f 6e 20 elds;. union
cb90: 7b 0a 20 20 20 20 20 20 20 20 73 74 72 75 63 74 {. struct
cba0: 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 . {.
cbb0: 20 20 20 20 20 20 20 73 68 6f 72 74 20 64 6d 4f short dmO
cbc0: 72 69 65 6e 74 61 74 69 6f 6e 3b 0a 20 20 20 20 rientation;.
cbd0: 20 20 20 20 20 20 20 20 73 68 6f 72 74 20 64 6d short dm
cbe0: 50 61 70 65 72 53 69 7a 65 3b 0a 20 20 20 20 20 PaperSize;.
cbf0: 20 20 20 20 20 20 20 73 68 6f 72 74 20 64 6d 50 short dmP
cc00: 61 70 65 72 4c 65 6e 67 74 68 3b 0a 20 20 20 20 aperLength;.
cc10: 20 20 20 20 20 20 20 20 73 68 6f 72 74 20 64 6d short dm
cc20: 50 61 70 65 72 57 69 64 74 68 3b 0a 20 20 20 20 PaperWidth;.
cc30: 20 20 20 20 20 20 20 20 73 68 6f 72 74 20 64 6d short dm
cc40: 53 63 61 6c 65 3b 0a 20 20 20 20 20 20 20 20 20 Scale;.
cc50: 20 20 20 73 68 6f 72 74 20 64 6d 43 6f 70 69 65 short dmCopie
cc60: 73 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 s;. s
cc70: 68 6f 72 74 20 64 6d 44 65 66 61 75 6c 74 53 6f hort dmDefaultSo
cc80: 75 72 63 65 3b 0a 20 20 20 20 20 20 20 20 20 20 urce;.
cc90: 20 20 73 68 6f 72 74 20 64 6d 50 72 69 6e 74 51 short dmPrintQ
cca0: 75 61 6c 69 74 79 3b 0a 20 20 20 20 20 20 20 20 uality;.
ccb0: 7d 0a 20 20 20 20 20 20 20 20 50 4f 49 4e 54 4c }. POINTL
ccc0: 20 64 6d 50 6f 73 69 74 69 6f 6e 3b 0a 20 20 20 dmPosition;.
ccd0: 20 20 20 20 20 44 57 4f 52 44 20 64 6d 44 69 73 DWORD dmDis
cce0: 70 6c 61 79 4f 72 69 65 6e 74 61 74 69 6f 6e 3b playOrientation;
ccf0: 0a 20 20 20 20 20 20 20 20 44 57 4f 52 44 20 64 . DWORD d
cd00: 6d 44 69 73 70 6c 61 79 46 69 78 65 64 4f 75 74 mDisplayFixedOut
cd10: 70 75 74 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 put;. }..
cd20: 73 68 6f 72 74 20 64 6d 43 6f 6c 6f 72 3b 0a 20 short dmColor;.
cd30: 20 20 20 73 68 6f 72 74 20 64 6d 44 75 70 6c 65 short dmDuple
cd40: 78 3b 0a 20 20 20 20 73 68 6f 72 74 20 64 6d 59 x;. short dmY
cd50: 52 65 73 6f 6c 75 74 69 6f 6e 3b 0a 20 20 20 20 Resolution;.
cd60: 73 68 6f 72 74 20 64 6d 54 54 4f 70 74 69 6f 6e short dmTTOption
cd70: 3b 0a 20 20 20 20 73 68 6f 72 74 20 64 6d 43 6f ;. short dmCo
cd80: 6c 6c 61 74 65 3b 0a 20 20 20 20 57 43 48 41 52 llate;. WCHAR
cd90: 5b 43 43 48 46 4f 52 4d 4e 41 4d 45 5d 20 20 64 [CCHFORMNAME] d
cda0: 6d 46 6f 72 6d 4e 61 6d 65 3b 0a 20 20 20 20 57 mFormName;. W
cdb0: 4f 52 44 20 64 6d 4c 6f 67 50 69 78 65 6c 73 3b ORD dmLogPixels;
cdc0: 0a 20 20 20 20 44 57 4f 52 44 20 64 6d 42 69 74 . DWORD dmBit
cdd0: 73 50 65 72 50 65 6c 3b 0a 20 20 20 20 44 57 4f sPerPel;. DWO
cde0: 52 44 20 64 6d 50 65 6c 73 57 69 64 74 68 3b 0a RD dmPelsWidth;.
cdf0: 20 20 20 20 44 57 4f 52 44 20 64 6d 50 65 6c 73 DWORD dmPels
ce00: 48 65 69 67 68 74 3b 0a 20 20 20 20 75 6e 69 6f Height;. unio
ce10: 6e 20 7b 0a 20 20 20 20 20 20 20 20 44 57 4f 52 n {. DWOR
ce20: 44 20 64 6d 44 69 73 70 6c 61 79 46 6c 61 67 73 D dmDisplayFlags
ce30: 3b 0a 20 20 20 20 20 20 20 20 44 57 4f 52 44 20 ;. DWORD
ce40: 64 6d 4e 75 70 3b 0a 20 20 20 20 7d 0a 20 20 20 dmNup;. }.
ce50: 20 44 57 4f 52 44 20 64 6d 44 69 73 70 6c 61 79 DWORD dmDisplay
ce60: 46 72 65 71 75 65 6e 63 79 3b 0a 20 20 20 20 73 Frequency;. s
ce70: 74 61 74 69 63 0a 0a 20 20 20 20 69 66 20 28 57 tatic.. if (W
ce80: 49 4e 56 45 52 20 3e 3d 20 30 78 30 34 30 30 29 INVER >= 0x0400)
ce90: 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 44 . {. D
cea0: 57 4f 52 44 20 64 6d 49 43 4d 4d 65 74 68 6f 64 WORD dmICMMethod
ceb0: 3b 0a 20 20 20 20 20 20 20 20 44 57 4f 52 44 20 ;. DWORD
cec0: 64 6d 49 43 4d 49 6e 74 65 6e 74 3b 0a 20 20 20 dmICMIntent;.
ced0: 20 20 20 20 20 44 57 4f 52 44 20 64 6d 4d 65 64 DWORD dmMed
cee0: 69 61 54 79 70 65 3b 0a 20 20 20 20 20 20 20 20 iaType;.
cef0: 44 57 4f 52 44 20 64 6d 44 69 74 68 65 72 54 79 DWORD dmDitherTy
cf00: 70 65 3b 0a 20 20 20 20 20 20 20 20 44 57 4f 52 pe;. DWOR
cf10: 44 20 64 6d 52 65 73 65 72 76 65 64 31 3b 0a 20 D dmReserved1;.
cf20: 20 20 20 20 20 20 20 44 57 4f 52 44 20 64 6d 52 DWORD dmR
cf30: 65 73 65 72 76 65 64 32 3b 0a 20 20 20 20 20 20 eserved2;.
cf40: 20 20 73 74 61 74 69 63 0a 0a 20 20 20 20 20 20 static..
cf50: 20 20 69 66 20 28 28 57 49 4e 56 45 52 20 3e 3d if ((WINVER >=
cf60: 20 30 78 30 35 30 30 29 20 7c 7c 20 28 5f 57 49 0x0500) || (_WI
cf70: 4e 33 32 5f 57 49 4e 4e 54 20 3e 3d 20 30 78 30 N32_WINNT >= 0x0
cf80: 34 30 30 29 29 0a 20 20 20 20 20 20 20 20 7b 0a 400)). {.
cf90: 20 20 20 20 20 20 20 20 20 20 20 20 44 57 4f 52 DWOR
cfa0: 44 20 64 6d 50 61 6e 6e 69 6e 67 57 69 64 74 68 D dmPanningWidth
cfb0: 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 44 57 ;. DW
cfc0: 4f 52 44 20 64 6d 50 61 6e 6e 69 6e 67 48 65 69 ORD dmPanningHei
cfd0: 67 68 74 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 ght;. }.
cfe0: 20 20 20 7d 0a 7d 0a 61 6c 69 61 73 20 44 45 56 }.}.alias DEV
cff0: 4d 4f 44 45 57 2a 50 44 45 56 4d 4f 44 45 57 2c MODEW*PDEVMODEW,
d000: 20 4e 50 44 45 56 4d 4f 44 45 57 2c 20 4c 50 44 NPDEVMODEW, LPD
d010: 45 56 4d 4f 44 45 57 3b 0a 0a 2f 2a 0a 20 2a 20 EVMODEW;../*. *
d020: 49 6e 66 6f 72 6d 61 74 69 6f 6e 20 61 62 6f 75 Information abou
d030: 74 20 6f 75 74 70 75 74 20 6f 70 74 69 6f 6e 73 t output options
d040: 0a 20 2a 2f 0a 73 74 72 75 63 74 20 50 53 46 45 . */.struct PSFE
d050: 41 54 55 52 45 5f 4f 55 54 50 55 54 0a 7b 0a 20 ATURE_OUTPUT.{.
d060: 20 20 20 42 4f 4f 4c 20 62 50 61 67 65 49 6e 64 BOOL bPageInd
d070: 65 70 65 6e 64 65 6e 74 3b 0a 20 20 20 20 42 4f ependent;. BO
d080: 4f 4c 20 62 53 65 74 50 61 67 65 44 65 76 69 63 OL bSetPageDevic
d090: 65 3b 0a 7d 0a 61 6c 69 61 73 20 50 53 46 45 41 e;.}.alias PSFEA
d0a0: 54 55 52 45 5f 4f 55 54 50 55 54 2a 50 50 53 46 TURE_OUTPUT*PPSF
d0b0: 45 41 54 55 52 45 5f 4f 55 54 50 55 54 3b 0a 0a EATURE_OUTPUT;..
d0c0: 2f 2a 0a 20 2a 20 49 6e 66 6f 72 6d 61 74 69 6f /*. * Informatio
d0d0: 6e 20 61 62 6f 75 74 20 63 75 73 74 6f 6d 20 70 n about custom p
d0e0: 61 70 65 72 20 73 69 7a 65 0a 20 2a 2f 0a 73 74 aper size. */.st
d0f0: 72 75 63 74 20 50 53 46 45 41 54 55 52 45 5f 43 ruct PSFEATURE_C
d100: 55 53 54 50 41 50 45 52 0a 7b 0a 20 20 20 20 4c USTPAPER.{. L
d110: 4f 4e 47 20 6c 4f 72 69 65 6e 74 61 74 69 6f 6e ONG lOrientation
d120: 3b 0a 20 20 20 20 4c 4f 4e 47 20 6c 57 69 64 74 ;. LONG lWidt
d130: 68 3b 0a 20 20 20 20 4c 4f 4e 47 20 6c 48 65 69 h;. LONG lHei
d140: 67 68 74 3b 0a 20 20 20 20 4c 4f 4e 47 20 6c 57 ght;. LONG lW
d150: 69 64 74 68 4f 66 66 73 65 74 3b 0a 20 20 20 20 idthOffset;.
d160: 4c 4f 4e 47 20 6c 48 65 69 67 68 74 4f 66 66 73 LONG lHeightOffs
d170: 65 74 3b 0a 7d 0a 61 6c 69 61 73 20 50 53 46 45 et;.}.alias PSFE
d180: 41 54 55 52 45 5f 43 55 53 54 50 41 50 45 52 2a ATURE_CUSTPAPER*
d190: 50 50 53 46 45 41 54 55 52 45 5f 43 55 53 54 50 PPSFEATURE_CUSTP
d1a0: 41 50 45 52 3b 0a 0a 73 74 72 75 63 74 20 44 49 APER;..struct DI
d1b0: 42 53 45 43 54 49 4f 4e 0a 7b 0a 20 20 20 20 42 BSECTION.{. B
d1c0: 49 54 4d 41 50 20 64 73 42 6d 3b 0a 20 20 20 20 ITMAP dsBm;.
d1d0: 42 49 54 4d 41 50 49 4e 46 4f 48 45 41 44 45 52 BITMAPINFOHEADER
d1e0: 20 64 73 42 6d 69 68 3b 0a 20 20 20 20 44 57 4f dsBmih;. DWO
d1f0: 52 44 5b 33 5d 20 20 20 20 20 20 20 20 20 64 73 RD[3] ds
d200: 42 69 74 66 69 65 6c 64 73 3b 0a 20 20 20 20 48 Bitfields;. H
d210: 41 4e 44 4c 45 20 64 73 68 53 65 63 74 69 6f 6e ANDLE dshSection
d220: 3b 0a 20 20 20 20 44 57 4f 52 44 20 64 73 4f 66 ;. DWORD dsOf
d230: 66 73 65 74 3b 0a 7d 0a 61 6c 69 61 73 20 44 49 fset;.}.alias DI
d240: 42 53 45 43 54 49 4f 4e 2a 50 44 49 42 53 45 43 BSECTION*PDIBSEC
d250: 54 49 4f 4e 3b 0a 0a 73 74 72 75 63 74 20 44 4f TION;..struct DO
d260: 43 49 4e 46 4f 41 0a 7b 0a 20 20 20 20 69 6e 74 CINFOA.{. int
d270: 20 63 62 53 69 7a 65 20 3d 20 44 4f 43 49 4e 46 cbSize = DOCINF
d280: 4f 41 2e 73 69 7a 65 6f 66 3b 0a 20 20 20 20 4c OA.sizeof;. L
d290: 50 43 53 54 52 20 6c 70 73 7a 44 6f 63 4e 61 6d PCSTR lpszDocNam
d2a0: 65 3b 0a 20 20 20 20 4c 50 43 53 54 52 20 6c 70 e;. LPCSTR lp
d2b0: 73 7a 4f 75 74 70 75 74 3b 0a 20 20 20 20 4c 50 szOutput;. LP
d2c0: 43 53 54 52 20 6c 70 73 7a 44 61 74 61 74 79 70 CSTR lpszDatatyp
d2d0: 65 3b 0a 20 20 20 20 44 57 4f 52 44 20 66 77 54 e;. DWORD fwT
d2e0: 79 70 65 3b 0a 7d 0a 61 6c 69 61 73 20 44 4f 43 ype;.}.alias DOC
d2f0: 49 4e 46 4f 41 2a 4c 50 44 4f 43 49 4e 46 4f 41 INFOA*LPDOCINFOA
d300: 3b 0a 0a 73 74 72 75 63 74 20 44 4f 43 49 4e 46 ;..struct DOCINF
d310: 4f 57 0a 7b 0a 20 20 20 20 69 6e 74 20 63 62 53 OW.{. int cbS
d320: 69 7a 65 20 3d 20 44 4f 43 49 4e 46 4f 57 2e 73 ize = DOCINFOW.s
d330: 69 7a 65 6f 66 3b 0a 20 20 20 20 4c 50 43 57 53 izeof;. LPCWS
d340: 54 52 20 6c 70 73 7a 44 6f 63 4e 61 6d 65 3b 0a TR lpszDocName;.
d350: 20 20 20 20 4c 50 43 57 53 54 52 20 6c 70 73 7a LPCWSTR lpsz
d360: 4f 75 74 70 75 74 3b 0a 20 20 20 20 4c 50 43 57 Output;. LPCW
d370: 53 54 52 20 6c 70 73 7a 44 61 74 61 74 79 70 65 STR lpszDatatype
d380: 3b 0a 20 20 20 20 44 57 4f 52 44 20 66 77 54 79 ;. DWORD fwTy
d390: 70 65 3b 0a 7d 0a 61 6c 69 61 73 20 44 4f 43 49 pe;.}.alias DOCI
d3a0: 4e 46 4f 57 2a 4c 50 44 4f 43 49 4e 46 4f 57 3b NFOW*LPDOCINFOW;
d3b0: 0a 0a 73 74 72 75 63 74 20 50 41 4e 4f 53 45 0a ..struct PANOSE.
d3c0: 7b 0a 20 20 20 20 42 59 54 45 20 62 46 61 6d 69 {. BYTE bFami
d3d0: 6c 79 54 79 70 65 3b 0a 20 20 20 20 42 59 54 45 lyType;. BYTE
d3e0: 20 62 53 65 72 69 66 53 74 79 6c 65 3b 0a 20 20 bSerifStyle;.
d3f0: 20 20 42 59 54 45 20 62 57 65 69 67 68 74 3b 0a BYTE bWeight;.
d400: 20 20 20 20 42 59 54 45 20 62 50 72 6f 70 6f 72 BYTE bPropor
d410: 74 69 6f 6e 3b 0a 20 20 20 20 42 59 54 45 20 62 tion;. BYTE b
d420: 43 6f 6e 74 72 61 73 74 3b 0a 20 20 20 20 42 59 Contrast;. BY
d430: 54 45 20 62 53 74 72 6f 6b 65 56 61 72 69 61 74 TE bStrokeVariat
d440: 69 6f 6e 3b 0a 20 20 20 20 42 59 54 45 20 62 41 ion;. BYTE bA
d450: 72 6d 53 74 79 6c 65 3b 0a 20 20 20 20 42 59 54 rmStyle;. BYT
d460: 45 20 62 4c 65 74 74 65 72 66 6f 72 6d 3b 0a 20 E bLetterform;.
d470: 20 20 20 42 59 54 45 20 62 4d 69 64 6c 69 6e 65 BYTE bMidline
d480: 3b 0a 20 20 20 20 42 59 54 45 20 62 58 48 65 69 ;. BYTE bXHei
d490: 67 68 74 3b 0a 7d 0a 61 6c 69 61 73 20 50 41 4e ght;.}.alias PAN
d4a0: 4f 53 45 2a 4c 50 50 41 4e 4f 53 45 3b 0a 0a 73 OSE*LPPANOSE;..s
d4b0: 74 72 75 63 74 20 4c 4f 47 46 4f 4e 54 41 0a 7b truct LOGFONTA.{
d4c0: 0a 20 20 20 20 4c 4f 4e 47 20 6c 66 48 65 69 67 . LONG lfHeig
d4d0: 68 74 3b 0a 20 20 20 20 4c 4f 4e 47 20 6c 66 57 ht;. LONG lfW
d4e0: 69 64 74 68 3b 0a 20 20 20 20 4c 4f 4e 47 20 6c idth;. LONG l
d4f0: 66 45 73 63 61 70 65 6d 65 6e 74 3b 0a 20 20 20 fEscapement;.
d500: 20 4c 4f 4e 47 20 6c 66 4f 72 69 65 6e 74 61 74 LONG lfOrientat
d510: 69 6f 6e 3b 0a 20 20 20 20 4c 4f 4e 47 20 6c 66 ion;. LONG lf
d520: 57 65 69 67 68 74 3b 0a 20 20 20 20 42 59 54 45 Weight;. BYTE
d530: 20 6c 66 49 74 61 6c 69 63 3b 0a 20 20 20 20 42 lfItalic;. B
d540: 59 54 45 20 6c 66 55 6e 64 65 72 6c 69 6e 65 3b YTE lfUnderline;
d550: 0a 20 20 20 20 42 59 54 45 20 6c 66 53 74 72 69 . BYTE lfStri
d560: 6b 65 4f 75 74 3b 0a 20 20 20 20 42 59 54 45 20 keOut;. BYTE
d570: 6c 66 43 68 61 72 53 65 74 3b 0a 20 20 20 20 42 lfCharSet;. B
d580: 59 54 45 20 6c 66 4f 75 74 50 72 65 63 69 73 69 YTE lfOutPrecisi
d590: 6f 6e 3b 0a 20 20 20 20 42 59 54 45 20 6c 66 43 on;. BYTE lfC
d5a0: 6c 69 70 50 72 65 63 69 73 69 6f 6e 3b 0a 20 20 lipPrecision;.
d5b0: 20 20 42 59 54 45 20 6c 66 51 75 61 6c 69 74 79 BYTE lfQuality
d5c0: 3b 0a 20 20 20 20 42 59 54 45 20 6c 66 50 69 74 ;. BYTE lfPit
d5d0: 63 68 41 6e 64 46 61 6d 69 6c 79 3b 0a 20 20 20 chAndFamily;.
d5e0: 20 43 48 41 52 5b 4c 46 5f 46 41 43 45 53 49 5a CHAR[LF_FACESIZ
d5f0: 45 5d 20 6c 66 46 61 63 65 4e 61 6d 65 3b 0a 7d E] lfFaceName;.}
d600: 0a 61 6c 69 61 73 20 4c 4f 47 46 4f 4e 54 41 2a .alias LOGFONTA*
d610: 50 4c 4f 47 46 4f 4e 54 41 2c 20 4e 50 4c 4f 47 PLOGFONTA, NPLOG
d620: 46 4f 4e 54 41 2c 20 4c 50 4c 4f 47 46 4f 4e 54 FONTA, LPLOGFONT
d630: 41 3b 0a 0a 73 74 72 75 63 74 20 4c 4f 47 46 4f A;..struct LOGFO
d640: 4e 54 57 0a 7b 0a 20 20 20 20 4c 4f 4e 47 20 6c NTW.{. LONG l
d650: 66 48 65 69 67 68 74 3b 0a 20 20 20 20 4c 4f 4e fHeight;. LON
d660: 47 20 6c 66 57 69 64 74 68 3b 0a 20 20 20 20 4c G lfWidth;. L
d670: 4f 4e 47 20 6c 66 45 73 63 61 70 65 6d 65 6e 74 ONG lfEscapement
d680: 3b 0a 20 20 20 20 4c 4f 4e 47 20 6c 66 4f 72 69 ;. LONG lfOri
d690: 65 6e 74 61 74 69 6f 6e 3b 0a 20 20 20 20 4c 4f entation;. LO
d6a0: 4e 47 20 6c 66 57 65 69 67 68 74 3b 0a 20 20 20 NG lfWeight;.
d6b0: 20 42 59 54 45 20 6c 66 49 74 61 6c 69 63 3b 0a BYTE lfItalic;.
d6c0: 20 20 20 20 42 59 54 45 20 6c 66 55 6e 64 65 72 BYTE lfUnder
d6d0: 6c 69 6e 65 3b 0a 20 20 20 20 42 59 54 45 20 6c line;. BYTE l
d6e0: 66 53 74 72 69 6b 65 4f 75 74 3b 0a 20 20 20 20 fStrikeOut;.
d6f0: 42 59 54 45 20 6c 66 43 68 61 72 53 65 74 3b 0a BYTE lfCharSet;.
d700: 20 20 20 20 42 59 54 45 20 6c 66 4f 75 74 50 72 BYTE lfOutPr
d710: 65 63 69 73 69 6f 6e 3b 0a 20 20 20 20 42 59 54 ecision;. BYT
d720: 45 20 6c 66 43 6c 69 70 50 72 65 63 69 73 69 6f E lfClipPrecisio
d730: 6e 3b 0a 20 20 20 20 42 59 54 45 20 6c 66 51 75 n;. BYTE lfQu
d740: 61 6c 69 74 79 3b 0a 20 20 20 20 42 59 54 45 20 ality;. BYTE
d750: 6c 66 50 69 74 63 68 41 6e 64 46 61 6d 69 6c 79 lfPitchAndFamily
d760: 3b 0a 20 20 20 20 57 43 48 41 52 5b 4c 46 5f 46 ;. WCHAR[LF_F
d770: 41 43 45 53 49 5a 45 5d 20 6c 66 46 61 63 65 4e ACESIZE] lfFaceN
d780: 61 6d 65 3b 0a 7d 0a 61 6c 69 61 73 20 4c 4f 47 ame;.}.alias LOG
d790: 46 4f 4e 54 57 2a 50 4c 4f 47 46 4f 4e 54 57 2c FONTW*PLOGFONTW,
d7a0: 20 4e 50 4c 4f 47 46 4f 4e 54 57 2c 20 4c 50 4c NPLOGFONTW, LPL
d7b0: 4f 47 46 4f 4e 54 57 3b 0a 0a 73 74 72 75 63 74 OGFONTW;..struct
d7c0: 20 45 58 54 4c 4f 47 46 4f 4e 54 41 0a 7b 0a 20 EXTLOGFONTA.{.
d7d0: 20 20 20 4c 4f 47 46 4f 4e 54 41 20 65 6c 66 4c LOGFONTA elfL
d7e0: 6f 67 46 6f 6e 74 3b 0a 20 20 20 20 42 59 54 45 ogFont;. BYTE
d7f0: 5b 4c 46 5f 46 55 4c 4c 46 41 43 45 53 49 5a 45 [LF_FULLFACESIZE
d800: 5d 20 65 6c 66 46 75 6c 6c 4e 61 6d 65 3b 0a 20 ] elfFullName;.
d810: 20 20 20 42 59 54 45 5b 4c 46 5f 46 41 43 45 53 BYTE[LF_FACES
d820: 49 5a 45 5d 20 20 20 20 20 65 6c 66 53 74 79 6c IZE] elfStyl
d830: 65 3b 0a 20 20 20 20 44 57 4f 52 44 20 65 6c 66 e;. DWORD elf
d840: 56 65 72 73 69 6f 6e 3b 0a 20 20 20 20 44 57 4f Version;. DWO
d850: 52 44 20 65 6c 66 53 74 79 6c 65 53 69 7a 65 3b RD elfStyleSize;
d860: 0a 20 20 20 20 44 57 4f 52 44 20 65 6c 66 4d 61 . DWORD elfMa
d870: 74 63 68 3b 0a 20 20 20 20 44 57 4f 52 44 20 65 tch;. DWORD e
d880: 6c 66 52 65 73 65 72 76 65 64 3b 0a 20 20 20 20 lfReserved;.
d890: 42 59 54 45 5b 45 4c 46 5f 56 45 4e 44 4f 52 5f BYTE[ELF_VENDOR_
d8a0: 53 49 5a 45 5d 20 65 6c 66 56 65 6e 64 6f 72 49 SIZE] elfVendorI
d8b0: 64 3b 0a 20 20 20 20 44 57 4f 52 44 20 65 6c 66 d;. DWORD elf
d8c0: 43 75 6c 74 75 72 65 3b 0a 20 20 20 20 50 41 4e Culture;. PAN
d8d0: 4f 53 45 20 65 6c 66 50 61 6e 6f 73 65 3b 0a 7d OSE elfPanose;.}
d8e0: 0a 61 6c 69 61 73 20 45 58 54 4c 4f 47 46 4f 4e .alias EXTLOGFON
d8f0: 54 41 2a 50 45 58 54 4c 4f 47 46 4f 4e 54 41 2c TA*PEXTLOGFONTA,
d900: 20 4e 50 45 58 54 4c 4f 47 46 4f 4e 54 41 2c 20 NPEXTLOGFONTA,
d910: 4c 50 45 58 54 4c 4f 47 46 4f 4e 54 41 3b 0a 0a LPEXTLOGFONTA;..
d920: 73 74 72 75 63 74 20 45 58 54 4c 4f 47 46 4f 4e struct EXTLOGFON
d930: 54 57 0a 7b 0a 20 20 20 20 4c 4f 47 46 4f 4e 54 TW.{. LOGFONT
d940: 57 20 65 6c 66 4c 6f 67 46 6f 6e 74 3b 0a 20 20 W elfLogFont;.
d950: 20 20 57 43 48 41 52 5b 4c 46 5f 46 55 4c 4c 46 WCHAR[LF_FULLF
d960: 41 43 45 53 49 5a 45 5d 20 65 6c 66 46 75 6c 6c ACESIZE] elfFull
d970: 4e 61 6d 65 3b 0a 20 20 20 20 57 43 48 41 52 5b Name;. WCHAR[
d980: 4c 46 5f 46 41 43 45 53 49 5a 45 5d 20 20 20 20 LF_FACESIZE]
d990: 20 65 6c 66 53 74 79 6c 65 3b 0a 20 20 20 20 44 elfStyle;. D
d9a0: 57 4f 52 44 20 65 6c 66 56 65 72 73 69 6f 6e 3b WORD elfVersion;
d9b0: 0a 20 20 20 20 44 57 4f 52 44 20 65 6c 66 53 74 . DWORD elfSt
d9c0: 79 6c 65 53 69 7a 65 3b 0a 20 20 20 20 44 57 4f yleSize;. DWO
d9d0: 52 44 20 65 6c 66 4d 61 74 63 68 3b 0a 20 20 20 RD elfMatch;.
d9e0: 20 44 57 4f 52 44 20 65 6c 66 52 65 73 65 72 76 DWORD elfReserv
d9f0: 65 64 3b 0a 20 20 20 20 42 59 54 45 5b 45 4c 46 ed;. BYTE[ELF
da00: 5f 56 45 4e 44 4f 52 5f 53 49 5a 45 5d 20 20 65 _VENDOR_SIZE] e
da10: 6c 66 56 65 6e 64 6f 72 49 64 3b 0a 20 20 20 20 lfVendorId;.
da20: 44 57 4f 52 44 20 65 6c 66 43 75 6c 74 75 72 65 DWORD elfCulture
da30: 3b 0a 20 20 20 20 50 41 4e 4f 53 45 20 65 6c 66 ;. PANOSE elf
da40: 50 61 6e 6f 73 65 3b 0a 7d 0a 61 6c 69 61 73 20 Panose;.}.alias
da50: 45 58 54 4c 4f 47 46 4f 4e 54 57 2a 50 45 58 54 EXTLOGFONTW*PEXT
da60: 4c 4f 47 46 4f 4e 54 57 2c 20 4e 50 45 58 54 4c LOGFONTW, NPEXTL
da70: 4f 47 46 4f 4e 54 57 2c 20 4c 50 45 58 54 4c 4f OGFONTW, LPEXTLO
da80: 47 46 4f 4e 54 57 3b 0a 0a 73 74 72 75 63 74 20 GFONTW;..struct
da90: 4c 4f 47 50 45 4e 0a 7b 0a 20 20 20 20 55 49 4e LOGPEN.{. UIN
daa0: 54 20 6c 6f 70 6e 53 74 79 6c 65 3b 0a 20 20 20 T lopnStyle;.
dab0: 20 50 4f 49 4e 54 20 6c 6f 70 6e 57 69 64 74 68 POINT lopnWidth
dac0: 3b 0a 20 20 20 20 43 4f 4c 4f 52 52 45 46 20 6c ;. COLORREF l
dad0: 6f 70 6e 43 6f 6c 6f 72 3b 0a 7d 0a 61 6c 69 61 opnColor;.}.alia
dae0: 73 20 4c 4f 47 50 45 4e 2a 50 4c 4f 47 50 45 4e s LOGPEN*PLOGPEN
daf0: 2c 20 4e 50 4c 4f 47 50 45 4e 2c 20 4c 50 4c 4f , NPLOGPEN, LPLO
db00: 47 50 45 4e 3b 0a 0a 2f 2f 20 2d 2d 2d 2d 2d 2d GPEN;..// ------
db10: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
db20: 20 45 4d 52 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d EMR -----------
db30: 2d 0a 0a 73 74 72 75 63 74 20 45 4d 52 0a 7b 0a -..struct EMR.{.
db40: 20 20 20 20 44 57 4f 52 44 20 69 54 79 70 65 3b DWORD iType;
db50: 0a 20 20 20 20 44 57 4f 52 44 20 6e 53 69 7a 65 . DWORD nSize
db60: 3b 0a 7d 0a 61 6c 69 61 73 20 45 4d 52 2a 50 45 ;.}.alias EMR*PE
db70: 4d 52 3b 0a 0a 73 74 72 75 63 74 20 45 4d 52 41 MR;..struct EMRA
db80: 4e 47 4c 45 41 52 43 0a 7b 0a 20 20 20 20 45 4d NGLEARC.{. EM
db90: 52 20 65 6d 72 3b 0a 20 20 20 20 50 4f 49 4e 54 R emr;. POINT
dba0: 4c 20 70 74 6c 43 65 6e 74 65 72 3b 0a 20 20 20 L ptlCenter;.
dbb0: 20 44 57 4f 52 44 20 6e 52 61 64 69 75 73 3b 0a DWORD nRadius;.
dbc0: 20 20 20 20 46 4c 4f 41 54 20 65 53 74 61 72 74 FLOAT eStart
dbd0: 41 6e 67 6c 65 3b 0a 20 20 20 20 46 4c 4f 41 54 Angle;. FLOAT
dbe0: 20 65 53 77 65 65 70 41 6e 67 6c 65 3b 0a 7d 0a eSweepAngle;.}.
dbf0: 61 6c 69 61 73 20 45 4d 52 41 4e 47 4c 45 41 52 alias EMRANGLEAR
dc00: 43 2a 50 45 4d 52 41 4e 47 4c 45 41 52 43 3b 0a C*PEMRANGLEARC;.
dc10: 0a 73 74 72 75 63 74 20 45 4d 52 41 52 43 0a 7b .struct EMRARC.{
dc20: 0a 20 20 20 20 45 4d 52 20 65 6d 72 3b 0a 20 20 . EMR emr;.
dc30: 20 20 52 45 43 54 4c 20 72 63 6c 42 6f 78 3b 0a RECTL rclBox;.
dc40: 20 20 20 20 50 4f 49 4e 54 4c 20 70 74 6c 53 74 POINTL ptlSt
dc50: 61 72 74 3b 0a 20 20 20 20 50 4f 49 4e 54 4c 20 art;. POINTL
dc60: 70 74 6c 45 6e 64 3b 0a 7d 0a 61 6c 69 61 73 20 ptlEnd;.}.alias
dc70: 45 4d 52 41 52 43 2a 50 45 4d 52 41 52 43 3b 0a EMRARC*PEMRARC;.
dc80: 61 6c 69 61 73 20 45 4d 52 41 52 43 20 45 4d 52 alias EMRARC EMR
dc90: 41 52 43 54 4f 3b 0a 61 6c 69 61 73 20 45 4d 52 ARCTO;.alias EMR
dca0: 41 52 43 54 4f 2a 50 45 4d 52 41 52 43 54 4f 3b ARCTO*PEMRARCTO;
dcb0: 0a 61 6c 69 61 73 20 45 4d 52 41 52 43 20 45 4d .alias EMRARC EM
dcc0: 52 43 48 4f 52 44 3b 0a 61 6c 69 61 73 20 45 4d RCHORD;.alias EM
dcd0: 52 43 48 4f 52 44 2a 50 45 4d 52 43 48 4f 52 44 RCHORD*PEMRCHORD
dce0: 3b 0a 61 6c 69 61 73 20 45 4d 52 41 52 43 20 45 ;.alias EMRARC E
dcf0: 4d 52 50 49 45 3b 0a 61 6c 69 61 73 20 45 4d 52 MRPIE;.alias EMR
dd00: 50 49 45 2a 50 45 4d 52 50 49 45 3b 0a 0a 73 74 PIE*PEMRPIE;..st
dd10: 72 75 63 74 20 58 46 4f 52 4d 0a 7b 0a 20 20 20 ruct XFORM.{.
dd20: 20 46 4c 4f 41 54 20 65 4d 31 31 3b 0a 20 20 20 FLOAT eM11;.
dd30: 20 46 4c 4f 41 54 20 65 4d 31 32 3b 0a 20 20 20 FLOAT eM12;.
dd40: 20 46 4c 4f 41 54 20 65 4d 32 31 3b 0a 20 20 20 FLOAT eM21;.
dd50: 20 46 4c 4f 41 54 20 65 4d 32 32 3b 0a 20 20 20 FLOAT eM22;.
dd60: 20 46 4c 4f 41 54 20 65 44 78 3b 0a 20 20 20 20 FLOAT eDx;.
dd70: 46 4c 4f 41 54 20 65 44 79 3b 0a 7d 0a 61 6c 69 FLOAT eDy;.}.ali
dd80: 61 73 20 58 46 4f 52 4d 2a 50 58 46 4f 52 4d 2c as XFORM*PXFORM,
dd90: 20 4c 50 58 46 4f 52 4d 3b 0a 0a 73 74 72 75 63 LPXFORM;..struc
dda0: 74 20 45 4d 52 42 49 54 42 4c 54 0a 7b 0a 20 20 t EMRBITBLT.{.
ddb0: 20 20 45 4d 52 20 65 6d 72 3b 0a 20 20 20 20 52 EMR emr;. R
ddc0: 45 43 54 4c 20 72 63 6c 42 6f 75 6e 64 73 3b 0a ECTL rclBounds;.
ddd0: 20 20 20 20 4c 4f 4e 47 20 78 44 65 73 74 3b 0a LONG xDest;.
dde0: 20 20 20 20 4c 4f 4e 47 20 79 44 65 73 74 3b 0a LONG yDest;.
ddf0: 20 20 20 20 4c 4f 4e 47 20 63 78 44 65 73 74 3b LONG cxDest;
de00: 0a 20 20 20 20 4c 4f 4e 47 20 63 79 44 65 73 74 . LONG cyDest
de10: 3b 0a 20 20 20 20 44 57 4f 52 44 20 64 77 52 6f ;. DWORD dwRo
de20: 70 3b 0a 20 20 20 20 4c 4f 4e 47 20 78 53 72 63 p;. LONG xSrc
de30: 3b 0a 20 20 20 20 4c 4f 4e 47 20 79 53 72 63 3b ;. LONG ySrc;
de40: 0a 20 20 20 20 58 46 4f 52 4d 20 78 66 6f 72 6d . XFORM xform
de50: 53 72 63 3b 0a 20 20 20 20 43 4f 4c 4f 52 52 45 Src;. COLORRE
de60: 46 20 63 72 42 6b 43 6f 6c 6f 72 53 72 63 3b 0a F crBkColorSrc;.
de70: 20 20 20 20 44 57 4f 52 44 20 69 55 73 61 67 65 DWORD iUsage
de80: 53 72 63 3b 0a 20 20 20 20 44 57 4f 52 44 20 6f Src;. DWORD o
de90: 66 66 42 6d 69 53 72 63 3b 0a 20 20 20 20 44 57 ffBmiSrc;. DW
dea0: 4f 52 44 20 63 62 42 6d 69 53 72 63 3b 0a 20 20 ORD cbBmiSrc;.
deb0: 20 20 44 57 4f 52 44 20 6f 66 66 42 69 74 73 53 DWORD offBitsS
dec0: 72 63 3b 0a 20 20 20 20 44 57 4f 52 44 20 63 62 rc;. DWORD cb
ded0: 42 69 74 73 53 72 63 3b 0a 7d 0a 61 6c 69 61 73 BitsSrc;.}.alias
dee0: 20 45 4d 52 42 49 54 42 4c 54 2a 50 45 4d 52 42 EMRBITBLT*PEMRB
def0: 49 54 42 4c 54 3b 0a 0a 73 74 72 75 63 74 20 4c ITBLT;..struct L
df00: 4f 47 42 52 55 53 48 0a 7b 0a 20 20 20 20 55 49 OGBRUSH.{. UI
df10: 4e 54 20 6c 62 53 74 79 6c 65 3b 0a 20 20 20 20 NT lbStyle;.
df20: 43 4f 4c 4f 52 52 45 46 20 6c 62 43 6f 6c 6f 72 COLORREF lbColor
df30: 3b 0a 20 20 20 20 4c 4f 4e 47 20 6c 62 48 61 74 ;. LONG lbHat
df40: 63 68 3b 0a 7d 0a 61 6c 69 61 73 20 4c 4f 47 42 ch;.}.alias LOGB
df50: 52 55 53 48 20 50 41 54 54 45 52 4e 3b 0a 61 6c RUSH PATTERN;.al
df60: 69 61 73 20 4c 4f 47 42 52 55 53 48 2a 50 4c 4f ias LOGBRUSH*PLO
df70: 47 42 52 55 53 48 2c 20 4e 50 4c 4f 47 42 52 55 GBRUSH, NPLOGBRU
df80: 53 48 2c 20 4c 50 4c 4f 47 42 52 55 53 48 3b 0a SH, LPLOGBRUSH;.
df90: 61 6c 69 61 73 20 50 41 54 54 45 52 4e 20 2a 50 alias PATTERN *P
dfa0: 50 41 54 54 45 52 4e 2c 20 4e 50 50 41 54 54 45 PATTERN, NPPATTE
dfb0: 52 4e 2c 20 4c 50 50 41 54 54 45 52 4e 3b 0a 0a RN, LPPATTERN;..
dfc0: 73 74 72 75 63 74 20 4c 4f 47 42 52 55 53 48 33 struct LOGBRUSH3
dfd0: 32 0a 7b 0a 20 20 20 20 55 49 4e 54 20 6c 62 53 2.{. UINT lbS
dfe0: 74 79 6c 65 3b 0a 20 20 20 20 43 4f 4c 4f 52 52 tyle;. COLORR
dff0: 45 46 20 6c 62 43 6f 6c 6f 72 3b 0a 20 20 20 20 EF lbColor;.
e000: 55 4c 4f 4e 47 20 6c 62 48 61 74 63 68 3b 0a 7d ULONG lbHatch;.}
e010: 0a 61 6c 69 61 73 20 4c 4f 47 42 52 55 53 48 33 .alias LOGBRUSH3
e020: 32 2a 50 4c 4f 47 42 52 55 53 48 33 32 2c 20 4e 2*PLOGBRUSH32, N
e030: 50 4c 4f 47 42 52 55 53 48 33 32 2c 20 4c 50 4c PLOGBRUSH32, LPL
e040: 4f 47 42 52 55 53 48 33 32 3b 0a 0a 73 74 72 75 OGBRUSH32;..stru
e050: 63 74 20 45 4d 52 43 52 45 41 54 45 42 52 55 53 ct EMRCREATEBRUS
e060: 48 49 4e 44 49 52 45 43 54 0a 7b 0a 20 20 20 20 HINDIRECT.{.
e070: 45 4d 52 20 65 6d 72 3b 0a 20 20 20 20 44 57 4f EMR emr;. DWO
e080: 52 44 20 69 68 42 72 75 73 68 3b 0a 20 20 20 20 RD ihBrush;.
e090: 4c 4f 47 42 52 55 53 48 33 32 20 6c 62 3b 0a 7d LOGBRUSH32 lb;.}
e0a0: 0a 61 6c 69 61 73 20 45 4d 52 43 52 45 41 54 45 .alias EMRCREATE
e0b0: 42 52 55 53 48 49 4e 44 49 52 45 43 54 2a 50 45 BRUSHINDIRECT*PE
e0c0: 4d 52 43 52 45 41 54 45 42 52 55 53 48 49 4e 44 MRCREATEBRUSHIND
e0d0: 49 52 45 43 54 3b 0a 0a 61 6c 69 61 73 20 4c 4f IRECT;..alias LO
e0e0: 4e 47 20 4c 43 53 43 53 54 59 50 45 2c 20 4c 43 NG LCSCSTYPE, LC
e0f0: 53 47 41 4d 55 54 4d 41 54 43 48 3b 0a 0a 73 74 SGAMUTMATCH;..st
e100: 72 75 63 74 20 4c 4f 47 43 4f 4c 4f 52 53 50 41 ruct LOGCOLORSPA
e110: 43 45 41 0a 7b 0a 20 20 20 20 44 57 4f 52 44 20 CEA.{. DWORD
e120: 6c 63 73 53 69 67 6e 61 74 75 72 65 3b 0a 20 20 lcsSignature;.
e130: 20 20 44 57 4f 52 44 20 6c 63 73 56 65 72 73 69 DWORD lcsVersi
e140: 6f 6e 3b 0a 20 20 20 20 44 57 4f 52 44 20 6c 63 on;. DWORD lc
e150: 73 53 69 7a 65 3b 0a 20 20 20 20 4c 43 53 43 53 sSize;. LCSCS
e160: 54 59 50 45 20 6c 63 73 43 53 54 79 70 65 3b 0a TYPE lcsCSType;.
e170: 20 20 20 20 4c 43 53 47 41 4d 55 54 4d 41 54 43 LCSGAMUTMATC
e180: 48 20 6c 63 73 49 6e 74 65 6e 74 3b 0a 20 20 20 H lcsIntent;.
e190: 20 43 49 45 58 59 5a 54 52 49 50 4c 45 20 6c 63 CIEXYZTRIPLE lc
e1a0: 73 45 6e 64 70 6f 69 6e 74 73 3b 0a 20 20 20 20 sEndpoints;.
e1b0: 44 57 4f 52 44 20 6c 63 73 47 61 6d 6d 61 52 65 DWORD lcsGammaRe
e1c0: 64 3b 0a 20 20 20 20 44 57 4f 52 44 20 6c 63 73 d;. DWORD lcs
e1d0: 47 61 6d 6d 61 47 72 65 65 6e 3b 0a 20 20 20 20 GammaGreen;.
e1e0: 44 57 4f 52 44 20 6c 63 73 47 61 6d 6d 61 42 6c DWORD lcsGammaBl
e1f0: 75 65 3b 0a 20 20 20 20 43 48 41 52 5b 4d 41 58 ue;. CHAR[MAX
e200: 5f 50 41 54 48 5d 20 6c 63 73 46 69 6c 65 6e 61 _PATH] lcsFilena
e210: 6d 65 3b 0a 7d 0a 61 6c 69 61 73 20 4c 4f 47 43 me;.}.alias LOGC
e220: 4f 4c 4f 52 53 50 41 43 45 41 2a 4c 50 4c 4f 47 OLORSPACEA*LPLOG
e230: 43 4f 4c 4f 52 53 50 41 43 45 41 3b 0a 0a 73 74 COLORSPACEA;..st
e240: 72 75 63 74 20 4c 4f 47 43 4f 4c 4f 52 53 50 41 ruct LOGCOLORSPA
e250: 43 45 57 0a 7b 0a 20 20 20 20 44 57 4f 52 44 20 CEW.{. DWORD
e260: 6c 63 73 53 69 67 6e 61 74 75 72 65 3b 0a 20 20 lcsSignature;.
e270: 20 20 44 57 4f 52 44 20 6c 63 73 56 65 72 73 69 DWORD lcsVersi
e280: 6f 6e 3b 0a 20 20 20 20 44 57 4f 52 44 20 6c 63 on;. DWORD lc
e290: 73 53 69 7a 65 3b 0a 20 20 20 20 4c 43 53 43 53 sSize;. LCSCS
e2a0: 54 59 50 45 20 6c 63 73 43 53 54 79 70 65 3b 0a TYPE lcsCSType;.
e2b0: 20 20 20 20 4c 43 53 47 41 4d 55 54 4d 41 54 43 LCSGAMUTMATC
e2c0: 48 20 6c 63 73 49 6e 74 65 6e 74 3b 0a 20 20 20 H lcsIntent;.
e2d0: 20 43 49 45 58 59 5a 54 52 49 50 4c 45 20 6c 63 CIEXYZTRIPLE lc
e2e0: 73 45 6e 64 70 6f 69 6e 74 73 3b 0a 20 20 20 20 sEndpoints;.
e2f0: 44 57 4f 52 44 20 6c 63 73 47 61 6d 6d 61 52 65 DWORD lcsGammaRe
e300: 64 3b 0a 20 20 20 20 44 57 4f 52 44 20 6c 63 73 d;. DWORD lcs
e310: 47 61 6d 6d 61 47 72 65 65 6e 3b 0a 20 20 20 20 GammaGreen;.
e320: 44 57 4f 52 44 20 6c 63 73 47 61 6d 6d 61 42 6c DWORD lcsGammaBl
e330: 75 65 3b 0a 20 20 20 20 57 43 48 41 52 5b 4d 41 ue;. WCHAR[MA
e340: 58 5f 50 41 54 48 5d 20 6c 63 73 46 69 6c 65 6e X_PATH] lcsFilen
e350: 61 6d 65 3b 0a 7d 0a 61 6c 69 61 73 20 4c 4f 47 ame;.}.alias LOG
e360: 43 4f 4c 4f 52 53 50 41 43 45 57 2a 4c 50 4c 4f COLORSPACEW*LPLO
e370: 47 43 4f 4c 4f 52 53 50 41 43 45 57 3b 0a 0a 61 GCOLORSPACEW;..a
e380: 6c 69 61 73 20 55 53 48 4f 52 54 20 43 4f 4c 4f lias USHORT COLO
e390: 52 31 36 3b 0a 73 74 72 75 63 74 20 54 52 49 56 R16;.struct TRIV
e3a0: 45 52 54 45 58 0a 7b 0a 20 20 20 20 4c 4f 4e 47 ERTEX.{. LONG
e3b0: 20 78 3b 0a 20 20 20 20 4c 4f 4e 47 20 79 3b 0a x;. LONG y;.
e3c0: 20 20 20 20 43 4f 4c 4f 52 31 36 20 52 65 64 3b COLOR16 Red;
e3d0: 0a 20 20 20 20 43 4f 4c 4f 52 31 36 20 47 72 65 . COLOR16 Gre
e3e0: 65 6e 3b 0a 20 20 20 20 43 4f 4c 4f 52 31 36 20 en;. COLOR16
e3f0: 42 6c 75 65 3b 0a 20 20 20 20 43 4f 4c 4f 52 31 Blue;. COLOR1
e400: 36 20 41 6c 70 68 61 3b 0a 7d 0a 61 6c 69 61 73 6 Alpha;.}.alias
e410: 20 54 52 49 56 45 52 54 45 58 2a 50 54 52 49 56 TRIVERTEX*PTRIV
e420: 45 52 54 45 58 2c 20 4c 50 54 52 49 56 45 52 54 ERTEX, LPTRIVERT
e430: 45 58 3b 0a 0a 73 74 61 74 69 63 0a 0a 69 66 20 EX;..static..if
e440: 28 57 49 4e 56 45 52 20 3e 3d 20 30 78 30 34 30 (WINVER >= 0x040
e450: 30 29 0a 7b 0a 20 20 20 20 73 74 72 75 63 74 20 0).{. struct
e460: 45 4d 52 47 4c 53 52 45 43 4f 52 44 0a 20 20 20 EMRGLSRECORD.
e470: 20 7b 0a 20 20 20 20 20 20 20 20 45 4d 52 20 65 {. EMR e
e480: 6d 72 3b 0a 20 20 20 20 20 20 20 20 44 57 4f 52 mr;. DWOR
e490: 44 20 63 62 44 61 74 61 3b 0a 20 20 20 20 20 20 D cbData;.
e4a0: 20 20 42 59 54 45 5b 31 5d 20 44 61 74 61 3b 0a BYTE[1] Data;.
e4b0: 20 20 20 20 7d 0a 20 20 20 20 61 6c 69 61 73 20 }. alias
e4c0: 45 4d 52 47 4c 53 52 45 43 4f 52 44 2a 50 45 4d EMRGLSRECORD*PEM
e4d0: 52 47 4c 53 52 45 43 4f 52 44 3b 0a 0a 20 20 20 RGLSRECORD;..
e4e0: 20 73 74 72 75 63 74 20 45 4d 52 47 4c 53 42 4f struct EMRGLSBO
e4f0: 55 4e 44 45 44 52 45 43 4f 52 44 0a 20 20 20 20 UNDEDRECORD.
e500: 7b 0a 20 20 20 20 20 20 20 20 45 4d 52 20 65 6d {. EMR em
e510: 72 3b 0a 20 20 20 20 20 20 20 20 52 45 43 54 4c r;. RECTL
e520: 20 72 63 6c 42 6f 75 6e 64 73 3b 0a 20 20 20 20 rclBounds;.
e530: 20 20 20 20 44 57 4f 52 44 20 63 62 44 61 74 61 DWORD cbData
e540: 3b 0a 20 20 20 20 20 20 20 20 42 59 54 45 5b 31 ;. BYTE[1
e550: 5d 20 44 61 74 61 3b 0a 20 20 20 20 7d 0a 20 20 ] Data;. }.
e560: 20 20 61 6c 69 61 73 20 45 4d 52 47 4c 53 42 4f alias EMRGLSBO
e570: 55 4e 44 45 44 52 45 43 4f 52 44 2a 50 45 4d 52 UNDEDRECORD*PEMR
e580: 47 4c 53 42 4f 55 4e 44 45 44 52 45 43 4f 52 44 GLSBOUNDEDRECORD
e590: 3b 0a 0a 20 20 20 20 73 74 72 75 63 74 20 45 4d ;.. struct EM
e5a0: 52 50 49 58 45 4c 46 4f 52 4d 41 54 0a 20 20 20 RPIXELFORMAT.
e5b0: 20 7b 0a 20 20 20 20 20 20 20 20 45 4d 52 20 65 {. EMR e
e5c0: 6d 72 3b 0a 20 20 20 20 20 20 20 20 50 49 58 45 mr;. PIXE
e5d0: 4c 46 4f 52 4d 41 54 44 45 53 43 52 49 50 54 4f LFORMATDESCRIPTO
e5e0: 52 20 70 66 64 3b 0a 20 20 20 20 7d 0a 20 20 20 R pfd;. }.
e5f0: 20 61 6c 69 61 73 20 45 4d 52 50 49 58 45 4c 46 alias EMRPIXELF
e600: 4f 52 4d 41 54 2a 50 45 4d 52 50 49 58 45 4c 46 ORMAT*PEMRPIXELF
e610: 4f 52 4d 41 54 3b 0a 0a 20 20 20 20 73 74 72 75 ORMAT;.. stru
e620: 63 74 20 45 4d 52 43 52 45 41 54 45 43 4f 4c 4f ct EMRCREATECOLO
e630: 52 53 50 41 43 45 0a 20 20 20 20 7b 0a 20 20 20 RSPACE. {.
e640: 20 20 20 20 20 45 4d 52 20 65 6d 72 3b 0a 20 20 EMR emr;.
e650: 20 20 20 20 20 20 44 57 4f 52 44 20 69 68 43 53 DWORD ihCS
e660: 3b 0a 20 20 20 20 20 20 20 20 4c 4f 47 43 4f 4c ;. LOGCOL
e670: 4f 52 53 50 41 43 45 20 6c 63 73 3b 0a 20 20 20 ORSPACE lcs;.
e680: 20 7d 0a 20 20 20 20 61 6c 69 61 73 20 45 4d 52 }. alias EMR
e690: 43 52 45 41 54 45 43 4f 4c 4f 52 53 50 41 43 45 CREATECOLORSPACE
e6a0: 2a 50 45 4d 52 43 52 45 41 54 45 43 4f 4c 4f 52 *PEMRCREATECOLOR
e6b0: 53 50 41 43 45 3b 0a 0a 20 20 20 20 73 74 72 75 SPACE;.. stru
e6c0: 63 74 20 45 4d 52 53 45 54 43 4f 4c 4f 52 53 50 ct EMRSETCOLORSP
e6d0: 41 43 45 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 ACE. {.
e6e0: 20 20 45 4d 52 20 65 6d 72 3b 0a 20 20 20 20 20 EMR emr;.
e6f0: 20 20 20 44 57 4f 52 44 20 69 68 43 53 3b 0a 20 DWORD ihCS;.
e700: 20 20 20 7d 0a 20 20 20 20 61 6c 69 61 73 20 45 }. alias E
e710: 4d 52 53 45 54 43 4f 4c 4f 52 53 50 41 43 45 2a MRSETCOLORSPACE*
e720: 50 45 4d 52 53 45 54 43 4f 4c 4f 52 53 50 41 43 PEMRSETCOLORSPAC
e730: 45 3b 0a 20 20 20 20 61 6c 69 61 73 20 45 4d 52 E;. alias EMR
e740: 53 45 54 43 4f 4c 4f 52 53 50 41 43 45 20 45 4d SETCOLORSPACE EM
e750: 52 53 45 4c 45 43 54 43 4f 4c 4f 52 53 50 41 43 RSELECTCOLORSPAC
e760: 45 3b 0a 20 20 20 20 61 6c 69 61 73 20 45 4d 52 E;. alias EMR
e770: 53 45 4c 45 43 54 43 4f 4c 4f 52 53 50 41 43 45 SELECTCOLORSPACE
e780: 2a 50 45 4d 52 53 45 4c 45 43 54 43 4f 4c 4f 52 *PEMRSELECTCOLOR
e790: 53 50 41 43 45 3b 0a 20 20 20 20 61 6c 69 61 73 SPACE;. alias
e7a0: 20 45 4d 52 53 45 54 43 4f 4c 4f 52 53 50 41 43 EMRSETCOLORSPAC
e7b0: 45 20 45 4d 52 44 45 4c 45 54 45 43 4f 4c 4f 52 E EMRDELETECOLOR
e7c0: 53 50 41 43 45 3b 0a 20 20 20 20 61 6c 69 61 73 SPACE;. alias
e7d0: 20 45 4d 52 44 45 4c 45 54 45 43 4f 4c 4f 52 53 EMRDELETECOLORS
e7e0: 50 41 43 45 2a 50 45 4d 52 44 45 4c 45 54 45 43 PACE*PEMRDELETEC
e7f0: 4f 4c 4f 52 53 50 41 43 45 3b 0a 7d 0a 0a 73 74 OLORSPACE;.}..st
e800: 61 74 69 63 0a 0a 69 66 20 28 57 49 4e 56 45 52 atic..if (WINVER
e810: 20 3e 3d 20 30 78 30 35 30 30 29 0a 7b 0a 20 20 >= 0x0500).{.
e820: 20 20 73 74 72 75 63 74 20 45 4d 52 45 58 54 45 struct EMREXTE
e830: 53 43 41 50 45 0a 20 20 20 20 7b 0a 20 20 20 20 SCAPE. {.
e840: 20 20 20 20 45 4d 52 20 65 6d 72 3b 0a 20 20 20 EMR emr;.
e850: 20 20 20 20 20 49 4e 54 20 69 45 73 63 61 70 65 INT iEscape
e860: 3b 0a 20 20 20 20 20 20 20 20 49 4e 54 20 63 62 ;. INT cb
e870: 45 73 63 44 61 74 61 3b 0a 20 20 20 20 20 20 20 EscData;.
e880: 20 42 59 54 45 5b 31 5d 20 45 73 63 44 61 74 61 BYTE[1] EscData
e890: 3b 0a 20 20 20 20 7d 0a 20 20 20 20 61 6c 69 61 ;. }. alia
e8a0: 73 20 45 4d 52 45 58 54 45 53 43 41 50 45 2a 50 s EMREXTESCAPE*P
e8b0: 45 4d 52 45 58 54 45 53 43 41 50 45 3b 0a 20 20 EMREXTESCAPE;.
e8c0: 20 20 61 6c 69 61 73 20 45 4d 52 45 58 54 45 53 alias EMREXTES
e8d0: 43 41 50 45 20 45 4d 52 44 52 41 57 45 53 43 41 CAPE EMRDRAWESCA
e8e0: 50 45 3b 0a 20 20 20 20 61 6c 69 61 73 20 45 4d PE;. alias EM
e8f0: 52 44 52 41 57 45 53 43 41 50 45 2a 50 45 4d 52 RDRAWESCAPE*PEMR
e900: 44 52 41 57 45 53 43 41 50 45 3b 0a 0a 20 20 20 DRAWESCAPE;..
e910: 20 73 74 72 75 63 74 20 45 4d 52 4e 41 4d 45 44 struct EMRNAMED
e920: 45 53 43 41 50 45 0a 20 20 20 20 7b 0a 20 20 20 ESCAPE. {.
e930: 20 20 20 20 20 45 4d 52 20 65 6d 72 3b 0a 20 20 EMR emr;.
e940: 20 20 20 20 20 20 49 4e 54 20 69 45 73 63 61 70 INT iEscap
e950: 65 3b 0a 20 20 20 20 20 20 20 20 49 4e 54 20 63 e;. INT c
e960: 62 44 72 69 76 65 72 3b 0a 20 20 20 20 20 20 20 bDriver;.
e970: 20 49 4e 54 20 63 62 45 73 63 44 61 74 61 3b 0a INT cbEscData;.
e980: 20 20 20 20 20 20 20 20 42 59 54 45 5b 31 5d 20 BYTE[1]
e990: 45 73 63 44 61 74 61 3b 0a 20 20 20 20 7d 0a 20 EscData;. }.
e9a0: 20 20 20 61 6c 69 61 73 20 45 4d 52 4e 41 4d 45 alias EMRNAME
e9b0: 44 45 53 43 41 50 45 2a 50 45 4d 52 4e 41 4d 45 DESCAPE*PEMRNAME
e9c0: 44 45 53 43 41 50 45 3b 0a 0a 20 20 20 20 73 74 DESCAPE;.. st
e9d0: 72 75 63 74 20 45 4d 52 53 45 54 49 43 4d 50 52 ruct EMRSETICMPR
e9e0: 4f 46 49 4c 45 0a 20 20 20 20 7b 0a 20 20 20 20 OFILE. {.
e9f0: 20 20 20 20 45 4d 52 20 65 6d 72 3b 0a 20 20 20 EMR emr;.
ea00: 20 20 20 20 20 44 57 4f 52 44 20 64 77 46 6c 61 DWORD dwFla
ea10: 67 73 3b 0a 20 20 20 20 20 20 20 20 44 57 4f 52 gs;. DWOR
ea20: 44 20 63 62 4e 61 6d 65 3b 0a 20 20 20 20 20 20 D cbName;.
ea30: 20 20 44 57 4f 52 44 20 63 62 44 61 74 61 3b 0a DWORD cbData;.
ea40: 20 20 20 20 20 20 20 20 42 59 54 45 5b 31 5d 20 BYTE[1]
ea50: 44 61 74 61 3b 0a 20 20 20 20 7d 0a 20 20 20 20 Data;. }.
ea60: 61 6c 69 61 73 20 45 4d 52 53 45 54 49 43 4d 50 alias EMRSETICMP
ea70: 52 4f 46 49 4c 45 2a 50 45 4d 52 53 45 54 49 43 ROFILE*PEMRSETIC
ea80: 4d 50 52 4f 46 49 4c 45 3b 0a 20 20 20 20 61 6c MPROFILE;. al
ea90: 69 61 73 20 45 4d 52 53 45 54 49 43 4d 50 52 4f ias EMRSETICMPRO
eaa0: 46 49 4c 45 20 45 4d 52 53 45 54 49 43 4d 50 52 FILE EMRSETICMPR
eab0: 4f 46 49 4c 45 41 3b 0a 20 20 20 20 61 6c 69 61 OFILEA;. alia
eac0: 73 20 45 4d 52 53 45 54 49 43 4d 50 52 4f 46 49 s EMRSETICMPROFI
ead0: 4c 45 41 2a 50 45 4d 52 53 45 54 49 43 4d 50 52 LEA*PEMRSETICMPR
eae0: 4f 46 49 4c 45 41 3b 0a 20 20 20 20 61 6c 69 61 OFILEA;. alia
eaf0: 73 20 45 4d 52 53 45 54 49 43 4d 50 52 4f 46 49 s EMRSETICMPROFI
eb00: 4c 45 20 45 4d 52 53 45 54 49 43 4d 50 52 4f 46 LE EMRSETICMPROF
eb10: 49 4c 45 57 3b 0a 20 20 20 20 61 6c 69 61 73 20 ILEW;. alias
eb20: 45 4d 52 53 45 54 49 43 4d 50 52 4f 46 49 4c 45 EMRSETICMPROFILE
eb30: 57 2a 50 45 4d 52 53 45 54 49 43 4d 50 52 4f 46 W*PEMRSETICMPROF
eb40: 49 4c 45 57 3b 0a 0a 20 20 20 20 73 74 72 75 63 ILEW;.. struc
eb50: 74 20 45 4d 52 43 52 45 41 54 45 43 4f 4c 4f 52 t EMRCREATECOLOR
eb60: 53 50 41 43 45 57 0a 20 20 20 20 7b 0a 20 20 20 SPACEW. {.
eb70: 20 20 20 20 20 45 4d 52 20 65 6d 72 3b 0a 20 20 EMR emr;.
eb80: 20 20 20 20 20 20 44 57 4f 52 44 20 69 68 43 53 DWORD ihCS
eb90: 3b 0a 20 20 20 20 20 20 20 20 4c 4f 47 43 4f 4c ;. LOGCOL
eba0: 4f 52 53 50 41 43 45 57 20 6c 63 73 3b 0a 20 20 ORSPACEW lcs;.
ebb0: 20 20 20 20 20 20 44 57 4f 52 44 20 64 77 46 6c DWORD dwFl
ebc0: 61 67 73 3b 0a 20 20 20 20 20 20 20 20 44 57 4f ags;. DWO
ebd0: 52 44 20 63 62 44 61 74 61 3b 0a 20 20 20 20 20 RD cbData;.
ebe0: 20 20 20 42 59 54 45 5b 31 5d 20 44 61 74 61 3b BYTE[1] Data;
ebf0: 0a 20 20 20 20 7d 0a 20 20 20 20 61 6c 69 61 73 . }. alias
ec00: 20 45 4d 52 43 52 45 41 54 45 43 4f 4c 4f 52 53 EMRCREATECOLORS
ec10: 50 41 43 45 57 2a 50 45 4d 52 43 52 45 41 54 45 PACEW*PEMRCREATE
ec20: 43 4f 4c 4f 52 53 50 41 43 45 57 3b 0a 0a 20 20 COLORSPACEW;..
ec30: 20 20 73 74 72 75 63 74 20 45 4d 52 43 4f 4c 4f struct EMRCOLO
ec40: 52 4d 41 54 43 48 54 4f 54 41 52 47 45 54 0a 20 RMATCHTOTARGET.
ec50: 20 20 20 7b 0a 20 20 20 20 20 20 20 20 45 4d 52 {. EMR
ec60: 20 65 6d 72 3b 0a 20 20 20 20 20 20 20 20 44 57 emr;. DW
ec70: 4f 52 44 20 64 77 41 63 74 69 6f 6e 3b 0a 20 20 ORD dwAction;.
ec80: 20 20 20 20 20 20 44 57 4f 52 44 20 64 77 46 6c DWORD dwFl
ec90: 61 67 73 3b 0a 20 20 20 20 20 20 20 20 44 57 4f ags;. DWO
eca0: 52 44 20 63 62 4e 61 6d 65 3b 0a 20 20 20 20 20 RD cbName;.
ecb0: 20 20 20 44 57 4f 52 44 20 63 62 44 61 74 61 3b DWORD cbData;
ecc0: 0a 20 20 20 20 20 20 20 20 42 59 54 45 5b 31 5d . BYTE[1]
ecd0: 20 44 61 74 61 3b 0a 20 20 20 20 7d 0a 20 20 20 Data;. }.
ece0: 20 61 6c 69 61 73 20 45 4d 52 43 4f 4c 4f 52 4d alias EMRCOLORM
ecf0: 41 54 43 48 54 4f 54 41 52 47 45 54 2a 50 45 4d ATCHTOTARGET*PEM
ed00: 52 43 4f 4c 4f 52 4d 41 54 43 48 54 4f 54 41 52 RCOLORMATCHTOTAR
ed10: 47 45 54 3b 0a 0a 20 20 20 20 73 74 72 75 63 74 GET;.. struct
ed20: 20 45 4d 52 43 4f 4c 4f 52 43 4f 52 52 45 43 54 EMRCOLORCORRECT
ed30: 50 41 4c 45 54 54 45 0a 20 20 20 20 7b 0a 20 20 PALETTE. {.
ed40: 20 20 20 20 20 20 45 4d 52 20 65 6d 72 3b 0a 20 EMR emr;.
ed50: 20 20 20 20 20 20 20 44 57 4f 52 44 20 69 68 50 DWORD ihP
ed60: 61 6c 65 74 74 65 3b 0a 20 20 20 20 20 20 20 20 alette;.
ed70: 44 57 4f 52 44 20 6e 46 69 72 73 74 45 6e 74 72 DWORD nFirstEntr
ed80: 79 3b 0a 20 20 20 20 20 20 20 20 44 57 4f 52 44 y;. DWORD
ed90: 20 6e 50 61 6c 45 6e 74 72 69 65 73 3b 0a 20 20 nPalEntries;.
eda0: 20 20 20 20 20 20 44 57 4f 52 44 20 6e 52 65 73 DWORD nRes
edb0: 65 72 76 65 64 3b 0a 20 20 20 20 7d 0a 20 20 20 erved;. }.
edc0: 20 61 6c 69 61 73 20 45 4d 52 43 4f 4c 4f 52 43 alias EMRCOLORC
edd0: 4f 52 52 45 43 54 50 41 4c 45 54 54 45 2a 50 45 ORRECTPALETTE*PE
ede0: 4d 52 43 4f 4c 4f 52 43 4f 52 52 45 43 54 50 41 MRCOLORCORRECTPA
edf0: 4c 45 54 54 45 3b 0a 0a 20 20 20 20 73 74 72 75 LETTE;.. stru
ee00: 63 74 20 45 4d 52 41 4c 50 48 41 42 4c 45 4e 44 ct EMRALPHABLEND
ee10: 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 45 . {. E
ee20: 4d 52 20 65 6d 72 3b 0a 20 20 20 20 20 20 20 20 MR emr;.
ee30: 52 45 43 54 4c 20 72 63 6c 42 6f 75 6e 64 73 3b RECTL rclBounds;
ee40: 0a 20 20 20 20 20 20 20 20 4c 4f 4e 47 20 78 44 . LONG xD
ee50: 65 73 74 3b 0a 20 20 20 20 20 20 20 20 4c 4f 4e est;. LON
ee60: 47 20 79 44 65 73 74 3b 0a 20 20 20 20 20 20 20 G yDest;.
ee70: 20 4c 4f 4e 47 20 63 78 44 65 73 74 3b 0a 20 20 LONG cxDest;.
ee80: 20 20 20 20 20 20 4c 4f 4e 47 20 63 79 44 65 73 LONG cyDes
ee90: 74 3b 0a 20 20 20 20 20 20 20 20 44 57 4f 52 44 t;. DWORD
eea0: 20 64 77 52 6f 70 3b 0a 20 20 20 20 20 20 20 20 dwRop;.
eeb0: 4c 4f 4e 47 20 78 53 72 63 3b 0a 20 20 20 20 20 LONG xSrc;.
eec0: 20 20 20 4c 4f 4e 47 20 79 53 72 63 3b 0a 20 20 LONG ySrc;.
eed0: 20 20 20 20 20 20 58 46 4f 52 4d 20 78 66 6f 72 XFORM xfor
eee0: 6d 53 72 63 3b 0a 20 20 20 20 20 20 20 20 43 4f mSrc;. CO
eef0: 4c 4f 52 52 45 46 20 63 72 42 6b 43 6f 6c 6f 72 LORREF crBkColor
ef00: 53 72 63 3b 0a 20 20 20 20 20 20 20 20 44 57 4f Src;. DWO
ef10: 52 44 20 69 55 73 61 67 65 53 72 63 3b 0a 20 20 RD iUsageSrc;.
ef20: 20 20 20 20 20 20 44 57 4f 52 44 20 6f 66 66 42 DWORD offB
ef30: 6d 69 53 72 63 3b 0a 20 20 20 20 20 20 20 20 44 miSrc;. D
ef40: 57 4f 52 44 20 63 62 42 6d 69 53 72 63 3b 0a 20 WORD cbBmiSrc;.
ef50: 20 20 20 20 20 20 20 44 57 4f 52 44 20 6f 66 66 DWORD off
ef60: 42 69 74 73 53 72 63 3b 0a 20 20 20 20 20 20 20 BitsSrc;.
ef70: 20 44 57 4f 52 44 20 63 62 42 69 74 73 53 72 63 DWORD cbBitsSrc
ef80: 3b 0a 20 20 20 20 20 20 20 20 4c 4f 4e 47 20 63 ;. LONG c
ef90: 78 53 72 63 3b 0a 20 20 20 20 20 20 20 20 4c 4f xSrc;. LO
efa0: 4e 47 20 63 79 53 72 63 3b 0a 20 20 20 20 7d 0a NG cySrc;. }.
efb0: 20 20 20 20 61 6c 69 61 73 20 45 4d 52 41 4c 50 alias EMRALP
efc0: 48 41 42 4c 45 4e 44 2a 50 45 4d 52 41 4c 50 48 HABLEND*PEMRALPH
efd0: 41 42 4c 45 4e 44 3b 0a 0a 20 20 20 20 73 74 72 ABLEND;.. str
efe0: 75 63 74 20 45 4d 52 47 52 41 44 49 45 4e 54 46 uct EMRGRADIENTF
eff0: 49 4c 4c 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 ILL. {.
f000: 20 20 45 4d 52 20 65 6d 72 3b 0a 20 20 20 20 20 EMR emr;.
f010: 20 20 20 52 45 43 54 4c 20 72 63 6c 42 6f 75 6e RECTL rclBoun
f020: 64 73 3b 0a 20 20 20 20 20 20 20 20 44 57 4f 52 ds;. DWOR
f030: 44 20 6e 56 65 72 3b 0a 20 20 20 20 20 20 20 20 D nVer;.
f040: 44 57 4f 52 44 20 6e 54 72 69 3b 0a 20 20 20 20 DWORD nTri;.
f050: 20 20 20 20 55 4c 4f 4e 47 20 75 6c 4d 6f 64 65 ULONG ulMode
f060: 3b 0a 20 20 20 20 20 20 20 20 54 52 49 56 45 52 ;. TRIVER
f070: 54 45 58 5b 31 5d 20 56 65 72 3b 0a 20 20 20 20 TEX[1] Ver;.
f080: 7d 0a 20 20 20 20 61 6c 69 61 73 20 45 4d 52 47 }. alias EMRG
f090: 52 41 44 49 45 4e 54 46 49 4c 4c 2a 50 45 4d 52 RADIENTFILL*PEMR
f0a0: 47 52 41 44 49 45 4e 54 46 49 4c 4c 3b 0a 0a 20 GRADIENTFILL;..
f0b0: 20 20 20 73 74 72 75 63 74 20 45 4d 52 54 52 41 struct EMRTRA
f0c0: 4e 53 50 41 52 45 4e 54 42 4c 54 0a 20 20 20 20 NSPARENTBLT.
f0d0: 7b 0a 20 20 20 20 20 20 20 20 45 4d 52 20 65 6d {. EMR em
f0e0: 72 3b 0a 20 20 20 20 20 20 20 20 52 45 43 54 4c r;. RECTL
f0f0: 20 72 63 6c 42 6f 75 6e 64 73 3b 0a 20 20 20 20 rclBounds;.
f100: 20 20 20 20 4c 4f 4e 47 20 78 44 65 73 74 3b 0a LONG xDest;.
f110: 20 20 20 20 20 20 20 20 4c 4f 4e 47 20 79 44 65 LONG yDe
f120: 73 74 3b 0a 20 20 20 20 20 20 20 20 4c 4f 4e 47 st;. LONG
f130: 20 63 78 44 65 73 74 3b 0a 20 20 20 20 20 20 20 cxDest;.
f140: 20 4c 4f 4e 47 20 63 79 44 65 73 74 3b 0a 20 20 LONG cyDest;.
f150: 20 20 20 20 20 20 44 57 4f 52 44 20 64 77 52 6f DWORD dwRo
f160: 70 3b 0a 20 20 20 20 20 20 20 20 4c 4f 4e 47 20 p;. LONG
f170: 78 53 72 63 3b 0a 20 20 20 20 20 20 20 20 4c 4f xSrc;. LO
f180: 4e 47 20 79 53 72 63 3b 0a 20 20 20 20 20 20 20 NG ySrc;.
f190: 20 58 46 4f 52 4d 20 78 66 6f 72 6d 53 72 63 3b XFORM xformSrc;
f1a0: 0a 20 20 20 20 20 20 20 20 43 4f 4c 4f 52 52 45 . COLORRE
f1b0: 46 20 63 72 42 6b 43 6f 6c 6f 72 53 72 63 3b 0a F crBkColorSrc;.
f1c0: 20 20 20 20 20 20 20 20 44 57 4f 52 44 20 69 55 DWORD iU
f1d0: 73 61 67 65 53 72 63 3b 0a 20 20 20 20 20 20 20 sageSrc;.
f1e0: 20 44 57 4f 52 44 20 6f 66 66 42 6d 69 53 72 63 DWORD offBmiSrc
f1f0: 3b 0a 20 20 20 20 20 20 20 20 44 57 4f 52 44 20 ;. DWORD
f200: 63 62 42 6d 69 53 72 63 3b 0a 20 20 20 20 20 20 cbBmiSrc;.
f210: 20 20 44 57 4f 52 44 20 6f 66 66 42 69 74 73 53 DWORD offBitsS
f220: 72 63 3b 0a 20 20 20 20 20 20 20 20 44 57 4f 52 rc;. DWOR
f230: 44 20 63 62 42 69 74 73 53 72 63 3b 0a 20 20 20 D cbBitsSrc;.
f240: 20 20 20 20 20 4c 4f 4e 47 20 63 78 53 72 63 3b LONG cxSrc;
f250: 0a 20 20 20 20 20 20 20 20 4c 4f 4e 47 20 63 79 . LONG cy
f260: 53 72 63 3b 0a 20 20 20 20 7d 0a 20 20 20 20 61 Src;. }. a
f270: 6c 69 61 73 20 45 4d 52 54 52 41 4e 53 50 41 52 lias EMRTRANSPAR
f280: 45 4e 54 42 4c 54 2a 50 45 4d 52 54 52 41 4e 53 ENTBLT*PEMRTRANS
f290: 50 41 52 45 4e 54 42 4c 54 3b 0a 7d 0a 0a 73 74 PARENTBLT;.}..st
f2a0: 72 75 63 74 20 45 4d 52 43 52 45 41 54 45 44 49 ruct EMRCREATEDI
f2b0: 42 50 41 54 54 45 52 4e 42 52 55 53 48 50 54 0a BPATTERNBRUSHPT.
f2c0: 7b 0a 20 20 20 20 45 4d 52 20 65 6d 72 3b 0a 20 {. EMR emr;.
f2d0: 20 20 20 44 57 4f 52 44 20 69 68 42 72 75 73 68 DWORD ihBrush
f2e0: 3b 0a 20 20 20 20 44 57 4f 52 44 20 69 55 73 61 ;. DWORD iUsa
f2f0: 67 65 3b 0a 20 20 20 20 44 57 4f 52 44 20 6f 66 ge;. DWORD of
f300: 66 42 6d 69 3b 0a 20 20 20 20 44 57 4f 52 44 20 fBmi;. DWORD
f310: 63 62 42 6d 69 3b 0a 20 20 20 20 44 57 4f 52 44 cbBmi;. DWORD
f320: 20 6f 66 66 42 69 74 73 3b 0a 20 20 20 20 44 57 offBits;. DW
f330: 4f 52 44 20 63 62 42 69 74 73 3b 0a 7d 0a 61 6c ORD cbBits;.}.al
f340: 69 61 73 20 45 4d 52 43 52 45 41 54 45 44 49 42 ias EMRCREATEDIB
f350: 50 41 54 54 45 52 4e 42 52 55 53 48 50 54 2a 50 PATTERNBRUSHPT*P
f360: 45 4d 52 43 52 45 41 54 45 44 49 42 50 41 54 54 EMRCREATEDIBPATT
f370: 45 52 4e 42 52 55 53 48 50 54 3b 0a 0a 73 74 72 ERNBRUSHPT;..str
f380: 75 63 74 20 45 4d 52 43 52 45 41 54 45 4d 4f 4e uct EMRCREATEMON
f390: 4f 42 52 55 53 48 0a 7b 0a 20 20 20 20 45 4d 52 OBRUSH.{. EMR
f3a0: 20 65 6d 72 3b 0a 20 20 20 20 44 57 4f 52 44 20 emr;. DWORD
f3b0: 69 68 42 72 75 73 68 3b 0a 20 20 20 20 44 57 4f ihBrush;. DWO
f3c0: 52 44 20 69 55 73 61 67 65 3b 0a 20 20 20 20 44 RD iUsage;. D
f3d0: 57 4f 52 44 20 6f 66 66 42 6d 69 3b 0a 20 20 20 WORD offBmi;.
f3e0: 20 44 57 4f 52 44 20 63 62 42 6d 69 3b 0a 20 20 DWORD cbBmi;.
f3f0: 20 20 44 57 4f 52 44 20 6f 66 66 42 69 74 73 3b DWORD offBits;
f400: 0a 20 20 20 20 44 57 4f 52 44 20 63 62 42 69 74 . DWORD cbBit
f410: 73 3b 0a 7d 0a 61 6c 69 61 73 20 45 4d 52 43 52 s;.}.alias EMRCR
f420: 45 41 54 45 4d 4f 4e 4f 42 52 55 53 48 2a 50 45 EATEMONOBRUSH*PE
f430: 4d 52 43 52 45 41 54 45 4d 4f 4e 4f 42 52 55 53 MRCREATEMONOBRUS
f440: 48 3b 0a 0a 73 74 72 75 63 74 20 50 41 4c 45 54 H;..struct PALET
f450: 54 45 45 4e 54 52 59 0a 7b 0a 20 20 20 20 42 59 TEENTRY.{. BY
f460: 54 45 20 70 65 52 65 64 3b 0a 20 20 20 20 42 59 TE peRed;. BY
f470: 54 45 20 70 65 47 72 65 65 6e 3b 0a 20 20 20 20 TE peGreen;.
f480: 42 59 54 45 20 70 65 42 6c 75 65 3b 0a 20 20 20 BYTE peBlue;.
f490: 20 42 59 54 45 20 70 65 46 6c 61 67 73 3b 0a 7d BYTE peFlags;.}
f4a0: 0a 61 6c 69 61 73 20 50 41 4c 45 54 54 45 45 4e .alias PALETTEEN
f4b0: 54 52 59 2a 50 50 41 4c 45 54 54 45 45 4e 54 52 TRY*PPALETTEENTR
f4c0: 59 2c 20 4c 50 50 41 4c 45 54 54 45 45 4e 54 52 Y, LPPALETTEENTR
f4d0: 59 3b 0a 0a 73 74 72 75 63 74 20 4c 4f 47 50 41 Y;..struct LOGPA
f4e0: 4c 45 54 54 45 0a 7b 0a 20 20 20 20 57 4f 52 44 LETTE.{. WORD
f4f0: 20 70 61 6c 56 65 72 73 69 6f 6e 3b 0a 20 20 20 palVersion;.
f500: 20 57 4f 52 44 20 70 61 6c 4e 75 6d 45 6e 74 72 WORD palNumEntr
f510: 69 65 73 3b 0a 20 20 20 20 50 41 4c 45 54 54 45 ies;. PALETTE
f520: 45 4e 54 52 59 5b 31 5d 20 70 61 6c 50 61 6c 45 ENTRY[1] palPalE
f530: 6e 74 72 79 3b 0a 7d 0a 61 6c 69 61 73 20 4c 4f ntry;.}.alias LO
f540: 47 50 41 4c 45 54 54 45 2a 50 4c 4f 47 50 41 4c GPALETTE*PLOGPAL
f550: 45 54 54 45 2c 20 4e 50 4c 4f 47 50 41 4c 45 54 ETTE, NPLOGPALET
f560: 54 45 2c 20 4c 50 4c 4f 47 50 41 4c 45 54 54 45 TE, LPLOGPALETTE
f570: 3b 0a 0a 73 74 72 75 63 74 20 45 4d 52 43 52 45 ;..struct EMRCRE
f580: 41 54 45 50 41 4c 45 54 54 45 0a 7b 0a 20 20 20 ATEPALETTE.{.
f590: 20 45 4d 52 20 65 6d 72 3b 0a 20 20 20 20 44 57 EMR emr;. DW
f5a0: 4f 52 44 20 69 68 50 61 6c 3b 0a 20 20 20 20 4c ORD ihPal;. L
f5b0: 4f 47 50 41 4c 45 54 54 45 20 6c 67 70 6c 3b 0a OGPALETTE lgpl;.
f5c0: 7d 0a 61 6c 69 61 73 20 45 4d 52 43 52 45 41 54 }.alias EMRCREAT
f5d0: 45 50 41 4c 45 54 54 45 2a 50 45 4d 52 43 52 45 EPALETTE*PEMRCRE
f5e0: 41 54 45 50 41 4c 45 54 54 45 3b 0a 0a 73 74 72 ATEPALETTE;..str
f5f0: 75 63 74 20 45 4d 52 43 52 45 41 54 45 50 45 4e uct EMRCREATEPEN
f600: 0a 7b 0a 20 20 20 20 45 4d 52 20 65 6d 72 3b 0a .{. EMR emr;.
f610: 20 20 20 20 44 57 4f 52 44 20 69 68 50 65 6e 3b DWORD ihPen;
f620: 0a 20 20 20 20 4c 4f 47 50 45 4e 20 6c 6f 70 6e . LOGPEN lopn
f630: 3b 0a 7d 0a 61 6c 69 61 73 20 45 4d 52 43 52 45 ;.}.alias EMRCRE
f640: 41 54 45 50 45 4e 2a 50 45 4d 52 43 52 45 41 54 ATEPEN*PEMRCREAT
f650: 45 50 45 4e 3b 0a 0a 73 74 72 75 63 74 20 45 4d EPEN;..struct EM
f660: 52 45 4c 4c 49 50 53 45 0a 7b 0a 20 20 20 20 45 RELLIPSE.{. E
f670: 4d 52 20 65 6d 72 3b 0a 20 20 20 20 52 45 43 54 MR emr;. RECT
f680: 4c 20 72 63 6c 42 6f 78 3b 0a 7d 0a 61 6c 69 61 L rclBox;.}.alia
f690: 73 20 45 4d 52 45 4c 4c 49 50 53 45 2a 50 45 4d s EMRELLIPSE*PEM
f6a0: 52 45 4c 4c 49 50 53 45 3b 0a 0a 61 6c 69 61 73 RELLIPSE;..alias
f6b0: 20 45 4d 52 45 4c 4c 49 50 53 45 20 45 4d 52 52 EMRELLIPSE EMRR
f6c0: 45 43 54 41 4e 47 4c 45 3b 0a 61 6c 69 61 73 20 ECTANGLE;.alias
f6d0: 45 4d 52 52 45 43 54 41 4e 47 4c 45 2a 50 45 4d EMRRECTANGLE*PEM
f6e0: 52 52 45 43 54 41 4e 47 4c 45 3b 0a 0a 73 74 72 RRECTANGLE;..str
f6f0: 75 63 74 20 45 4d 52 45 4f 46 0a 7b 0a 20 20 20 uct EMREOF.{.
f700: 20 45 4d 52 20 65 6d 72 3b 0a 20 20 20 20 44 57 EMR emr;. DW
f710: 4f 52 44 20 6e 50 61 6c 45 6e 74 72 69 65 73 3b ORD nPalEntries;
f720: 0a 20 20 20 20 44 57 4f 52 44 20 6f 66 66 50 61 . DWORD offPa
f730: 6c 45 6e 74 72 69 65 73 3b 0a 20 20 20 20 44 57 lEntries;. DW
f740: 4f 52 44 20 6e 53 69 7a 65 4c 61 73 74 3b 0a 7d ORD nSizeLast;.}
f750: 0a 61 6c 69 61 73 20 45 4d 52 45 4f 46 2a 50 45 .alias EMREOF*PE
f760: 4d 52 45 4f 46 3b 0a 0a 73 74 72 75 63 74 20 45 MREOF;..struct E
f770: 4d 52 45 58 43 4c 55 44 45 43 4c 49 50 52 45 43 MREXCLUDECLIPREC
f780: 54 0a 7b 0a 20 20 20 20 45 4d 52 20 65 6d 72 3b T.{. EMR emr;
f790: 0a 20 20 20 20 52 45 43 54 4c 20 72 63 6c 43 6c . RECTL rclCl
f7a0: 69 70 3b 0a 7d 0a 61 6c 69 61 73 20 45 4d 52 45 ip;.}.alias EMRE
f7b0: 58 43 4c 55 44 45 43 4c 49 50 52 45 43 54 2a 50 XCLUDECLIPRECT*P
f7c0: 45 4d 52 45 58 43 4c 55 44 45 43 4c 49 50 52 45 EMREXCLUDECLIPRE
f7d0: 43 54 3b 0a 61 6c 69 61 73 20 45 4d 52 45 58 43 CT;.alias EMREXC
f7e0: 4c 55 44 45 43 4c 49 50 52 45 43 54 20 45 4d 52 LUDECLIPRECT EMR
f7f0: 49 4e 54 45 52 53 45 43 54 43 4c 49 50 52 45 43 INTERSECTCLIPREC
f800: 54 3b 0a 61 6c 69 61 73 20 45 4d 52 49 4e 54 45 T;.alias EMRINTE
f810: 52 53 45 43 54 43 4c 49 50 52 45 43 54 2a 50 45 RSECTCLIPRECT*PE
f820: 4d 52 49 4e 54 45 52 53 45 43 54 43 4c 49 50 52 MRINTERSECTCLIPR
f830: 45 43 54 3b 0a 0a 73 74 72 75 63 74 20 45 4d 52 ECT;..struct EMR
f840: 45 58 54 43 52 45 41 54 45 46 4f 4e 54 49 4e 44 EXTCREATEFONTIND
f850: 49 52 45 43 54 57 0a 7b 0a 20 20 20 20 45 4d 52 IRECTW.{. EMR
f860: 20 65 6d 72 3b 0a 20 20 20 20 44 57 4f 52 44 20 emr;. DWORD
f870: 69 68 46 6f 6e 74 3b 0a 20 20 20 20 45 58 54 4c ihFont;. EXTL
f880: 4f 47 46 4f 4e 54 57 20 65 6c 66 77 3b 0a 7d 0a OGFONTW elfw;.}.
f890: 61 6c 69 61 73 20 45 4d 52 45 58 54 43 52 45 41 alias EMREXTCREA
f8a0: 54 45 46 4f 4e 54 49 4e 44 49 52 45 43 54 57 2a TEFONTINDIRECTW*
f8b0: 50 45 4d 52 45 58 54 43 52 45 41 54 45 46 4f 4e PEMREXTCREATEFON
f8c0: 54 49 4e 44 49 52 45 43 54 57 3b 0a 0a 73 74 72 TINDIRECTW;..str
f8d0: 75 63 74 20 45 58 54 4c 4f 47 50 45 4e 0a 7b 0a uct EXTLOGPEN.{.
f8e0: 20 20 20 20 55 49 4e 54 20 65 6c 70 50 65 6e 53 UINT elpPenS
f8f0: 74 79 6c 65 3b 0a 20 20 20 20 55 49 4e 54 20 65 tyle;. UINT e
f900: 6c 70 57 69 64 74 68 3b 0a 20 20 20 20 55 49 4e lpWidth;. UIN
f910: 54 20 65 6c 70 42 72 75 73 68 53 74 79 6c 65 3b T elpBrushStyle;
f920: 0a 20 20 20 20 43 4f 4c 4f 52 52 45 46 20 65 6c . COLORREF el
f930: 70 43 6f 6c 6f 72 3b 0a 20 20 20 20 4c 4f 4e 47 pColor;. LONG
f940: 20 65 6c 70 48 61 74 63 68 3b 0a 20 20 20 20 44 elpHatch;. D
f950: 57 4f 52 44 20 65 6c 70 4e 75 6d 45 6e 74 72 69 WORD elpNumEntri
f960: 65 73 3b 0a 20 20 20 20 44 57 4f 52 44 5b 31 5d es;. DWORD[1]
f970: 20 65 6c 70 53 74 79 6c 65 45 6e 74 72 79 3b 0a elpStyleEntry;.
f980: 7d 0a 61 6c 69 61 73 20 45 58 54 4c 4f 47 50 45 }.alias EXTLOGPE
f990: 4e 2a 50 45 58 54 4c 4f 47 50 45 4e 2c 20 4e 50 N*PEXTLOGPEN, NP
f9a0: 45 58 54 4c 4f 47 50 45 4e 2c 20 4c 50 45 58 54 EXTLOGPEN, LPEXT
f9b0: 4c 4f 47 50 45 4e 3b 0a 0a 73 74 72 75 63 74 20 LOGPEN;..struct
f9c0: 45 4d 52 45 58 54 43 52 45 41 54 45 50 45 4e 0a EMREXTCREATEPEN.
f9d0: 7b 0a 20 20 20 20 45 4d 52 20 65 6d 72 3b 0a 20 {. EMR emr;.
f9e0: 20 20 20 44 57 4f 52 44 20 69 68 50 65 6e 3b 0a DWORD ihPen;.
f9f0: 20 20 20 20 44 57 4f 52 44 20 6f 66 66 42 6d 69 DWORD offBmi
fa00: 3b 0a 20 20 20 20 44 57 4f 52 44 20 63 62 42 6d ;. DWORD cbBm
fa10: 69 3b 0a 20 20 20 20 44 57 4f 52 44 20 6f 66 66 i;. DWORD off
fa20: 42 69 74 73 3b 0a 20 20 20 20 44 57 4f 52 44 20 Bits;. DWORD
fa30: 63 62 42 69 74 73 3b 0a 20 20 20 20 45 58 54 4c cbBits;. EXTL
fa40: 4f 47 50 45 4e 20 65 6c 70 3b 0a 7d 0a 61 6c 69 OGPEN elp;.}.ali
fa50: 61 73 20 45 4d 52 45 58 54 43 52 45 41 54 45 50 as EMREXTCREATEP
fa60: 45 4e 2a 50 45 4d 52 45 58 54 43 52 45 41 54 45 EN*PEMREXTCREATE
fa70: 50 45 4e 3b 0a 0a 73 74 72 75 63 74 20 45 4d 52 PEN;..struct EMR
fa80: 45 58 54 46 4c 4f 4f 44 46 49 4c 4c 0a 7b 0a 20 EXTFLOODFILL.{.
fa90: 20 20 20 45 4d 52 20 65 6d 72 3b 0a 20 20 20 20 EMR emr;.
faa0: 50 4f 49 4e 54 4c 20 70 74 6c 53 74 61 72 74 3b POINTL ptlStart;
fab0: 0a 20 20 20 20 43 4f 4c 4f 52 52 45 46 20 63 72 . COLORREF cr
fac0: 43 6f 6c 6f 72 3b 0a 20 20 20 20 44 57 4f 52 44 Color;. DWORD
fad0: 20 69 4d 6f 64 65 3b 0a 7d 0a 61 6c 69 61 73 20 iMode;.}.alias
fae0: 45 4d 52 45 58 54 46 4c 4f 4f 44 46 49 4c 4c 2a EMREXTFLOODFILL*
faf0: 50 45 4d 52 45 58 54 46 4c 4f 4f 44 46 49 4c 4c PEMREXTFLOODFILL
fb00: 3b 0a 0a 73 74 72 75 63 74 20 45 4d 52 45 58 54 ;..struct EMREXT
fb10: 53 45 4c 45 43 54 43 4c 49 50 52 47 4e 0a 7b 0a SELECTCLIPRGN.{.
fb20: 20 20 20 20 45 4d 52 20 65 6d 72 3b 0a 20 20 20 EMR emr;.
fb30: 20 44 57 4f 52 44 20 63 62 52 67 6e 44 61 74 61 DWORD cbRgnData
fb40: 3b 0a 20 20 20 20 44 57 4f 52 44 20 69 4d 6f 64 ;. DWORD iMod
fb50: 65 3b 0a 20 20 20 20 42 59 54 45 20 5b 31 5d 20 e;. BYTE [1]
fb60: 52 67 6e 44 61 74 61 3b 0a 7d 0a 61 6c 69 61 73 RgnData;.}.alias
fb70: 20 45 4d 52 45 58 54 53 45 4c 45 43 54 43 4c 49 EMREXTSELECTCLI
fb80: 50 52 47 4e 2a 50 45 4d 52 45 58 54 53 45 4c 45 PRGN*PEMREXTSELE
fb90: 43 54 43 4c 49 50 52 47 4e 3b 0a 0a 73 74 72 75 CTCLIPRGN;..stru
fba0: 63 74 20 45 4d 52 54 45 58 54 0a 7b 0a 20 20 20 ct EMRTEXT.{.
fbb0: 20 50 4f 49 4e 54 4c 20 70 74 6c 52 65 66 65 72 POINTL ptlRefer
fbc0: 65 6e 63 65 3b 0a 20 20 20 20 44 57 4f 52 44 20 ence;. DWORD
fbd0: 6e 43 68 61 72 73 3b 0a 20 20 20 20 44 57 4f 52 nChars;. DWOR
fbe0: 44 20 6f 66 66 53 74 72 69 6e 67 3b 0a 20 20 20 D offString;.
fbf0: 20 44 57 4f 52 44 20 66 4f 70 74 69 6f 6e 73 3b DWORD fOptions;
fc00: 0a 20 20 20 20 52 45 43 54 4c 20 72 63 6c 3b 0a . RECTL rcl;.
fc10: 20 20 20 20 44 57 4f 52 44 20 6f 66 66 44 78 3b DWORD offDx;
fc20: 0a 7d 0a 61 6c 69 61 73 20 45 4d 52 54 45 58 54 .}.alias EMRTEXT
fc30: 2a 50 45 4d 52 54 45 58 54 3b 0a 0a 73 74 72 75 *PEMRTEXT;..stru
fc40: 63 74 20 45 4d 52 45 58 54 54 45 58 54 4f 55 54 ct EMREXTTEXTOUT
fc50: 41 0a 7b 0a 20 20 20 20 45 4d 52 20 65 6d 72 3b A.{. EMR emr;
fc60: 0a 20 20 20 20 52 45 43 54 4c 20 72 63 6c 42 6f . RECTL rclBo
fc70: 75 6e 64 73 3b 0a 20 20 20 20 44 57 4f 52 44 20 unds;. DWORD
fc80: 69 47 72 61 70 68 69 63 73 4d 6f 64 65 3b 0a 20 iGraphicsMode;.
fc90: 20 20 20 46 4c 4f 41 54 20 65 78 53 63 61 6c 65 FLOAT exScale
fca0: 3b 0a 20 20 20 20 46 4c 4f 41 54 20 65 79 53 63 ;. FLOAT eySc
fcb0: 61 6c 65 3b 0a 20 20 20 20 45 4d 52 54 45 58 54 ale;. EMRTEXT
fcc0: 20 65 6d 72 74 65 78 74 3b 0a 7d 0a 61 6c 69 61 emrtext;.}.alia
fcd0: 73 20 45 4d 52 45 58 54 54 45 58 54 4f 55 54 41 s EMREXTTEXTOUTA
fce0: 2a 50 45 4d 52 45 58 54 54 45 58 54 4f 55 54 41 *PEMREXTTEXTOUTA
fcf0: 3b 0a 61 6c 69 61 73 20 45 4d 52 45 58 54 54 45 ;.alias EMREXTTE
fd00: 58 54 4f 55 54 41 20 45 4d 52 45 58 54 54 45 58 XTOUTA EMREXTTEX
fd10: 54 4f 55 54 57 3b 0a 61 6c 69 61 73 20 45 4d 52 TOUTW;.alias EMR
fd20: 45 58 54 54 45 58 54 4f 55 54 57 2a 50 45 4d 52 EXTTEXTOUTW*PEMR
fd30: 45 58 54 54 45 58 54 4f 55 54 57 3b 0a 0a 73 74 EXTTEXTOUTW;..st
fd40: 72 75 63 74 20 45 4d 52 46 49 4c 4c 50 41 54 48 ruct EMRFILLPATH
fd50: 0a 7b 0a 20 20 20 20 45 4d 52 20 65 6d 72 3b 0a .{. EMR emr;.
fd60: 20 20 20 20 52 45 43 54 4c 20 72 63 6c 42 6f 75 RECTL rclBou
fd70: 6e 64 73 3b 0a 7d 0a 61 6c 69 61 73 20 45 4d 52 nds;.}.alias EMR
fd80: 46 49 4c 4c 50 41 54 48 2a 50 45 4d 52 46 49 4c FILLPATH*PEMRFIL
fd90: 4c 50 41 54 48 3b 0a 0a 61 6c 69 61 73 20 45 4d LPATH;..alias EM
fda0: 52 46 49 4c 4c 50 41 54 48 20 45 4d 52 53 54 52 RFILLPATH EMRSTR
fdb0: 4f 4b 45 41 4e 44 46 49 4c 4c 50 41 54 48 3b 0a OKEANDFILLPATH;.
fdc0: 61 6c 69 61 73 20 45 4d 52 53 54 52 4f 4b 45 41 alias EMRSTROKEA
fdd0: 4e 44 46 49 4c 4c 50 41 54 48 2a 50 45 4d 52 53 NDFILLPATH*PEMRS
fde0: 54 52 4f 4b 45 41 4e 44 46 49 4c 4c 50 41 54 48 TROKEANDFILLPATH
fdf0: 3b 0a 0a 61 6c 69 61 73 20 45 4d 52 46 49 4c 4c ;..alias EMRFILL
fe00: 50 41 54 48 20 45 4d 52 53 54 52 4f 4b 45 50 41 PATH EMRSTROKEPA
fe10: 54 48 3b 0a 61 6c 69 61 73 20 45 4d 52 53 54 52 TH;.alias EMRSTR
fe20: 4f 4b 45 50 41 54 48 2a 50 45 4d 52 53 54 52 4f OKEPATH*PEMRSTRO
fe30: 4b 45 50 41 54 48 3b 0a 0a 73 74 72 75 63 74 20 KEPATH;..struct
fe40: 45 4d 52 46 49 4c 4c 52 47 4e 0a 7b 0a 20 20 20 EMRFILLRGN.{.
fe50: 20 45 4d 52 20 65 6d 72 3b 0a 20 20 20 20 52 45 EMR emr;. RE
fe60: 43 54 4c 20 72 63 6c 42 6f 75 6e 64 73 3b 0a 20 CTL rclBounds;.
fe70: 20 20 20 44 57 4f 52 44 20 63 62 52 67 6e 44 61 DWORD cbRgnDa
fe80: 74 61 3b 0a 20 20 20 20 44 57 4f 52 44 20 69 68 ta;. DWORD ih
fe90: 42 72 75 73 68 3b 0a 20 20 20 20 42 59 54 45 5b Brush;. BYTE[
fea0: 31 5d 20 52 67 6e 44 61 74 61 3b 0a 7d 0a 61 6c 1] RgnData;.}.al
feb0: 69 61 73 20 45 4d 52 46 49 4c 4c 52 47 4e 2a 50 ias EMRFILLRGN*P
fec0: 45 4d 52 46 49 4c 4c 52 47 4e 3b 0a 0a 73 74 72 EMRFILLRGN;..str
fed0: 75 63 74 20 45 4d 52 46 4f 52 4d 41 54 0a 7b 0a uct EMRFORMAT.{.
fee0: 20 20 20 20 44 57 4f 52 44 20 64 53 69 67 6e 61 DWORD dSigna
fef0: 74 75 72 65 3b 0a 20 20 20 20 44 57 4f 52 44 20 ture;. DWORD
ff00: 6e 56 65 72 73 69 6f 6e 3b 0a 20 20 20 20 44 57 nVersion;. DW
ff10: 4f 52 44 20 63 62 44 61 74 61 3b 0a 20 20 20 20 ORD cbData;.
ff20: 44 57 4f 52 44 20 6f 66 66 44 61 74 61 3b 0a 7d DWORD offData;.}
ff30: 0a 61 6c 69 61 73 20 45 4d 52 46 4f 52 4d 41 54 .alias EMRFORMAT
ff40: 2a 50 45 4d 52 46 4f 52 4d 41 54 3b 0a 0a 73 74 *PEMRFORMAT;..st
ff50: 72 75 63 74 20 45 4d 52 46 52 41 4d 45 52 47 4e ruct EMRFRAMERGN
ff60: 0a 7b 0a 20 20 20 20 45 4d 52 20 65 6d 72 3b 0a .{. EMR emr;.
ff70: 20 20 20 20 52 45 43 54 4c 20 72 63 6c 42 6f 75 RECTL rclBou
ff80: 6e 64 73 3b 0a 20 20 20 20 44 57 4f 52 44 20 63 nds;. DWORD c
ff90: 62 52 67 6e 44 61 74 61 3b 0a 20 20 20 20 44 57 bRgnData;. DW
ffa0: 4f 52 44 20 69 68 42 72 75 73 68 3b 0a 20 20 20 ORD ihBrush;.
ffb0: 20 53 49 5a 45 4c 20 73 7a 6c 53 74 72 6f 6b 65 SIZEL szlStroke
ffc0: 3b 0a 20 20 20 20 42 59 54 45 5b 31 5d 20 52 67 ;. BYTE[1] Rg
ffd0: 6e 44 61 74 61 3b 0a 7d 0a 61 6c 69 61 73 20 45 nData;.}.alias E
ffe0: 4d 52 46 52 41 4d 45 52 47 4e 2a 50 45 4d 52 46 MRFRAMERGN*PEMRF
fff0: 52 41 4d 45 52 47 4e 3b 0a 0a 73 74 72 75 63 74 RAMERGN;..struct
10000 20 45 4d 52 47 44 49 43 4f 4d 4d 45 4e 54 0a 7b EMRGDICOMMENT.{
10010 0a 20 20 20 20 45 4d 52 20 65 6d 72 3b 0a 20 20 . EMR emr;.
10020 20 20 44 57 4f 52 44 20 63 62 44 61 74 61 3b 0a DWORD cbData;.
10030 20 20 20 20 42 59 54 45 5b 31 5d 20 44 61 74 61 BYTE[1] Data
10040 3b 0a 7d 0a 61 6c 69 61 73 20 45 4d 52 47 44 49 ;.}.alias EMRGDI
10050 43 4f 4d 4d 45 4e 54 2a 50 45 4d 52 47 44 49 43 COMMENT*PEMRGDIC
10060 4f 4d 4d 45 4e 54 3b 0a 0a 73 74 72 75 63 74 20 OMMENT;..struct
10070 45 4d 52 49 4e 56 45 52 54 52 47 4e 0a 7b 0a 20 EMRINVERTRGN.{.
10080 20 20 20 45 4d 52 20 65 6d 72 3b 0a 20 20 20 20 EMR emr;.
10090 52 45 43 54 4c 20 72 63 6c 42 6f 75 6e 64 73 3b RECTL rclBounds;
100a0 0a 20 20 20 20 44 57 4f 52 44 20 63 62 52 67 6e . DWORD cbRgn
100b0 44 61 74 61 3b 0a 20 20 20 20 42 59 54 45 5b 31 Data;. BYTE[1
100c0 5d 20 52 67 6e 44 61 74 61 3b 0a 7d 0a 61 6c 69 ] RgnData;.}.ali
100d0 61 73 20 45 4d 52 49 4e 56 45 52 54 52 47 4e 2a as EMRINVERTRGN*
100e0 50 45 4d 52 49 4e 56 45 52 54 52 47 4e 3b 0a 61 PEMRINVERTRGN;.a
100f0 6c 69 61 73 20 45 4d 52 49 4e 56 45 52 54 52 47 lias EMRINVERTRG
10100 4e 20 45 4d 52 50 41 49 4e 54 52 47 4e 3b 0a 61 N EMRPAINTRGN;.a
10110 6c 69 61 73 20 45 4d 52 50 41 49 4e 54 52 47 4e lias EMRPAINTRGN
10120 2a 50 45 4d 52 50 41 49 4e 54 52 47 4e 3b 0a 0a *PEMRPAINTRGN;..
10130 73 74 72 75 63 74 20 45 4d 52 4c 49 4e 45 54 4f struct EMRLINETO
10140 0a 7b 0a 20 20 20 20 45 4d 52 20 65 6d 72 3b 0a .{. EMR emr;.
10150 20 20 20 20 50 4f 49 4e 54 4c 20 70 74 6c 3b 0a POINTL ptl;.
10160 7d 0a 61 6c 69 61 73 20 45 4d 52 4c 49 4e 45 54 }.alias EMRLINET
10170 4f 2a 50 45 4d 52 4c 49 4e 45 54 4f 3b 0a 61 6c O*PEMRLINETO;.al
10180 69 61 73 20 45 4d 52 4c 49 4e 45 54 4f 20 45 4d ias EMRLINETO EM
10190 52 4d 4f 56 45 54 4f 45 58 3b 0a 61 6c 69 61 73 RMOVETOEX;.alias
101a0 20 45 4d 52 4d 4f 56 45 54 4f 45 58 2a 50 45 4d EMRMOVETOEX*PEM
101b0 52 4d 4f 56 45 54 4f 45 58 3b 0a 0a 73 74 72 75 RMOVETOEX;..stru
101c0 63 74 20 45 4d 52 4d 41 53 4b 42 4c 54 0a 7b 0a ct EMRMASKBLT.{.
101d0 20 20 20 20 45 4d 52 20 65 6d 72 3b 0a 20 20 20 EMR emr;.
101e0 20 52 45 43 54 4c 20 72 63 6c 42 6f 75 6e 64 73 RECTL rclBounds
101f0 3b 0a 20 20 20 20 4c 4f 4e 47 20 78 44 65 73 74 ;. LONG xDest
10200 3b 0a 20 20 20 20 4c 4f 4e 47 20 79 44 65 73 74 ;. LONG yDest
10210 3b 0a 20 20 20 20 4c 4f 4e 47 20 63 78 44 65 73 ;. LONG cxDes
10220 74 3b 0a 20 20 20 20 4c 4f 4e 47 20 63 79 44 65 t;. LONG cyDe
10230 73 74 3b 0a 20 20 20 20 44 57 4f 52 44 20 64 77 st;. DWORD dw
10240 52 6f 70 3b 0a 20 20 20 20 4c 4f 4e 47 20 78 53 Rop;. LONG xS
10250 72 63 3b 0a 20 20 20 20 4c 4f 4e 47 20 79 53 72 rc;. LONG ySr
10260 63 3b 0a 20 20 20 20 58 46 4f 52 4d 20 78 66 6f c;. XFORM xfo
10270 72 6d 53 72 63 3b 0a 20 20 20 20 43 4f 4c 4f 52 rmSrc;. COLOR
10280 52 45 46 20 63 72 42 6b 43 6f 6c 6f 72 53 72 63 REF crBkColorSrc
10290 3b 0a 20 20 20 20 44 57 4f 52 44 20 69 55 73 61 ;. DWORD iUsa
102a0 67 65 53 72 63 3b 0a 20 20 20 20 44 57 4f 52 44 geSrc;. DWORD
102b0 20 6f 66 66 42 6d 69 53 72 63 3b 0a 20 20 20 20 offBmiSrc;.
102c0 44 57 4f 52 44 20 63 62 42 6d 69 53 72 63 3b 0a DWORD cbBmiSrc;.
102d0 20 20 20 20 44 57 4f 52 44 20 6f 66 66 42 69 74 DWORD offBit
102e0 73 53 72 63 3b 0a 20 20 20 20 44 57 4f 52 44 20 sSrc;. DWORD
102f0 63 62 42 69 74 73 53 72 63 3b 0a 20 20 20 20 4c cbBitsSrc;. L
10300 4f 4e 47 20 78 4d 61 73 6b 3b 0a 20 20 20 20 4c ONG xMask;. L
10310 4f 4e 47 20 79 4d 61 73 6b 3b 0a 20 20 20 20 44 ONG yMask;. D
10320 57 4f 52 44 20 69 55 73 61 67 65 4d 61 73 6b 3b WORD iUsageMask;
10330 0a 20 20 20 20 44 57 4f 52 44 20 6f 66 66 42 6d . DWORD offBm
10340 69 4d 61 73 6b 3b 0a 20 20 20 20 44 57 4f 52 44 iMask;. DWORD
10350 20 63 62 42 6d 69 4d 61 73 6b 3b 0a 20 20 20 20 cbBmiMask;.
10360 44 57 4f 52 44 20 6f 66 66 42 69 74 73 4d 61 73 DWORD offBitsMas
10370 6b 3b 0a 20 20 20 20 44 57 4f 52 44 20 63 62 42 k;. DWORD cbB
10380 69 74 73 4d 61 73 6b 3b 0a 7d 0a 61 6c 69 61 73 itsMask;.}.alias
10390 20 45 4d 52 4d 41 53 4b 42 4c 54 2a 50 45 4d 52 EMRMASKBLT*PEMR
103a0 4d 41 53 4b 42 4c 54 3b 0a 0a 73 74 72 75 63 74 MASKBLT;..struct
103b0 20 45 4d 52 4d 4f 44 49 46 59 57 4f 52 4c 44 54 EMRMODIFYWORLDT
103c0 52 41 4e 53 46 4f 52 4d 0a 7b 0a 20 20 20 20 45 RANSFORM.{. E
103d0 4d 52 20 65 6d 72 3b 0a 20 20 20 20 58 46 4f 52 MR emr;. XFOR
103e0 4d 20 78 66 6f 72 6d 3b 0a 20 20 20 20 44 57 4f M xform;. DWO
103f0 52 44 20 69 4d 6f 64 65 3b 0a 7d 0a 61 6c 69 61 RD iMode;.}.alia
10400 73 20 45 4d 52 4d 4f 44 49 46 59 57 4f 52 4c 44 s EMRMODIFYWORLD
10410 54 52 41 4e 53 46 4f 52 4d 2a 50 45 4d 52 4d 4f TRANSFORM*PEMRMO
10420 44 49 46 59 57 4f 52 4c 44 54 52 41 4e 53 46 4f DIFYWORLDTRANSFO
10430 52 4d 3b 0a 0a 73 74 72 75 63 74 20 45 4d 52 4f RM;..struct EMRO
10440 46 46 53 45 54 43 4c 49 50 52 47 4e 0a 7b 0a 20 FFSETCLIPRGN.{.
10450 20 20 20 45 4d 52 20 65 6d 72 3b 0a 20 20 20 20 EMR emr;.
10460 50 4f 49 4e 54 4c 20 70 74 6c 4f 66 66 73 65 74 POINTL ptlOffset
10470 3b 0a 7d 0a 61 6c 69 61 73 20 45 4d 52 4f 46 46 ;.}.alias EMROFF
10480 53 45 54 43 4c 49 50 52 47 4e 2a 50 45 4d 52 4f SETCLIPRGN*PEMRO
10490 46 46 53 45 54 43 4c 49 50 52 47 4e 3b 0a 0a 73 FFSETCLIPRGN;..s
104a0 74 72 75 63 74 20 45 4d 52 50 4c 47 42 4c 54 0a truct EMRPLGBLT.
104b0 7b 0a 20 20 20 20 45 4d 52 20 65 6d 72 3b 0a 20 {. EMR emr;.
104c0 20 20 20 52 45 43 54 4c 20 72 63 6c 42 6f 75 6e RECTL rclBoun
104d0 64 73 3b 0a 20 20 20 20 50 4f 49 4e 54 4c 5b 33 ds;. POINTL[3
104e0 5d 20 61 70 74 6c 44 65 73 74 3b 0a 20 20 20 20 ] aptlDest;.
104f0 4c 4f 4e 47 20 78 53 72 63 3b 0a 20 20 20 20 4c LONG xSrc;. L
10500 4f 4e 47 20 79 53 72 63 3b 0a 20 20 20 20 4c 4f ONG ySrc;. LO
10510 4e 47 20 63 78 53 72 63 3b 0a 20 20 20 20 4c 4f NG cxSrc;. LO
10520 4e 47 20 63 79 53 72 63 3b 0a 20 20 20 20 58 46 NG cySrc;. XF
10530 4f 52 4d 20 78 66 6f 72 6d 53 72 63 3b 0a 20 20 ORM xformSrc;.
10540 20 20 43 4f 4c 4f 52 52 45 46 20 63 72 42 6b 43 COLORREF crBkC
10550 6f 6c 6f 72 53 72 63 3b 0a 20 20 20 20 44 57 4f olorSrc;. DWO
10560 52 44 20 69 55 73 61 67 65 53 72 63 3b 0a 20 20 RD iUsageSrc;.
10570 20 20 44 57 4f 52 44 20 6f 66 66 42 6d 69 53 72 DWORD offBmiSr
10580 63 3b 0a 20 20 20 20 44 57 4f 52 44 20 63 62 42 c;. DWORD cbB
10590 6d 69 53 72 63 3b 0a 20 20 20 20 44 57 4f 52 44 miSrc;. DWORD
105a0 20 6f 66 66 42 69 74 73 53 72 63 3b 0a 20 20 20 offBitsSrc;.
105b0 20 44 57 4f 52 44 20 63 62 42 69 74 73 53 72 63 DWORD cbBitsSrc
105c0 3b 0a 20 20 20 20 4c 4f 4e 47 20 78 4d 61 73 6b ;. LONG xMask
105d0 3b 0a 20 20 20 20 4c 4f 4e 47 20 79 4d 61 73 6b ;. LONG yMask
105e0 3b 0a 20 20 20 20 44 57 4f 52 44 20 69 55 73 61 ;. DWORD iUsa
105f0 67 65 4d 61 73 6b 3b 0a 20 20 20 20 44 57 4f 52 geMask;. DWOR
10600 44 20 6f 66 66 42 6d 69 4d 61 73 6b 3b 0a 20 20 D offBmiMask;.
10610 20 20 44 57 4f 52 44 20 63 62 42 6d 69 4d 61 73 DWORD cbBmiMas
10620 6b 3b 0a 20 20 20 20 44 57 4f 52 44 20 6f 66 66 k;. DWORD off
10630 42 69 74 73 4d 61 73 6b 3b 0a 20 20 20 20 44 57 BitsMask;. DW
10640 4f 52 44 20 63 62 42 69 74 73 4d 61 73 6b 3b 0a ORD cbBitsMask;.
10650 7d 0a 61 6c 69 61 73 20 45 4d 52 50 4c 47 42 4c }.alias EMRPLGBL
10660 54 2a 50 45 4d 52 50 4c 47 42 4c 54 3b 0a 0a 73 T*PEMRPLGBLT;..s
10670 74 72 75 63 74 20 45 4d 52 50 4f 4c 59 44 52 41 truct EMRPOLYDRA
10680 57 0a 7b 0a 20 20 20 20 45 4d 52 20 65 6d 72 3b W.{. EMR emr;
10690 0a 20 20 20 20 52 45 43 54 4c 20 72 63 6c 42 6f . RECTL rclBo
106a0 75 6e 64 73 3b 0a 20 20 20 20 44 57 4f 52 44 20 unds;. DWORD
106b0 63 70 74 6c 3b 0a 20 20 20 20 50 4f 49 4e 54 4c cptl;. POINTL
106c0 5b 31 5d 20 61 70 74 6c 3b 0a 20 20 20 20 42 59 [1] aptl;. BY
106d0 54 45 5b 31 5d 20 61 62 54 79 70 65 73 3b 0a 7d TE[1] abTypes;.}
106e0 0a 61 6c 69 61 73 20 45 4d 52 50 4f 4c 59 44 52 .alias EMRPOLYDR
106f0 41 57 2a 50 45 4d 52 50 4f 4c 59 44 52 41 57 3b AW*PEMRPOLYDRAW;
10700 0a 0a 73 74 72 75 63 74 20 45 4d 52 50 4f 4c 59 ..struct EMRPOLY
10710 44 52 41 57 31 36 0a 7b 0a 20 20 20 20 45 4d 52 DRAW16.{. EMR
10720 20 65 6d 72 3b 0a 20 20 20 20 52 45 43 54 4c 20 emr;. RECTL
10730 72 63 6c 42 6f 75 6e 64 73 3b 0a 20 20 20 20 44 rclBounds;. D
10740 57 4f 52 44 20 63 70 74 73 3b 0a 20 20 20 20 50 WORD cpts;. P
10750 4f 49 4e 54 53 5b 31 5d 20 61 70 74 73 3b 0a 20 OINTS[1] apts;.
10760 20 20 20 42 59 54 45 5b 31 5d 20 61 62 54 79 70 BYTE[1] abTyp
10770 65 73 3b 0a 7d 0a 61 6c 69 61 73 20 45 4d 52 50 es;.}.alias EMRP
10780 4f 4c 59 44 52 41 57 31 36 2a 50 45 4d 52 50 4f OLYDRAW16*PEMRPO
10790 4c 59 44 52 41 57 31 36 3b 0a 0a 73 74 72 75 63 LYDRAW16;..struc
107a0 74 20 45 4d 52 50 4f 4c 59 4c 49 4e 45 0a 7b 0a t EMRPOLYLINE.{.
107b0 20 20 20 20 45 4d 52 20 65 6d 72 3b 0a 20 20 20 EMR emr;.
107c0 20 52 45 43 54 4c 20 72 63 6c 42 6f 75 6e 64 73 RECTL rclBounds
107d0 3b 0a 20 20 20 20 44 57 4f 52 44 20 63 70 74 6c ;. DWORD cptl
107e0 3b 0a 20 20 20 20 50 4f 49 4e 54 4c 5b 31 5d 20 ;. POINTL[1]
107f0 61 70 74 6c 3b 0a 7d 0a 61 6c 69 61 73 20 45 4d aptl;.}.alias EM
10800 52 50 4f 4c 59 4c 49 4e 45 2a 50 45 4d 52 50 4f RPOLYLINE*PEMRPO
10810 4c 59 4c 49 4e 45 3b 0a 61 6c 69 61 73 20 45 4d LYLINE;.alias EM
10820 52 50 4f 4c 59 4c 49 4e 45 20 45 4d 52 50 4f 4c RPOLYLINE EMRPOL
10830 59 42 45 5a 49 45 52 3b 0a 61 6c 69 61 73 20 45 YBEZIER;.alias E
10840 4d 52 50 4f 4c 59 42 45 5a 49 45 52 2a 50 45 4d MRPOLYBEZIER*PEM
10850 52 50 4f 4c 59 42 45 5a 49 45 52 3b 0a 61 6c 69 RPOLYBEZIER;.ali
10860 61 73 20 45 4d 52 50 4f 4c 59 4c 49 4e 45 20 45 as EMRPOLYLINE E
10870 4d 52 50 4f 4c 59 47 4f 4e 3b 0a 61 6c 69 61 73 MRPOLYGON;.alias
10880 20 45 4d 52 50 4f 4c 59 47 4f 4e 2a 50 45 4d 52 EMRPOLYGON*PEMR
10890 50 4f 4c 59 47 4f 4e 3b 0a 61 6c 69 61 73 20 45 POLYGON;.alias E
108a0 4d 52 50 4f 4c 59 4c 49 4e 45 20 45 4d 52 50 4f MRPOLYLINE EMRPO
108b0 4c 59 42 45 5a 49 45 52 54 4f 3b 0a 61 6c 69 61 LYBEZIERTO;.alia
108c0 73 20 45 4d 52 50 4f 4c 59 42 45 5a 49 45 52 54 s EMRPOLYBEZIERT
108d0 4f 2a 50 45 4d 52 50 4f 4c 59 42 45 5a 49 45 52 O*PEMRPOLYBEZIER
108e0 54 4f 3b 0a 61 6c 69 61 73 20 45 4d 52 50 4f 4c TO;.alias EMRPOL
108f0 59 4c 49 4e 45 20 45 4d 52 50 4f 4c 59 4c 49 4e YLINE EMRPOLYLIN
10900 45 54 4f 3b 0a 61 6c 69 61 73 20 45 4d 52 50 4f ETO;.alias EMRPO
10910 4c 59 4c 49 4e 45 54 4f 2a 50 45 4d 52 50 4f 4c LYLINETO*PEMRPOL
10920 59 4c 49 4e 45 54 4f 3b 0a 0a 73 74 72 75 63 74 YLINETO;..struct
10930 20 45 4d 52 50 4f 4c 59 4c 49 4e 45 31 36 0a 7b EMRPOLYLINE16.{
10940 0a 20 20 20 20 45 4d 52 20 65 6d 72 3b 0a 20 20 . EMR emr;.
10950 20 20 52 45 43 54 4c 20 72 63 6c 42 6f 75 6e 64 RECTL rclBound
10960 73 3b 0a 20 20 20 20 44 57 4f 52 44 20 63 70 74 s;. DWORD cpt
10970 73 3b 0a 20 20 20 20 50 4f 49 4e 54 53 5b 31 5d s;. POINTS[1]
10980 20 61 70 74 73 3b 0a 7d 0a 61 6c 69 61 73 20 45 apts;.}.alias E
10990 4d 52 50 4f 4c 59 4c 49 4e 45 31 36 2a 50 45 4d MRPOLYLINE16*PEM
109a0 52 50 4f 4c 59 4c 49 4e 45 31 36 3b 0a 61 6c 69 RPOLYLINE16;.ali
109b0 61 73 20 45 4d 52 50 4f 4c 59 4c 49 4e 45 31 36 as EMRPOLYLINE16
109c0 20 45 4d 52 50 4f 4c 59 42 45 5a 49 45 52 31 36 EMRPOLYBEZIER16
109d0 3b 0a 61 6c 69 61 73 20 45 4d 52 50 4f 4c 59 42 ;.alias EMRPOLYB
109e0 45 5a 49 45 52 31 36 2a 50 45 4d 52 50 4f 4c 59 EZIER16*PEMRPOLY
109f0 42 45 5a 49 45 52 31 36 3b 0a 61 6c 69 61 73 20 BEZIER16;.alias
10a00 45 4d 52 50 4f 4c 59 4c 49 4e 45 31 36 20 45 4d EMRPOLYLINE16 EM
10a10 52 50 4f 4c 59 47 4f 4e 31 36 3b 0a 61 6c 69 61 RPOLYGON16;.alia
10a20 73 20 45 4d 52 50 4f 4c 59 47 4f 4e 31 36 2a 50 s EMRPOLYGON16*P
10a30 45 4d 52 50 4f 4c 59 47 4f 4e 31 36 3b 0a 61 6c EMRPOLYGON16;.al
10a40 69 61 73 20 45 4d 52 50 4f 4c 59 4c 49 4e 45 31 ias EMRPOLYLINE1
10a50 36 20 45 4d 52 50 4f 4c 59 42 45 5a 49 45 52 54 6 EMRPOLYBEZIERT
10a60 4f 31 36 3b 0a 61 6c 69 61 73 20 45 4d 52 50 4f O16;.alias EMRPO
10a70 4c 59 42 45 5a 49 45 52 54 4f 31 36 2a 50 45 4d LYBEZIERTO16*PEM
10a80 52 50 4f 4c 59 42 45 5a 49 45 52 54 4f 31 36 3b RPOLYBEZIERTO16;
10a90 0a 61 6c 69 61 73 20 45 4d 52 50 4f 4c 59 4c 49 .alias EMRPOLYLI
10aa0 4e 45 31 36 20 45 4d 52 50 4f 4c 59 4c 49 4e 45 NE16 EMRPOLYLINE
10ab0 54 4f 31 36 3b 0a 61 6c 69 61 73 20 45 4d 52 50 TO16;.alias EMRP
10ac0 4f 4c 59 4c 49 4e 45 54 4f 31 36 2a 50 45 4d 52 OLYLINETO16*PEMR
10ad0 50 4f 4c 59 4c 49 4e 45 54 4f 31 36 3b 0a 0a 73 POLYLINETO16;..s
10ae0 74 72 75 63 74 20 45 4d 52 50 4f 4c 59 50 4f 4c truct EMRPOLYPOL
10af0 59 4c 49 4e 45 0a 7b 0a 20 20 20 20 45 4d 52 20 YLINE.{. EMR
10b00 65 6d 72 3b 0a 20 20 20 20 52 45 43 54 4c 20 72 emr;. RECTL r
10b10 63 6c 42 6f 75 6e 64 73 3b 0a 20 20 20 20 44 57 clBounds;. DW
10b20 4f 52 44 20 6e 50 6f 6c 79 73 3b 0a 20 20 20 20 ORD nPolys;.
10b30 44 57 4f 52 44 20 63 70 74 6c 3b 0a 20 20 20 20 DWORD cptl;.
10b40 44 57 4f 52 44 5b 31 5d 20 61 50 6f 6c 79 43 6f DWORD[1] aPolyCo
10b50 75 6e 74 73 3b 0a 20 20 20 20 50 4f 49 4e 54 4c unts;. POINTL
10b60 5b 31 5d 20 61 70 74 6c 3b 0a 7d 0a 61 6c 69 61 [1] aptl;.}.alia
10b70 73 20 45 4d 52 50 4f 4c 59 50 4f 4c 59 4c 49 4e s EMRPOLYPOLYLIN
10b80 45 2a 50 45 4d 52 50 4f 4c 59 50 4f 4c 59 4c 49 E*PEMRPOLYPOLYLI
10b90 4e 45 3b 0a 61 6c 69 61 73 20 45 4d 52 50 4f 4c NE;.alias EMRPOL
10ba0 59 50 4f 4c 59 4c 49 4e 45 20 45 4d 52 50 4f 4c YPOLYLINE EMRPOL
10bb0 59 50 4f 4c 59 47 4f 4e 3b 0a 61 6c 69 61 73 20 YPOLYGON;.alias
10bc0 45 4d 52 50 4f 4c 59 50 4f 4c 59 47 4f 4e 2a 50 EMRPOLYPOLYGON*P
10bd0 45 4d 52 50 4f 4c 59 50 4f 4c 59 47 4f 4e 3b 0a EMRPOLYPOLYGON;.
10be0 0a 73 74 72 75 63 74 20 45 4d 52 50 4f 4c 59 50 .struct EMRPOLYP
10bf0 4f 4c 59 4c 49 4e 45 31 36 0a 7b 0a 20 20 20 20 OLYLINE16.{.
10c00 45 4d 52 20 65 6d 72 3b 0a 20 20 20 20 52 45 43 EMR emr;. REC
10c10 54 4c 20 72 63 6c 42 6f 75 6e 64 73 3b 0a 20 20 TL rclBounds;.
10c20 20 20 44 57 4f 52 44 20 6e 50 6f 6c 79 73 3b 0a DWORD nPolys;.
10c30 20 20 20 20 44 57 4f 52 44 20 63 70 74 73 3b 0a DWORD cpts;.
10c40 20 20 20 20 44 57 4f 52 44 5b 31 5d 20 61 50 6f DWORD[1] aPo
10c50 6c 79 43 6f 75 6e 74 73 3b 0a 20 20 20 20 50 4f lyCounts;. PO
10c60 49 4e 54 53 5b 31 5d 20 61 70 74 73 3b 0a 7d 0a INTS[1] apts;.}.
10c70 61 6c 69 61 73 20 45 4d 52 50 4f 4c 59 50 4f 4c alias EMRPOLYPOL
10c80 59 4c 49 4e 45 31 36 2a 50 45 4d 52 50 4f 4c 59 YLINE16*PEMRPOLY
10c90 50 4f 4c 59 4c 49 4e 45 31 36 3b 0a 61 6c 69 61 POLYLINE16;.alia
10ca0 73 20 45 4d 52 50 4f 4c 59 50 4f 4c 59 4c 49 4e s EMRPOLYPOLYLIN
10cb0 45 31 36 20 45 4d 52 50 4f 4c 59 50 4f 4c 59 47 E16 EMRPOLYPOLYG
10cc0 4f 4e 31 36 3b 0a 61 6c 69 61 73 20 45 4d 52 50 ON16;.alias EMRP
10cd0 4f 4c 59 50 4f 4c 59 47 4f 4e 31 36 2a 50 45 4d OLYPOLYGON16*PEM
10ce0 52 50 4f 4c 59 50 4f 4c 59 47 4f 4e 31 36 3b 0a RPOLYPOLYGON16;.
10cf0 0a 73 74 72 75 63 74 20 45 4d 52 50 4f 4c 59 54 .struct EMRPOLYT
10d00 45 58 54 4f 55 54 41 0a 7b 0a 20 20 20 20 45 4d EXTOUTA.{. EM
10d10 52 20 65 6d 72 3b 0a 20 20 20 20 52 45 43 54 4c R emr;. RECTL
10d20 20 72 63 6c 42 6f 75 6e 64 73 3b 0a 20 20 20 20 rclBounds;.
10d30 44 57 4f 52 44 20 69 47 72 61 70 68 69 63 73 4d DWORD iGraphicsM
10d40 6f 64 65 3b 0a 20 20 20 20 46 4c 4f 41 54 20 65 ode;. FLOAT e
10d50 78 53 63 61 6c 65 3b 0a 20 20 20 20 46 4c 4f 41 xScale;. FLOA
10d60 54 20 65 79 53 63 61 6c 65 3b 0a 20 20 20 20 4c T eyScale;. L
10d70 4f 4e 47 20 63 53 74 72 69 6e 67 73 3b 0a 20 20 ONG cStrings;.
10d80 20 20 45 4d 52 54 45 58 54 5b 31 5d 20 61 65 6d EMRTEXT[1] aem
10d90 72 74 65 78 74 3b 0a 7d 0a 61 6c 69 61 73 20 45 rtext;.}.alias E
10da0 4d 52 50 4f 4c 59 54 45 58 54 4f 55 54 41 2a 50 MRPOLYTEXTOUTA*P
10db0 45 4d 52 50 4f 4c 59 54 45 58 54 4f 55 54 41 3b EMRPOLYTEXTOUTA;
10dc0 0a 61 6c 69 61 73 20 45 4d 52 50 4f 4c 59 54 45 .alias EMRPOLYTE
10dd0 58 54 4f 55 54 41 20 45 4d 52 50 4f 4c 59 54 45 XTOUTA EMRPOLYTE
10de0 58 54 4f 55 54 57 3b 0a 61 6c 69 61 73 20 45 4d XTOUTW;.alias EM
10df0 52 50 4f 4c 59 54 45 58 54 4f 55 54 57 2a 50 45 RPOLYTEXTOUTW*PE
10e00 4d 52 50 4f 4c 59 54 45 58 54 4f 55 54 57 3b 0a MRPOLYTEXTOUTW;.
10e10 0a 73 74 72 75 63 74 20 45 4d 52 52 45 53 49 5a .struct EMRRESIZ
10e20 45 50 41 4c 45 54 54 45 0a 7b 0a 20 20 20 20 45 EPALETTE.{. E
10e30 4d 52 20 65 6d 72 3b 0a 20 20 20 20 44 57 4f 52 MR emr;. DWOR
10e40 44 20 69 68 50 61 6c 3b 0a 20 20 20 20 44 57 4f D ihPal;. DWO
10e50 52 44 20 63 45 6e 74 72 69 65 73 3b 0a 7d 0a 61 RD cEntries;.}.a
10e60 6c 69 61 73 20 45 4d 52 52 45 53 49 5a 45 50 41 lias EMRRESIZEPA
10e70 4c 45 54 54 45 2a 50 45 4d 52 52 45 53 49 5a 45 LETTE*PEMRRESIZE
10e80 50 41 4c 45 54 54 45 3b 0a 0a 73 74 72 75 63 74 PALETTE;..struct
10e90 20 45 4d 52 52 45 53 54 4f 52 45 44 43 0a 7b 0a EMRRESTOREDC.{.
10ea0 20 20 20 20 45 4d 52 20 65 6d 72 3b 0a 20 20 20 EMR emr;.
10eb0 20 4c 4f 4e 47 20 69 52 65 6c 61 74 69 76 65 3b LONG iRelative;
10ec0 0a 7d 0a 61 6c 69 61 73 20 45 4d 52 52 45 53 54 .}.alias EMRREST
10ed0 4f 52 45 44 43 2a 50 45 4d 52 52 45 53 54 4f 52 OREDC*PEMRRESTOR
10ee0 45 44 43 3b 0a 0a 73 74 72 75 63 74 20 45 4d 52 EDC;..struct EMR
10ef0 52 4f 55 4e 44 52 45 43 54 0a 7b 0a 20 20 20 20 ROUNDRECT.{.
10f00 45 4d 52 20 65 6d 72 3b 0a 20 20 20 20 52 45 43 EMR emr;. REC
10f10 54 4c 20 72 63 6c 42 6f 78 3b 0a 20 20 20 20 53 TL rclBox;. S
10f20 49 5a 45 4c 20 73 7a 6c 43 6f 72 6e 65 72 3b 0a IZEL szlCorner;.
10f30 7d 0a 61 6c 69 61 73 20 45 4d 52 52 4f 55 4e 44 }.alias EMRROUND
10f40 52 45 43 54 2a 50 45 4d 52 52 4f 55 4e 44 52 45 RECT*PEMRROUNDRE
10f50 43 54 3b 0a 0a 73 74 72 75 63 74 20 45 4d 52 53 CT;..struct EMRS
10f60 43 41 4c 45 56 49 45 57 50 4f 52 54 45 58 54 45 CALEVIEWPORTEXTE
10f70 58 0a 7b 0a 20 20 20 20 45 4d 52 20 65 6d 72 3b X.{. EMR emr;
10f80 0a 20 20 20 20 4c 4f 4e 47 20 78 4e 75 6d 3b 0a . LONG xNum;.
10f90 20 20 20 20 4c 4f 4e 47 20 78 44 65 6e 6f 6d 3b LONG xDenom;
10fa0 0a 20 20 20 20 4c 4f 4e 47 20 79 4e 75 6d 3b 0a . LONG yNum;.
10fb0 20 20 20 20 4c 4f 4e 47 20 79 44 65 6e 6f 6d 3b LONG yDenom;
10fc0 0a 7d 0a 61 6c 69 61 73 20 45 4d 52 53 43 41 4c .}.alias EMRSCAL
10fd0 45 56 49 45 57 50 4f 52 54 45 58 54 45 58 2a 50 EVIEWPORTEXTEX*P
10fe0 45 4d 52 53 43 41 4c 45 56 49 45 57 50 4f 52 54 EMRSCALEVIEWPORT
10ff0 45 58 54 45 58 3b 0a 61 6c 69 61 73 20 45 4d 52 EXTEX;.alias EMR
11000 53 43 41 4c 45 56 49 45 57 50 4f 52 54 45 58 54 SCALEVIEWPORTEXT
11010 45 58 20 45 4d 52 53 43 41 4c 45 57 49 4e 44 4f EX EMRSCALEWINDO
11020 57 45 58 54 45 58 3b 0a 61 6c 69 61 73 20 45 4d WEXTEX;.alias EM
11030 52 53 43 41 4c 45 57 49 4e 44 4f 57 45 58 54 45 RSCALEWINDOWEXTE
11040 58 2a 50 45 4d 52 53 43 41 4c 45 57 49 4e 44 4f X*PEMRSCALEWINDO
11050 57 45 58 54 45 58 3b 0a 0a 73 74 72 75 63 74 20 WEXTEX;..struct
11060 45 4d 52 53 45 4c 45 43 54 4f 42 4a 45 43 54 0a EMRSELECTOBJECT.
11070 7b 0a 20 20 20 20 45 4d 52 20 65 6d 72 3b 0a 20 {. EMR emr;.
11080 20 20 20 44 57 4f 52 44 20 69 68 4f 62 6a 65 63 DWORD ihObjec
11090 74 3b 0a 7d 0a 61 6c 69 61 73 20 45 4d 52 53 45 t;.}.alias EMRSE
110a0 4c 45 43 54 4f 42 4a 45 43 54 2a 50 45 4d 52 53 LECTOBJECT*PEMRS
110b0 45 4c 45 43 54 4f 42 4a 45 43 54 3b 0a 61 6c 69 ELECTOBJECT;.ali
110c0 61 73 20 45 4d 52 53 45 4c 45 43 54 4f 42 4a 45 as EMRSELECTOBJE
110d0 43 54 20 45 4d 52 44 45 4c 45 54 45 4f 42 4a 45 CT EMRDELETEOBJE
110e0 43 54 3b 0a 61 6c 69 61 73 20 45 4d 52 44 45 4c CT;.alias EMRDEL
110f0 45 54 45 4f 42 4a 45 43 54 2a 50 45 4d 52 44 45 ETEOBJECT*PEMRDE
11100 4c 45 54 45 4f 42 4a 45 43 54 3b 0a 0a 73 74 72 LETEOBJECT;..str
11110 75 63 74 20 45 4d 52 53 45 4c 45 43 54 50 41 4c uct EMRSELECTPAL
11120 45 54 54 45 0a 7b 0a 20 20 20 20 45 4d 52 20 65 ETTE.{. EMR e
11130 6d 72 3b 0a 20 20 20 20 44 57 4f 52 44 20 69 68 mr;. DWORD ih
11140 50 61 6c 3b 0a 7d 0a 61 6c 69 61 73 20 45 4d 52 Pal;.}.alias EMR
11150 53 45 4c 45 43 54 50 41 4c 45 54 54 45 2a 50 45 SELECTPALETTE*PE
11160 4d 52 53 45 4c 45 43 54 50 41 4c 45 54 54 45 3b MRSELECTPALETTE;
11170 0a 0a 73 74 72 75 63 74 20 45 4d 52 53 45 54 41 ..struct EMRSETA
11180 52 43 44 49 52 45 43 54 49 4f 4e 0a 7b 0a 20 20 RCDIRECTION.{.
11190 20 20 45 4d 52 20 65 6d 72 3b 0a 20 20 20 20 44 EMR emr;. D
111a0 57 4f 52 44 20 69 41 72 63 44 69 72 65 63 74 69 WORD iArcDirecti
111b0 6f 6e 3b 0a 7d 0a 61 6c 69 61 73 20 45 4d 52 53 on;.}.alias EMRS
111c0 45 54 41 52 43 44 49 52 45 43 54 49 4f 4e 2a 50 ETARCDIRECTION*P
111d0 45 4d 52 53 45 54 41 52 43 44 49 52 45 43 54 49 EMRSETARCDIRECTI
111e0 4f 4e 3b 0a 0a 73 74 72 75 63 74 20 45 4d 52 53 ON;..struct EMRS
111f0 45 54 54 45 58 54 43 4f 4c 4f 52 0a 7b 0a 20 20 ETTEXTCOLOR.{.
11200 20 20 45 4d 52 20 65 6d 72 3b 0a 20 20 20 20 43 EMR emr;. C
11210 4f 4c 4f 52 52 45 46 20 63 72 43 6f 6c 6f 72 3b OLORREF crColor;
11220 0a 7d 0a 61 6c 69 61 73 20 45 4d 52 53 45 54 54 .}.alias EMRSETT
11230 45 58 54 43 4f 4c 4f 52 2a 50 45 4d 52 53 45 54 EXTCOLOR*PEMRSET
11240 54 45 58 54 43 4f 4c 4f 52 3b 0a 61 6c 69 61 73 TEXTCOLOR;.alias
11250 20 45 4d 52 53 45 54 54 45 58 54 43 4f 4c 4f 52 EMRSETTEXTCOLOR
11260 20 45 4d 52 53 45 54 42 4b 43 4f 4c 4f 52 3b 0a EMRSETBKCOLOR;.
11270 61 6c 69 61 73 20 45 4d 52 53 45 54 42 4b 43 4f alias EMRSETBKCO
11280 4c 4f 52 2a 50 45 4d 52 53 45 54 42 4b 43 4f 4c LOR*PEMRSETBKCOL
11290 4f 52 3b 0a 0a 73 74 72 75 63 74 20 45 4d 52 53 OR;..struct EMRS
112a0 45 54 43 4f 4c 4f 52 41 44 4a 55 53 54 4d 45 4e ETCOLORADJUSTMEN
112b0 54 0a 7b 0a 20 20 20 20 45 4d 52 20 65 6d 72 3b T.{. EMR emr;
112c0 0a 20 20 20 20 43 4f 4c 4f 52 41 44 4a 55 53 54 . COLORADJUST
112d0 4d 45 4e 54 20 43 6f 6c 6f 72 41 64 6a 75 73 74 MENT ColorAdjust
112e0 6d 65 6e 74 3b 0a 7d 0a 61 6c 69 61 73 20 45 4d ment;.}.alias EM
112f0 52 53 45 54 43 4f 4c 4f 52 41 44 4a 55 53 54 4d RSETCOLORADJUSTM
11300 45 4e 54 2a 50 45 4d 52 53 45 54 43 4f 4c 4f 52 ENT*PEMRSETCOLOR
11310 41 44 4a 55 53 54 4d 45 4e 54 3b 0a 0a 73 74 72 ADJUSTMENT;..str
11320 75 63 74 20 45 4d 52 53 45 54 44 49 42 49 54 53 uct EMRSETDIBITS
11330 54 4f 44 45 56 49 43 45 0a 7b 0a 20 20 20 20 45 TODEVICE.{. E
11340 4d 52 20 65 6d 72 3b 0a 20 20 20 20 52 45 43 54 MR emr;. RECT
11350 4c 20 72 63 6c 42 6f 75 6e 64 73 3b 0a 20 20 20 L rclBounds;.
11360 20 4c 4f 4e 47 20 78 44 65 73 74 3b 0a 20 20 20 LONG xDest;.
11370 20 4c 4f 4e 47 20 79 44 65 73 74 3b 0a 20 20 20 LONG yDest;.
11380 20 4c 4f 4e 47 20 78 53 72 63 3b 0a 20 20 20 20 LONG xSrc;.
11390 4c 4f 4e 47 20 79 53 72 63 3b 0a 20 20 20 20 4c LONG ySrc;. L
113a0 4f 4e 47 20 63 78 53 72 63 3b 0a 20 20 20 20 4c ONG cxSrc;. L
113b0 4f 4e 47 20 63 79 53 72 63 3b 0a 20 20 20 20 44 ONG cySrc;. D
113c0 57 4f 52 44 20 6f 66 66 42 6d 69 53 72 63 3b 0a WORD offBmiSrc;.
113d0 20 20 20 20 44 57 4f 52 44 20 63 62 42 6d 69 53 DWORD cbBmiS
113e0 72 63 3b 0a 20 20 20 20 44 57 4f 52 44 20 6f 66 rc;. DWORD of
113f0 66 42 69 74 73 53 72 63 3b 0a 20 20 20 20 44 57 fBitsSrc;. DW
11400 4f 52 44 20 63 62 42 69 74 73 53 72 63 3b 0a 20 ORD cbBitsSrc;.
11410 20 20 20 44 57 4f 52 44 20 69 55 73 61 67 65 53 DWORD iUsageS
11420 72 63 3b 0a 20 20 20 20 44 57 4f 52 44 20 69 53 rc;. DWORD iS
11430 74 61 72 74 53 63 61 6e 3b 0a 20 20 20 20 44 57 tartScan;. DW
11440 4f 52 44 20 63 53 63 61 6e 73 3b 0a 7d 0a 61 6c ORD cScans;.}.al
11450 69 61 73 20 45 4d 52 53 45 54 44 49 42 49 54 53 ias EMRSETDIBITS
11460 54 4f 44 45 56 49 43 45 2a 50 45 4d 52 53 45 54 TODEVICE*PEMRSET
11470 44 49 42 49 54 53 54 4f 44 45 56 49 43 45 3b 0a DIBITSTODEVICE;.
11480 0a 73 74 72 75 63 74 20 45 4d 52 53 45 54 4d 41 .struct EMRSETMA
11490 50 50 45 52 46 4c 41 47 53 0a 7b 0a 20 20 20 20 PPERFLAGS.{.
114a0 45 4d 52 20 65 6d 72 3b 0a 20 20 20 20 44 57 4f EMR emr;. DWO
114b0 52 44 20 64 77 46 6c 61 67 73 3b 0a 7d 0a 61 6c RD dwFlags;.}.al
114c0 69 61 73 20 45 4d 52 53 45 54 4d 41 50 50 45 52 ias EMRSETMAPPER
114d0 46 4c 41 47 53 2a 50 45 4d 52 53 45 54 4d 41 50 FLAGS*PEMRSETMAP
114e0 50 45 52 46 4c 41 47 53 3b 0a 0a 73 74 72 75 63 PERFLAGS;..struc
114f0 74 20 45 4d 52 53 45 54 4d 49 54 45 52 4c 49 4d t EMRSETMITERLIM
11500 49 54 0a 7b 0a 20 20 20 20 45 4d 52 20 65 6d 72 IT.{. EMR emr
11510 3b 0a 20 20 20 20 46 4c 4f 41 54 20 65 4d 69 74 ;. FLOAT eMit
11520 65 72 4c 69 6d 69 74 3b 0a 7d 0a 61 6c 69 61 73 erLimit;.}.alias
11530 20 45 4d 52 53 45 54 4d 49 54 45 52 4c 49 4d 49 EMRSETMITERLIMI
11540 54 2a 50 45 4d 52 53 45 54 4d 49 54 45 52 4c 49 T*PEMRSETMITERLI
11550 4d 49 54 3b 0a 0a 73 74 72 75 63 74 20 45 4d 52 MIT;..struct EMR
11560 53 45 54 50 41 4c 45 54 54 45 45 4e 54 52 49 45 SETPALETTEENTRIE
11570 53 0a 7b 0a 20 20 20 20 45 4d 52 20 65 6d 72 3b S.{. EMR emr;
11580 0a 20 20 20 20 44 57 4f 52 44 20 69 68 50 61 6c . DWORD ihPal
11590 3b 0a 20 20 20 20 44 57 4f 52 44 20 69 53 74 61 ;. DWORD iSta
115a0 72 74 3b 0a 20 20 20 20 44 57 4f 52 44 20 63 45 rt;. DWORD cE
115b0 6e 74 72 69 65 73 3b 0a 20 20 20 20 50 41 4c 45 ntries;. PALE
115c0 54 54 45 45 4e 54 52 59 5b 31 5d 20 61 50 61 6c TTEENTRY[1] aPal
115d0 45 6e 74 72 69 65 73 3b 0a 7d 0a 61 6c 69 61 73 Entries;.}.alias
115e0 20 45 4d 52 53 45 54 50 41 4c 45 54 54 45 45 4e EMRSETPALETTEEN
115f0 54 52 49 45 53 2a 50 45 4d 52 53 45 54 50 41 4c TRIES*PEMRSETPAL
11600 45 54 54 45 45 4e 54 52 49 45 53 3b 0a 0a 73 74 ETTEENTRIES;..st
11610 72 75 63 74 20 45 4d 52 53 45 54 50 49 58 45 4c ruct EMRSETPIXEL
11620 56 0a 7b 0a 20 20 20 20 45 4d 52 20 65 6d 72 3b V.{. EMR emr;
11630 0a 20 20 20 20 50 4f 49 4e 54 4c 20 70 74 6c 50 . POINTL ptlP
11640 69 78 65 6c 3b 0a 20 20 20 20 43 4f 4c 4f 52 52 ixel;. COLORR
11650 45 46 20 63 72 43 6f 6c 6f 72 3b 0a 7d 0a 61 6c EF crColor;.}.al
11660 69 61 73 20 45 4d 52 53 45 54 50 49 58 45 4c 56 ias EMRSETPIXELV
11670 2a 50 45 4d 52 53 45 54 50 49 58 45 4c 56 3b 0a *PEMRSETPIXELV;.
11680 0a 73 74 72 75 63 74 20 45 4d 52 53 45 54 56 49 .struct EMRSETVI
11690 45 57 50 4f 52 54 45 58 54 45 58 0a 7b 0a 20 20 EWPORTEXTEX.{.
116a0 20 20 45 4d 52 20 65 6d 72 3b 0a 20 20 20 20 53 EMR emr;. S
116b0 49 5a 45 4c 20 73 7a 6c 45 78 74 65 6e 74 3b 0a IZEL szlExtent;.
116c0 7d 0a 61 6c 69 61 73 20 45 4d 52 53 45 54 56 49 }.alias EMRSETVI
116d0 45 57 50 4f 52 54 45 58 54 45 58 2a 50 45 4d 52 EWPORTEXTEX*PEMR
116e0 53 45 54 56 49 45 57 50 4f 52 54 45 58 54 45 58 SETVIEWPORTEXTEX
116f0 3b 0a 61 6c 69 61 73 20 45 4d 52 53 45 54 56 49 ;.alias EMRSETVI
11700 45 57 50 4f 52 54 45 58 54 45 58 20 45 4d 52 53 EWPORTEXTEX EMRS
11710 45 54 57 49 4e 44 4f 57 45 58 54 45 58 3b 0a 61 ETWINDOWEXTEX;.a
11720 6c 69 61 73 20 45 4d 52 53 45 54 57 49 4e 44 4f lias EMRSETWINDO
11730 57 45 58 54 45 58 2a 50 45 4d 52 53 45 54 57 49 WEXTEX*PEMRSETWI
11740 4e 44 4f 57 45 58 54 45 58 3b 0a 0a 73 74 72 75 NDOWEXTEX;..stru
11750 63 74 20 45 4d 52 53 45 54 56 49 45 57 50 4f 52 ct EMRSETVIEWPOR
11760 54 4f 52 47 45 58 0a 7b 0a 20 20 20 20 45 4d 52 TORGEX.{. EMR
11770 20 65 6d 72 3b 0a 20 20 20 20 50 4f 49 4e 54 4c emr;. POINTL
11780 20 70 74 6c 4f 72 69 67 69 6e 3b 0a 7d 0a 61 6c ptlOrigin;.}.al
11790 69 61 73 20 45 4d 52 53 45 54 56 49 45 57 50 4f ias EMRSETVIEWPO
117a0 52 54 4f 52 47 45 58 2a 50 45 4d 52 53 45 54 56 RTORGEX*PEMRSETV
117b0 49 45 57 50 4f 52 54 4f 52 47 45 58 3b 0a 61 6c IEWPORTORGEX;.al
117c0 69 61 73 20 45 4d 52 53 45 54 56 49 45 57 50 4f ias EMRSETVIEWPO
117d0 52 54 4f 52 47 45 58 20 45 4d 52 53 45 54 57 49 RTORGEX EMRSETWI
117e0 4e 44 4f 57 4f 52 47 45 58 3b 0a 61 6c 69 61 73 NDOWORGEX;.alias
117f0 20 45 4d 52 53 45 54 57 49 4e 44 4f 57 4f 52 47 EMRSETWINDOWORG
11800 45 58 2a 50 45 4d 52 53 45 54 57 49 4e 44 4f 57 EX*PEMRSETWINDOW
11810 4f 52 47 45 58 3b 0a 61 6c 69 61 73 20 45 4d 52 ORGEX;.alias EMR
11820 53 45 54 56 49 45 57 50 4f 52 54 4f 52 47 45 58 SETVIEWPORTORGEX
11830 20 45 4d 52 53 45 54 42 52 55 53 48 4f 52 47 45 EMRSETBRUSHORGE
11840 58 3b 0a 61 6c 69 61 73 20 45 4d 52 53 45 54 42 X;.alias EMRSETB
11850 52 55 53 48 4f 52 47 45 58 2a 50 45 4d 52 53 45 RUSHORGEX*PEMRSE
11860 54 42 52 55 53 48 4f 52 47 45 58 3b 0a 0a 73 74 TBRUSHORGEX;..st
11870 72 75 63 74 20 45 4d 52 53 45 54 57 4f 52 4c 44 ruct EMRSETWORLD
11880 54 52 41 4e 53 46 4f 52 4d 0a 7b 0a 20 20 20 20 TRANSFORM.{.
11890 45 4d 52 20 65 6d 72 3b 0a 20 20 20 20 58 46 4f EMR emr;. XFO
118a0 52 4d 20 78 66 6f 72 6d 3b 0a 7d 0a 61 6c 69 61 RM xform;.}.alia
118b0 73 20 45 4d 52 53 45 54 57 4f 52 4c 44 54 52 41 s EMRSETWORLDTRA
118c0 4e 53 46 4f 52 4d 2a 50 45 4d 52 53 45 54 57 4f NSFORM*PEMRSETWO
118d0 52 4c 44 54 52 41 4e 53 46 4f 52 4d 3b 0a 0a 73 RLDTRANSFORM;..s
118e0 74 72 75 63 74 20 45 4d 52 53 54 52 45 54 43 48 truct EMRSTRETCH
118f0 42 4c 54 0a 7b 0a 20 20 20 20 45 4d 52 20 65 6d BLT.{. EMR em
11900 72 3b 0a 20 20 20 20 52 45 43 54 4c 20 72 63 6c r;. RECTL rcl
11910 42 6f 75 6e 64 73 3b 0a 20 20 20 20 4c 4f 4e 47 Bounds;. LONG
11920 20 78 44 65 73 74 3b 0a 20 20 20 20 4c 4f 4e 47 xDest;. LONG
11930 20 79 44 65 73 74 3b 0a 20 20 20 20 4c 4f 4e 47 yDest;. LONG
11940 20 63 78 44 65 73 74 3b 0a 20 20 20 20 4c 4f 4e cxDest;. LON
11950 47 20 63 79 44 65 73 74 3b 0a 20 20 20 20 44 57 G cyDest;. DW
11960 4f 52 44 20 64 77 52 6f 70 3b 0a 20 20 20 20 4c ORD dwRop;. L
11970 4f 4e 47 20 78 53 72 63 3b 0a 20 20 20 20 4c 4f ONG xSrc;. LO
11980 4e 47 20 79 53 72 63 3b 0a 20 20 20 20 58 46 4f NG ySrc;. XFO
11990 52 4d 20 78 66 6f 72 6d 53 72 63 3b 0a 20 20 20 RM xformSrc;.
119a0 20 43 4f 4c 4f 52 52 45 46 20 63 72 42 6b 43 6f COLORREF crBkCo
119b0 6c 6f 72 53 72 63 3b 0a 20 20 20 20 44 57 4f 52 lorSrc;. DWOR
119c0 44 20 69 55 73 61 67 65 53 72 63 3b 0a 20 20 20 D iUsageSrc;.
119d0 20 44 57 4f 52 44 20 6f 66 66 42 6d 69 53 72 63 DWORD offBmiSrc
119e0 3b 0a 20 20 20 20 44 57 4f 52 44 20 63 62 42 6d ;. DWORD cbBm
119f0 69 53 72 63 3b 0a 20 20 20 20 44 57 4f 52 44 20 iSrc;. DWORD
11a00 6f 66 66 42 69 74 73 53 72 63 3b 0a 20 20 20 20 offBitsSrc;.
11a10 44 57 4f 52 44 20 63 62 42 69 74 73 53 72 63 3b DWORD cbBitsSrc;
11a20 0a 20 20 20 20 4c 4f 4e 47 20 63 78 53 72 63 3b . LONG cxSrc;
11a30 0a 20 20 20 20 4c 4f 4e 47 20 63 79 53 72 63 3b . LONG cySrc;
11a40 0a 7d 0a 61 6c 69 61 73 20 45 4d 52 53 54 52 45 .}.alias EMRSTRE
11a50 54 43 48 42 4c 54 2a 50 45 4d 52 53 54 52 45 54 TCHBLT*PEMRSTRET
11a60 43 48 42 4c 54 3b 0a 0a 73 74 72 75 63 74 20 45 CHBLT;..struct E
11a70 4d 52 53 54 52 45 54 43 48 44 49 42 49 54 53 0a MRSTRETCHDIBITS.
11a80 7b 0a 20 20 20 20 45 4d 52 20 65 6d 72 3b 0a 20 {. EMR emr;.
11a90 20 20 20 52 45 43 54 4c 20 72 63 6c 42 6f 75 6e RECTL rclBoun
11aa0 64 73 3b 0a 20 20 20 20 4c 4f 4e 47 20 78 44 65 ds;. LONG xDe
11ab0 73 74 3b 0a 20 20 20 20 4c 4f 4e 47 20 79 44 65 st;. LONG yDe
11ac0 73 74 3b 0a 20 20 20 20 4c 4f 4e 47 20 78 53 72 st;. LONG xSr
11ad0 63 3b 0a 20 20 20 20 4c 4f 4e 47 20 79 53 72 63 c;. LONG ySrc
11ae0 3b 0a 20 20 20 20 4c 4f 4e 47 20 63 78 53 72 63 ;. LONG cxSrc
11af0 3b 0a 20 20 20 20 4c 4f 4e 47 20 63 79 53 72 63 ;. LONG cySrc
11b00 3b 0a 20 20 20 20 44 57 4f 52 44 20 6f 66 66 42 ;. DWORD offB
11b10 6d 69 53 72 63 3b 0a 20 20 20 20 44 57 4f 52 44 miSrc;. DWORD
11b20 20 63 62 42 6d 69 53 72 63 3b 0a 20 20 20 20 44 cbBmiSrc;. D
11b30 57 4f 52 44 20 6f 66 66 42 69 74 73 53 72 63 3b WORD offBitsSrc;
11b40 0a 20 20 20 20 44 57 4f 52 44 20 63 62 42 69 74 . DWORD cbBit
11b50 73 53 72 63 3b 0a 20 20 20 20 44 57 4f 52 44 20 sSrc;. DWORD
11b60 69 55 73 61 67 65 53 72 63 3b 0a 20 20 20 20 44 iUsageSrc;. D
11b70 57 4f 52 44 20 64 77 52 6f 70 3b 0a 20 20 20 20 WORD dwRop;.
11b80 4c 4f 4e 47 20 63 78 44 65 73 74 3b 0a 20 20 20 LONG cxDest;.
11b90 20 4c 4f 4e 47 20 63 79 44 65 73 74 3b 0a 7d 0a LONG cyDest;.}.
11ba0 61 6c 69 61 73 20 45 4d 52 53 54 52 45 54 43 48 alias EMRSTRETCH
11bb0 44 49 42 49 54 53 2a 50 45 4d 52 53 54 52 45 54 DIBITS*PEMRSTRET
11bc0 43 48 44 49 42 49 54 53 3b 0a 0a 73 74 72 75 63 CHDIBITS;..struc
11bd0 74 20 45 4d 52 41 42 4f 52 54 50 41 54 48 0a 7b t EMRABORTPATH.{
11be0 0a 20 20 20 20 45 4d 52 20 65 6d 72 3b 0a 7d 0a . EMR emr;.}.
11bf0 61 6c 69 61 73 20 45 4d 52 41 42 4f 52 54 50 41 alias EMRABORTPA
11c00 54 48 2a 50 45 4d 52 41 42 4f 52 54 50 41 54 48 TH*PEMRABORTPATH
11c10 3b 0a 61 6c 69 61 73 20 45 4d 52 41 42 4f 52 54 ;.alias EMRABORT
11c20 50 41 54 48 20 45 4d 52 42 45 47 49 4e 50 41 54 PATH EMRBEGINPAT
11c30 48 3b 0a 61 6c 69 61 73 20 45 4d 52 42 45 47 49 H;.alias EMRBEGI
11c40 4e 50 41 54 48 2a 50 45 4d 52 42 45 47 49 4e 50 NPATH*PEMRBEGINP
11c50 41 54 48 3b 0a 61 6c 69 61 73 20 45 4d 52 41 42 ATH;.alias EMRAB
11c60 4f 52 54 50 41 54 48 20 45 4d 52 45 4e 44 50 41 ORTPATH EMRENDPA
11c70 54 48 3b 0a 61 6c 69 61 73 20 45 4d 52 45 4e 44 TH;.alias EMREND
11c80 50 41 54 48 2a 50 45 4d 52 45 4e 44 50 41 54 48 PATH*PEMRENDPATH
11c90 3b 0a 61 6c 69 61 73 20 45 4d 52 41 42 4f 52 54 ;.alias EMRABORT
11ca0 50 41 54 48 20 45 4d 52 43 4c 4f 53 45 46 49 47 PATH EMRCLOSEFIG
11cb0 55 52 45 3b 0a 61 6c 69 61 73 20 45 4d 52 43 4c URE;.alias EMRCL
11cc0 4f 53 45 46 49 47 55 52 45 2a 50 45 4d 52 43 4c OSEFIGURE*PEMRCL
11cd0 4f 53 45 46 49 47 55 52 45 3b 0a 61 6c 69 61 73 OSEFIGURE;.alias
11ce0 20 45 4d 52 41 42 4f 52 54 50 41 54 48 20 45 4d EMRABORTPATH EM
11cf0 52 46 4c 41 54 54 45 4e 50 41 54 48 3b 0a 61 6c RFLATTENPATH;.al
11d00 69 61 73 20 45 4d 52 46 4c 41 54 54 45 4e 50 41 ias EMRFLATTENPA
11d10 54 48 2a 50 45 4d 52 46 4c 41 54 54 45 4e 50 41 TH*PEMRFLATTENPA
11d20 54 48 3b 0a 61 6c 69 61 73 20 45 4d 52 41 42 4f TH;.alias EMRABO
11d30 52 54 50 41 54 48 20 45 4d 52 57 49 44 45 4e 50 RTPATH EMRWIDENP
11d40 41 54 48 3b 0a 61 6c 69 61 73 20 45 4d 52 57 49 ATH;.alias EMRWI
11d50 44 45 4e 50 41 54 48 2a 50 45 4d 52 57 49 44 45 DENPATH*PEMRWIDE
11d60 4e 50 41 54 48 3b 0a 61 6c 69 61 73 20 45 4d 52 NPATH;.alias EMR
11d70 41 42 4f 52 54 50 41 54 48 20 45 4d 52 53 45 54 ABORTPATH EMRSET
11d80 4d 45 54 41 52 47 4e 3b 0a 61 6c 69 61 73 20 45 METARGN;.alias E
11d90 4d 52 53 45 54 4d 45 54 41 52 47 4e 2a 50 45 4d MRSETMETARGN*PEM
11da0 52 53 45 54 4d 45 54 41 52 47 4e 3b 0a 61 6c 69 RSETMETARGN;.ali
11db0 61 73 20 45 4d 52 41 42 4f 52 54 50 41 54 48 20 as EMRABORTPATH
11dc0 45 4d 52 53 41 56 45 44 43 3b 0a 61 6c 69 61 73 EMRSAVEDC;.alias
11dd0 20 45 4d 52 53 41 56 45 44 43 2a 50 45 4d 52 53 EMRSAVEDC*PEMRS
11de0 41 56 45 44 43 3b 0a 61 6c 69 61 73 20 45 4d 52 AVEDC;.alias EMR
11df0 41 42 4f 52 54 50 41 54 48 20 45 4d 52 52 45 41 ABORTPATH EMRREA
11e00 4c 49 5a 45 50 41 4c 45 54 54 45 3b 0a 61 6c 69 LIZEPALETTE;.ali
11e10 61 73 20 45 4d 52 52 45 41 4c 49 5a 45 50 41 4c as EMRREALIZEPAL
11e20 45 54 54 45 2a 50 45 4d 52 52 45 41 4c 49 5a 45 ETTE*PEMRREALIZE
11e30 50 41 4c 45 54 54 45 3b 0a 0a 73 74 72 75 63 74 PALETTE;..struct
11e40 20 45 4d 52 53 45 4c 45 43 54 43 4c 49 50 50 41 EMRSELECTCLIPPA
11e50 54 48 0a 7b 0a 20 20 20 20 45 4d 52 20 65 6d 72 TH.{. EMR emr
11e60 3b 0a 20 20 20 20 44 57 4f 52 44 20 69 4d 6f 64 ;. DWORD iMod
11e70 65 3b 0a 7d 0a 61 6c 69 61 73 20 45 4d 52 53 45 e;.}.alias EMRSE
11e80 4c 45 43 54 43 4c 49 50 50 41 54 48 2a 50 45 4d LECTCLIPPATH*PEM
11e90 52 53 45 4c 45 43 54 43 4c 49 50 50 41 54 48 3b RSELECTCLIPPATH;
11ea0 0a 61 6c 69 61 73 20 45 4d 52 53 45 4c 45 43 54 .alias EMRSELECT
11eb0 43 4c 49 50 50 41 54 48 20 45 4d 52 53 45 54 42 CLIPPATH EMRSETB
11ec0 4b 4d 4f 44 45 3b 0a 61 6c 69 61 73 20 45 4d 52 KMODE;.alias EMR
11ed0 53 45 54 42 4b 4d 4f 44 45 2a 50 45 4d 52 53 45 SETBKMODE*PEMRSE
11ee0 54 42 4b 4d 4f 44 45 3b 0a 61 6c 69 61 73 20 45 TBKMODE;.alias E
11ef0 4d 52 53 45 4c 45 43 54 43 4c 49 50 50 41 54 48 MRSELECTCLIPPATH
11f00 20 45 4d 52 53 45 54 4d 41 50 4d 4f 44 45 3b 0a EMRSETMAPMODE;.
11f10 61 6c 69 61 73 20 45 4d 52 53 45 54 4d 41 50 4d alias EMRSETMAPM
11f20 4f 44 45 2a 50 45 4d 52 53 45 54 4d 41 50 4d 4f ODE*PEMRSETMAPMO
11f30 44 45 3b 0a 61 6c 69 61 73 20 45 4d 52 53 45 4c DE;.alias EMRSEL
11f40 45 43 54 43 4c 49 50 50 41 54 48 20 45 4d 52 53 ECTCLIPPATH EMRS
11f50 45 54 50 4f 4c 59 46 49 4c 4c 4d 4f 44 45 3b 0a ETPOLYFILLMODE;.
11f60 61 6c 69 61 73 20 45 4d 52 53 45 54 50 4f 4c 59 alias EMRSETPOLY
11f70 46 49 4c 4c 4d 4f 44 45 2a 50 45 4d 52 53 45 54 FILLMODE*PEMRSET
11f80 50 4f 4c 59 46 49 4c 4c 4d 4f 44 45 3b 0a 61 6c POLYFILLMODE;.al
11f90 69 61 73 20 45 4d 52 53 45 4c 45 43 54 43 4c 49 ias EMRSELECTCLI
11fa0 50 50 41 54 48 20 45 4d 52 53 45 54 52 4f 50 32 PPATH EMRSETROP2
11fb0 3b 0a 61 6c 69 61 73 20 45 4d 52 53 45 54 52 4f ;.alias EMRSETRO
11fc0 50 32 2a 50 45 4d 52 53 45 54 52 4f 50 32 3b 0a P2*PEMRSETROP2;.
11fd0 61 6c 69 61 73 20 45 4d 52 53 45 4c 45 43 54 43 alias EMRSELECTC
11fe0 4c 49 50 50 41 54 48 20 45 4d 52 53 45 54 53 54 LIPPATH EMRSETST
11ff0 52 45 54 43 48 42 4c 54 4d 4f 44 45 3b 0a 61 6c RETCHBLTMODE;.al
12000 69 61 73 20 45 4d 52 53 45 54 53 54 52 45 54 43 ias EMRSETSTRETC
12010 48 42 4c 54 4d 4f 44 45 2a 50 45 4d 52 53 45 54 HBLTMODE*PEMRSET
12020 53 54 52 45 54 43 48 42 4c 54 4d 4f 44 45 3b 0a STRETCHBLTMODE;.
12030 61 6c 69 61 73 20 45 4d 52 53 45 4c 45 43 54 43 alias EMRSELECTC
12040 4c 49 50 50 41 54 48 20 45 4d 52 53 45 54 49 43 LIPPATH EMRSETIC
12050 4d 4d 4f 44 45 3b 0a 61 6c 69 61 73 20 45 4d 52 MMODE;.alias EMR
12060 53 45 54 49 43 4d 4d 4f 44 45 2a 50 45 4d 52 53 SETICMMODE*PEMRS
12070 45 54 49 43 4d 4d 4f 44 45 3b 0a 61 6c 69 61 73 ETICMMODE;.alias
12080 20 45 4d 52 53 45 4c 45 43 54 43 4c 49 50 50 41 EMRSELECTCLIPPA
12090 54 48 20 45 4d 52 53 45 54 54 45 58 54 41 4c 49 TH EMRSETTEXTALI
120a0 47 4e 3b 0a 61 6c 69 61 73 20 45 4d 52 53 45 54 GN;.alias EMRSET
120b0 54 45 58 54 41 4c 49 47 4e 2a 50 45 4d 52 53 45 TEXTALIGN*PEMRSE
120c0 54 54 45 58 54 41 4c 49 47 4e 3b 0a 61 6c 69 61 TTEXTALIGN;.alia
120d0 73 20 45 4d 52 53 45 4c 45 43 54 43 4c 49 50 50 s EMRSELECTCLIPP
120e0 41 54 48 20 45 4d 52 45 4e 41 42 4c 45 49 43 4d ATH EMRENABLEICM
120f0 3b 0a 61 6c 69 61 73 20 45 4d 52 45 4e 41 42 4c ;.alias EMRENABL
12100 45 49 43 4d 2a 50 45 4d 52 45 4e 41 42 4c 45 49 EICM*PEMRENABLEI
12110 43 4d 3b 0a 73 74 61 74 69 63 0a 0a 69 66 20 28 CM;.static..if (
12120 57 49 4e 56 45 52 20 3e 3d 20 30 78 30 35 30 30 WINVER >= 0x0500
12130 29 0a 7b 0a 20 20 20 20 61 6c 69 61 73 20 45 4d ).{. alias EM
12140 52 53 45 4c 45 43 54 43 4c 49 50 50 41 54 48 20 RSELECTCLIPPATH
12150 45 4d 52 53 45 54 4c 41 59 4f 55 54 3b 0a 20 20 EMRSETLAYOUT;.
12160 20 20 61 6c 69 61 73 20 45 4d 52 53 45 54 4c 41 alias EMRSETLA
12170 59 4f 55 54 2a 50 45 4d 52 53 45 54 4c 41 59 4f YOUT*PEMRSETLAYO
12180 55 54 3b 0a 7d 0a 0a 61 6c 69 67 6e 20 28 32 29 UT;.}..align (2)
12190 20 3a 0a 73 74 72 75 63 74 20 4d 45 54 41 48 45 :.struct METAHE
121a0 41 44 45 52 0a 7b 0a 20 20 20 20 57 4f 52 44 20 ADER.{. WORD
121b0 6d 74 54 79 70 65 3b 0a 20 20 20 20 57 4f 52 44 mtType;. WORD
121c0 20 6d 74 48 65 61 64 65 72 53 69 7a 65 3b 0a 20 mtHeaderSize;.
121d0 20 20 20 57 4f 52 44 20 6d 74 56 65 72 73 69 6f WORD mtVersio
121e0 6e 3b 0a 20 20 20 20 44 57 4f 52 44 20 6d 74 53 n;. DWORD mtS
121f0 69 7a 65 3b 0a 20 20 20 20 57 4f 52 44 20 6d 74 ize;. WORD mt
12200 4e 6f 4f 62 6a 65 63 74 73 3b 0a 20 20 20 20 44 NoObjects;. D
12210 57 4f 52 44 20 6d 74 4d 61 78 52 65 63 6f 72 64 WORD mtMaxRecord
12220 3b 0a 20 20 20 20 57 4f 52 44 20 6d 74 4e 6f 50 ;. WORD mtNoP
12230 61 72 61 6d 65 74 65 72 73 3b 0a 7d 0a 61 6c 69 arameters;.}.ali
12240 61 73 20 4d 45 54 41 48 45 41 44 45 52 2a 50 4d as METAHEADER*PM
12250 45 54 41 48 45 41 44 45 52 3b 0a 61 6c 69 61 73 ETAHEADER;.alias
12260 20 4d 45 54 41 48 45 41 44 45 52 2a 4c 50 4d 45 METAHEADER*LPME
12270 54 41 48 45 41 44 45 52 3b 0a 0a 61 6c 69 67 6e TAHEADER;..align
12280 20 3a 0a 0a 73 74 72 75 63 74 20 45 4e 48 4d 45 :..struct ENHME
12290 54 41 48 45 41 44 45 52 0a 7b 0a 20 20 20 20 44 TAHEADER.{. D
122a0 57 4f 52 44 20 69 54 79 70 65 3b 0a 20 20 20 20 WORD iType;.
122b0 44 57 4f 52 44 20 6e 53 69 7a 65 3b 0a 20 20 20 DWORD nSize;.
122c0 20 52 45 43 54 4c 20 72 63 6c 42 6f 75 6e 64 73 RECTL rclBounds
122d0 3b 0a 20 20 20 20 52 45 43 54 4c 20 72 63 6c 46 ;. RECTL rclF
122e0 72 61 6d 65 3b 0a 20 20 20 20 44 57 4f 52 44 20 rame;. DWORD
122f0 64 53 69 67 6e 61 74 75 72 65 20 3d 20 45 4e 48 dSignature = ENH
12300 4d 45 54 41 5f 53 49 47 4e 41 54 55 52 45 3b 0a META_SIGNATURE;.
12310 20 20 20 20 44 57 4f 52 44 20 6e 56 65 72 73 69 DWORD nVersi
12320 6f 6e 3b 0a 20 20 20 20 44 57 4f 52 44 20 6e 42 on;. DWORD nB
12330 79 74 65 73 3b 0a 20 20 20 20 44 57 4f 52 44 20 ytes;. DWORD
12340 6e 52 65 63 6f 72 64 73 3b 0a 20 20 20 20 57 4f nRecords;. WO
12350 52 44 20 6e 48 61 6e 64 6c 65 73 3b 0a 20 20 20 RD nHandles;.
12360 20 57 4f 52 44 20 73 52 65 73 65 72 76 65 64 3b WORD sReserved;
12370 0a 20 20 20 20 44 57 4f 52 44 20 6e 44 65 73 63 . DWORD nDesc
12380 72 69 70 74 69 6f 6e 3b 0a 20 20 20 20 44 57 4f ription;. DWO
12390 52 44 20 6f 66 66 44 65 73 63 72 69 70 74 69 6f RD offDescriptio
123a0 6e 3b 0a 20 20 20 20 44 57 4f 52 44 20 6e 50 61 n;. DWORD nPa
123b0 6c 45 6e 74 72 69 65 73 3b 0a 20 20 20 20 53 49 lEntries;. SI
123c0 5a 45 4c 20 73 7a 6c 44 65 76 69 63 65 3b 0a 20 ZEL szlDevice;.
123d0 20 20 20 53 49 5a 45 4c 20 73 7a 6c 4d 69 6c 6c SIZEL szlMill
123e0 69 6d 65 74 65 72 73 3b 0a 20 20 20 20 73 74 61 imeters;. sta
123f0 74 69 63 0a 0a 20 20 20 20 69 66 20 28 57 49 4e tic.. if (WIN
12400 56 45 52 20 3e 3d 20 30 78 30 34 30 30 29 0a 20 VER >= 0x0400).
12410 20 20 20 7b 0a 20 20 20 20 20 20 20 20 44 57 4f {. DWO
12420 52 44 20 63 62 50 69 78 65 6c 46 6f 72 6d 61 74 RD cbPixelFormat
12430 3b 0a 20 20 20 20 20 20 20 20 44 57 4f 52 44 20 ;. DWORD
12440 6f 66 66 50 69 78 65 6c 46 6f 72 6d 61 74 3b 0a offPixelFormat;.
12450 20 20 20 20 20 20 20 20 44 57 4f 52 44 20 62 4f DWORD bO
12460 70 65 6e 47 4c 3b 0a 20 20 20 20 7d 0a 0a 20 20 penGL;. }..
12470 20 20 73 74 61 74 69 63 0a 0a 20 20 20 20 69 66 static.. if
12480 20 28 57 49 4e 56 45 52 20 3e 3d 20 30 78 30 35 (WINVER >= 0x05
12490 30 30 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 00). {.
124a0 20 20 53 49 5a 45 4c 20 73 7a 6c 4d 69 63 72 6f SIZEL szlMicro
124b0 6d 65 74 65 72 73 3b 0a 20 20 20 20 7d 0a 7d 0a meters;. }.}.
124c0 61 6c 69 61 73 20 45 4e 48 4d 45 54 41 48 45 41 alias ENHMETAHEA
124d0 44 45 52 2a 50 45 4e 48 4d 45 54 41 48 45 41 44 DER*PENHMETAHEAD
124e0 45 52 2c 20 4c 50 45 4e 48 4d 45 54 41 48 45 41 ER, LPENHMETAHEA
124f0 44 45 52 3b 0a 0a 73 74 72 75 63 74 20 4d 45 54 DER;..struct MET
12500 41 52 45 43 4f 52 44 0a 7b 0a 20 20 20 20 44 57 ARECORD.{. DW
12510 4f 52 44 20 72 64 53 69 7a 65 3b 0a 20 20 20 20 ORD rdSize;.
12520 57 4f 52 44 20 72 64 46 75 6e 63 74 69 6f 6e 3b WORD rdFunction;
12530 0a 20 20 20 20 57 4f 52 44 5b 31 5d 20 72 64 50 . WORD[1] rdP
12540 61 72 6d 3b 0a 7d 0a 61 6c 69 61 73 20 4d 45 54 arm;.}.alias MET
12550 41 52 45 43 4f 52 44 2a 50 4d 45 54 41 52 45 43 ARECORD*PMETAREC
12560 4f 52 44 3b 0a 61 6c 69 61 73 20 4d 45 54 41 52 ORD;.alias METAR
12570 45 43 4f 52 44 2a 4c 50 4d 45 54 41 52 45 43 4f ECORD*LPMETARECO
12580 52 44 3b 0a 0a 73 74 72 75 63 74 20 45 4e 48 4d RD;..struct ENHM
12590 45 54 41 52 45 43 4f 52 44 0a 7b 0a 20 20 20 20 ETARECORD.{.
125a0 44 57 4f 52 44 20 69 54 79 70 65 3b 0a 20 20 20 DWORD iType;.
125b0 20 44 57 4f 52 44 20 6e 53 69 7a 65 3b 0a 20 20 DWORD nSize;.
125c0 20 20 44 57 4f 52 44 5b 31 5d 20 64 50 61 72 6d DWORD[1] dParm
125d0 3b 0a 7d 0a 61 6c 69 61 73 20 45 4e 48 4d 45 54 ;.}.alias ENHMET
125e0 41 52 45 43 4f 52 44 2a 50 45 4e 48 4d 45 54 41 ARECORD*PENHMETA
125f0 52 45 43 4f 52 44 2c 20 4c 50 45 4e 48 4d 45 54 RECORD, LPENHMET
12600 41 52 45 43 4f 52 44 3b 0a 0a 2f 2f 20 2d 2d 2d ARECORD;..// ---
12610 0a 0a 73 74 72 75 63 74 20 48 41 4e 44 4c 45 54 ..struct HANDLET
12620 41 42 4c 45 0a 7b 0a 20 20 20 20 48 47 44 49 4f ABLE.{. HGDIO
12630 42 4a 5b 31 5d 20 6f 62 6a 65 63 74 48 61 6e 64 BJ[1] objectHand
12640 6c 65 3b 0a 7d 0a 61 6c 69 61 73 20 48 41 4e 44 le;.}.alias HAND
12650 4c 45 54 41 42 4c 45 2a 50 48 41 4e 44 4c 45 54 LETABLE*PHANDLET
12660 41 42 4c 45 2c 20 4c 50 48 41 4e 44 4c 45 54 41 ABLE, LPHANDLETA
12670 42 4c 45 3b 0a 0a 73 74 72 75 63 74 20 54 45 58 BLE;..struct TEX
12680 54 4d 45 54 52 49 43 41 0a 7b 0a 20 20 20 20 4c TMETRICA.{. L
12690 4f 4e 47 20 74 6d 48 65 69 67 68 74 3b 0a 20 20 ONG tmHeight;.
126a0 20 20 4c 4f 4e 47 20 74 6d 41 73 63 65 6e 74 3b LONG tmAscent;
126b0 0a 20 20 20 20 4c 4f 4e 47 20 74 6d 44 65 73 63 . LONG tmDesc
126c0 65 6e 74 3b 0a 20 20 20 20 4c 4f 4e 47 20 74 6d ent;. LONG tm
126d0 49 6e 74 65 72 6e 61 6c 4c 65 61 64 69 6e 67 3b InternalLeading;
126e0 0a 20 20 20 20 4c 4f 4e 47 20 74 6d 45 78 74 65 . LONG tmExte
126f0 72 6e 61 6c 4c 65 61 64 69 6e 67 3b 0a 20 20 20 rnalLeading;.
12700 20 4c 4f 4e 47 20 74 6d 41 76 65 43 68 61 72 57 LONG tmAveCharW
12710 69 64 74 68 3b 0a 20 20 20 20 4c 4f 4e 47 20 74 idth;. LONG t
12720 6d 4d 61 78 43 68 61 72 57 69 64 74 68 3b 0a 20 mMaxCharWidth;.
12730 20 20 20 4c 4f 4e 47 20 74 6d 57 65 69 67 68 74 LONG tmWeight
12740 3b 0a 20 20 20 20 4c 4f 4e 47 20 74 6d 4f 76 65 ;. LONG tmOve
12750 72 68 61 6e 67 3b 0a 20 20 20 20 4c 4f 4e 47 20 rhang;. LONG
12760 74 6d 44 69 67 69 74 69 7a 65 64 41 73 70 65 63 tmDigitizedAspec
12770 74 58 3b 0a 20 20 20 20 4c 4f 4e 47 20 74 6d 44 tX;. LONG tmD
12780 69 67 69 74 69 7a 65 64 41 73 70 65 63 74 59 3b igitizedAspectY;
12790 0a 20 20 20 20 42 59 54 45 20 74 6d 46 69 72 73 . BYTE tmFirs
127a0 74 43 68 61 72 3b 0a 20 20 20 20 42 59 54 45 20 tChar;. BYTE
127b0 74 6d 4c 61 73 74 43 68 61 72 3b 0a 20 20 20 20 tmLastChar;.
127c0 42 59 54 45 20 74 6d 44 65 66 61 75 6c 74 43 68 BYTE tmDefaultCh
127d0 61 72 3b 0a 20 20 20 20 42 59 54 45 20 74 6d 42 ar;. BYTE tmB
127e0 72 65 61 6b 43 68 61 72 3b 0a 20 20 20 20 42 59 reakChar;. BY
127f0 54 45 20 74 6d 49 74 61 6c 69 63 3b 0a 20 20 20 TE tmItalic;.
12800 20 42 59 54 45 20 74 6d 55 6e 64 65 72 6c 69 6e BYTE tmUnderlin
12810 65 64 3b 0a 20 20 20 20 42 59 54 45 20 74 6d 53 ed;. BYTE tmS
12820 74 72 75 63 6b 4f 75 74 3b 0a 20 20 20 20 42 59 truckOut;. BY
12830 54 45 20 74 6d 50 69 74 63 68 41 6e 64 46 61 6d TE tmPitchAndFam
12840 69 6c 79 3b 0a 20 20 20 20 42 59 54 45 20 74 6d ily;. BYTE tm
12850 43 68 61 72 53 65 74 3b 0a 7d 0a 61 6c 69 61 73 CharSet;.}.alias
12860 20 54 45 58 54 4d 45 54 52 49 43 41 2a 50 54 45 TEXTMETRICA*PTE
12870 58 54 4d 45 54 52 49 43 41 2c 20 4e 50 54 45 58 XTMETRICA, NPTEX
12880 54 4d 45 54 52 49 43 41 2c 20 4c 50 54 45 58 54 TMETRICA, LPTEXT
12890 4d 45 54 52 49 43 41 3b 0a 0a 73 74 72 75 63 74 METRICA;..struct
128a0 20 54 45 58 54 4d 45 54 52 49 43 57 0a 7b 0a 20 TEXTMETRICW.{.
128b0 20 20 20 4c 4f 4e 47 20 74 6d 48 65 69 67 68 74 LONG tmHeight
128c0 3b 0a 20 20 20 20 4c 4f 4e 47 20 74 6d 41 73 63 ;. LONG tmAsc
128d0 65 6e 74 3b 0a 20 20 20 20 4c 4f 4e 47 20 74 6d ent;. LONG tm
128e0 44 65 73 63 65 6e 74 3b 0a 20 20 20 20 4c 4f 4e Descent;. LON
128f0 47 20 74 6d 49 6e 74 65 72 6e 61 6c 4c 65 61 64 G tmInternalLead
12900 69 6e 67 3b 0a 20 20 20 20 4c 4f 4e 47 20 74 6d ing;. LONG tm
12910 45 78 74 65 72 6e 61 6c 4c 65 61 64 69 6e 67 3b ExternalLeading;
12920 0a 20 20 20 20 4c 4f 4e 47 20 74 6d 41 76 65 43 . LONG tmAveC
12930 68 61 72 57 69 64 74 68 3b 0a 20 20 20 20 4c 4f harWidth;. LO
12940 4e 47 20 74 6d 4d 61 78 43 68 61 72 57 69 64 74 NG tmMaxCharWidt
12950 68 3b 0a 20 20 20 20 4c 4f 4e 47 20 74 6d 57 65 h;. LONG tmWe
12960 69 67 68 74 3b 0a 20 20 20 20 4c 4f 4e 47 20 74 ight;. LONG t
12970 6d 4f 76 65 72 68 61 6e 67 3b 0a 20 20 20 20 4c mOverhang;. L
12980 4f 4e 47 20 74 6d 44 69 67 69 74 69 7a 65 64 41 ONG tmDigitizedA
12990 73 70 65 63 74 58 3b 0a 20 20 20 20 4c 4f 4e 47 spectX;. LONG
129a0 20 74 6d 44 69 67 69 74 69 7a 65 64 41 73 70 65 tmDigitizedAspe
129b0 63 74 59 3b 0a 20 20 20 20 57 43 48 41 52 20 74 ctY;. WCHAR t
129c0 6d 46 69 72 73 74 43 68 61 72 3b 0a 20 20 20 20 mFirstChar;.
129d0 57 43 48 41 52 20 74 6d 4c 61 73 74 43 68 61 72 WCHAR tmLastChar
129e0 3b 0a 20 20 20 20 57 43 48 41 52 20 74 6d 44 65 ;. WCHAR tmDe
129f0 66 61 75 6c 74 43 68 61 72 3b 0a 20 20 20 20 57 faultChar;. W
12a00 43 48 41 52 20 74 6d 42 72 65 61 6b 43 68 61 72 CHAR tmBreakChar
12a10 3b 0a 20 20 20 20 42 59 54 45 20 74 6d 49 74 61 ;. BYTE tmIta
12a20 6c 69 63 3b 0a 20 20 20 20 42 59 54 45 20 74 6d lic;. BYTE tm
12a30 55 6e 64 65 72 6c 69 6e 65 64 3b 0a 20 20 20 20 Underlined;.
12a40 42 59 54 45 20 74 6d 53 74 72 75 63 6b 4f 75 74 BYTE tmStruckOut
12a50 3b 0a 20 20 20 20 42 59 54 45 20 74 6d 50 69 74 ;. BYTE tmPit
12a60 63 68 41 6e 64 46 61 6d 69 6c 79 3b 0a 20 20 20 chAndFamily;.
12a70 20 42 59 54 45 20 74 6d 43 68 61 72 53 65 74 3b BYTE tmCharSet;
12a80 0a 7d 0a 61 6c 69 61 73 20 54 45 58 54 4d 45 54 .}.alias TEXTMET
12a90 52 49 43 57 2a 50 54 45 58 54 4d 45 54 52 49 43 RICW*PTEXTMETRIC
12aa0 57 2c 20 4e 50 54 45 58 54 4d 45 54 52 49 43 57 W, NPTEXTMETRICW
12ab0 2c 20 4c 50 54 45 58 54 4d 45 54 52 49 43 57 3b , LPTEXTMETRICW;
12ac0 0a 0a 73 74 72 75 63 74 20 52 47 4e 44 41 54 41 ..struct RGNDATA
12ad0 48 45 41 44 45 52 0a 7b 0a 20 20 20 20 44 57 4f HEADER.{. DWO
12ae0 52 44 20 64 77 53 69 7a 65 3b 0a 20 20 20 20 44 RD dwSize;. D
12af0 57 4f 52 44 20 69 54 79 70 65 3b 0a 20 20 20 20 WORD iType;.
12b00 44 57 4f 52 44 20 6e 43 6f 75 6e 74 3b 0a 20 20 DWORD nCount;.
12b10 20 20 44 57 4f 52 44 20 6e 52 67 6e 53 69 7a 65 DWORD nRgnSize
12b20 3b 0a 20 20 20 20 52 45 43 54 20 72 63 42 6f 75 ;. RECT rcBou
12b30 6e 64 3b 0a 7d 0a 61 6c 69 61 73 20 52 47 4e 44 nd;.}.alias RGND
12b40 41 54 41 48 45 41 44 45 52 2a 50 52 47 4e 44 41 ATAHEADER*PRGNDA
12b50 54 41 48 45 41 44 45 52 3b 0a 0a 73 74 72 75 63 TAHEADER;..struc
12b60 74 20 52 47 4e 44 41 54 41 0a 7b 0a 20 20 20 20 t RGNDATA.{.
12b70 52 47 4e 44 41 54 41 48 45 41 44 45 52 20 72 64 RGNDATAHEADER rd
12b80 68 3b 0a 20 20 20 20 63 68 61 72 5b 31 5d 20 42 h;. char[1] B
12b90 75 66 66 65 72 3b 0a 7d 0a 61 6c 69 61 73 20 52 uffer;.}.alias R
12ba0 47 4e 44 41 54 41 2a 50 52 47 4e 44 41 54 41 2c GNDATA*PRGNDATA,
12bb0 20 4e 50 52 47 4e 44 41 54 41 2c 20 4c 50 52 47 NPRGNDATA, LPRG
12bc0 4e 44 41 54 41 3b 0a 0a 2f 2a 20 66 6f 72 20 47 NDATA;../* for G
12bd0 65 74 52 61 6e 64 6f 6d 52 67 6e 20 2a 2f 0a 63 etRandomRgn */.c
12be0 6f 6e 73 74 20 53 59 53 52 47 4e 3d 34 3b 0a 73 onst SYSRGN=4;.s
12bf0 74 72 75 63 74 20 47 43 50 5f 52 45 53 55 4c 54 truct GCP_RESULT
12c00 53 41 0a 7b 0a 20 20 20 20 44 57 4f 52 44 20 6c SA.{. DWORD l
12c10 53 74 72 75 63 74 53 69 7a 65 3b 0a 20 20 20 20 StructSize;.
12c20 4c 50 53 54 52 20 6c 70 4f 75 74 53 74 72 69 6e LPSTR lpOutStrin
12c30 67 3b 0a 20 20 20 20 55 49 4e 54 2a 6c 70 4f 72 g;. UINT*lpOr
12c40 64 65 72 3b 0a 20 20 20 20 49 4e 54 2a 6c 70 44 der;. INT*lpD
12c50 78 3b 0a 20 20 20 20 49 4e 54 2a 6c 70 43 61 72 x;. INT*lpCar
12c60 65 74 50 6f 73 3b 0a 20 20 20 20 4c 50 53 54 52 etPos;. LPSTR
12c70 20 6c 70 43 6c 61 73 73 3b 0a 20 20 20 20 4c 50 lpClass;. LP
12c80 57 53 54 52 20 6c 70 47 6c 79 70 68 73 3b 0a 20 WSTR lpGlyphs;.
12c90 20 20 20 55 49 4e 54 20 6e 47 6c 79 70 68 73 3b UINT nGlyphs;
12ca0 0a 20 20 20 20 55 49 4e 54 20 6e 4d 61 78 46 69 . UINT nMaxFi
12cb0 74 3b 0a 7d 0a 61 6c 69 61 73 20 47 43 50 5f 52 t;.}.alias GCP_R
12cc0 45 53 55 4c 54 53 41 2a 4c 50 47 43 50 5f 52 45 ESULTSA*LPGCP_RE
12cd0 53 55 4c 54 53 41 3b 0a 0a 73 74 72 75 63 74 20 SULTSA;..struct
12ce0 47 43 50 5f 52 45 53 55 4c 54 53 57 0a 7b 0a 20 GCP_RESULTSW.{.
12cf0 20 20 20 44 57 4f 52 44 20 6c 53 74 72 75 63 74 DWORD lStruct
12d00 53 69 7a 65 3b 0a 20 20 20 20 4c 50 57 53 54 52 Size;. LPWSTR
12d10 20 6c 70 4f 75 74 53 74 72 69 6e 67 3b 0a 20 20 lpOutString;.
12d20 20 20 55 49 4e 54 2a 6c 70 4f 72 64 65 72 3b 0a UINT*lpOrder;.
12d30 20 20 20 20 49 4e 54 2a 6c 70 44 78 3b 0a 20 20 INT*lpDx;.
12d40 20 20 49 4e 54 2a 6c 70 43 61 72 65 74 50 6f 73 INT*lpCaretPos
12d50 3b 0a 20 20 20 20 4c 50 57 53 54 52 20 6c 70 43 ;. LPWSTR lpC
12d60 6c 61 73 73 3b 0a 20 20 20 20 4c 50 57 53 54 52 lass;. LPWSTR
12d70 20 6c 70 47 6c 79 70 68 73 3b 0a 20 20 20 20 55 lpGlyphs;. U
12d80 49 4e 54 20 6e 47 6c 79 70 68 73 3b 0a 20 20 20 INT nGlyphs;.
12d90 20 55 49 4e 54 20 6e 4d 61 78 46 69 74 3b 0a 7d UINT nMaxFit;.}
12da0 0a 61 6c 69 61 73 20 47 43 50 5f 52 45 53 55 4c .alias GCP_RESUL
12db0 54 53 57 2a 4c 50 47 43 50 5f 52 45 53 55 4c 54 TSW*LPGCP_RESULT
12dc0 53 57 3b 0a 0a 73 74 72 75 63 74 20 47 4c 59 50 SW;..struct GLYP
12dd0 48 4d 45 54 52 49 43 53 0a 7b 0a 20 20 20 20 55 HMETRICS.{. U
12de0 49 4e 54 20 67 6d 42 6c 61 63 6b 42 6f 78 58 3b INT gmBlackBoxX;
12df0 0a 20 20 20 20 55 49 4e 54 20 67 6d 42 6c 61 63 . UINT gmBlac
12e00 6b 42 6f 78 59 3b 0a 20 20 20 20 50 4f 49 4e 54 kBoxY;. POINT
12e10 20 67 6d 70 74 47 6c 79 70 68 4f 72 69 67 69 6e gmptGlyphOrigin
12e20 3b 0a 20 20 20 20 73 68 6f 72 74 20 67 6d 43 65 ;. short gmCe
12e30 6c 6c 49 6e 63 58 3b 0a 20 20 20 20 73 68 6f 72 llIncX;. shor
12e40 74 20 67 6d 43 65 6c 6c 49 6e 63 59 3b 0a 7d 0a t gmCellIncY;.}.
12e50 61 6c 69 61 73 20 47 4c 59 50 48 4d 45 54 52 49 alias GLYPHMETRI
12e60 43 53 2a 4c 50 47 4c 59 50 48 4d 45 54 52 49 43 CS*LPGLYPHMETRIC
12e70 53 3b 0a 0a 73 74 61 74 69 63 0a 0a 69 66 20 28 S;..static..if (
12e80 5f 57 49 4e 33 32 5f 57 49 4e 4e 54 20 3e 3d 20 _WIN32_WINNT >=
12e90 30 78 30 35 30 30 29 0a 7b 0a 20 20 20 20 73 74 0x0500).{. st
12ea0 72 75 63 74 20 57 43 52 41 4e 47 45 0a 20 20 20 ruct WCRANGE.
12eb0 20 7b 0a 20 20 20 20 20 20 20 20 57 43 48 41 52 {. WCHAR
12ec0 20 77 63 4c 6f 77 3b 0a 20 20 20 20 20 20 20 20 wcLow;.
12ed0 55 53 48 4f 52 54 20 63 47 6c 79 70 68 73 3b 0a USHORT cGlyphs;.
12ee0 20 20 20 20 7d 0a 20 20 20 20 61 6c 69 61 73 20 }. alias
12ef0 57 43 52 41 4e 47 45 2a 50 57 43 52 41 4e 47 45 WCRANGE*PWCRANGE
12f00 2c 20 4c 50 57 43 52 41 4e 47 45 3b 0a 0a 20 20 , LPWCRANGE;..
12f10 20 20 73 74 72 75 63 74 20 47 4c 59 50 48 53 45 struct GLYPHSE
12f20 54 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 T. {.
12f30 44 57 4f 52 44 20 63 62 54 68 69 73 3b 0a 20 20 DWORD cbThis;.
12f40 20 20 20 20 20 20 44 57 4f 52 44 20 66 6c 41 63 DWORD flAc
12f50 63 65 6c 3b 0a 20 20 20 20 20 20 20 20 44 57 4f cel;. DWO
12f60 52 44 20 63 47 6c 79 70 68 73 53 75 70 70 6f 72 RD cGlyphsSuppor
12f70 74 65 64 3b 0a 20 20 20 20 20 20 20 20 44 57 4f ted;. DWO
12f80 52 44 20 63 52 61 6e 67 65 73 3b 0a 20 20 20 20 RD cRanges;.
12f90 20 20 20 20 57 43 52 41 4e 47 45 5b 31 5d 20 72 WCRANGE[1] r
12fa0 61 6e 67 65 73 3b 0a 20 20 20 20 7d 0a 20 20 20 anges;. }.
12fb0 20 61 6c 69 61 73 20 47 4c 59 50 48 53 45 54 2a alias GLYPHSET*
12fc0 50 47 4c 59 50 48 53 45 54 2c 20 4c 50 47 4c 59 PGLYPHSET, LPGLY
12fd0 50 48 53 45 54 3b 0a 0a 20 20 20 20 63 6f 6e 73 PHSET;.. cons
12fe0 74 20 44 57 4f 52 44 20 47 53 5f 38 42 49 54 5f t DWORD GS_8BIT_
12ff0 49 4e 44 49 43 45 53 20 3d 20 30 78 30 30 30 30 INDICES = 0x0000
13000 30 30 30 31 3b 0a 7d 0a 0a 73 74 72 75 63 74 20 0001;.}..struct
13010 4b 45 52 4e 49 4e 47 50 41 49 52 0a 7b 0a 20 20 KERNINGPAIR.{.
13020 20 20 57 4f 52 44 20 77 46 69 72 73 74 3b 0a 20 WORD wFirst;.
13030 20 20 20 57 4f 52 44 20 77 53 65 63 6f 6e 64 3b WORD wSecond;
13040 0a 20 20 20 20 69 6e 74 20 69 4b 65 72 6e 41 6d . int iKernAm
13050 6f 75 6e 74 3b 0a 7d 0a 61 6c 69 61 73 20 4b 45 ount;.}.alias KE
13060 52 4e 49 4e 47 50 41 49 52 2a 4c 50 4b 45 52 4e RNINGPAIR*LPKERN
13070 49 4e 47 50 41 49 52 3b 0a 0a 73 74 72 75 63 74 INGPAIR;..struct
13080 20 46 49 58 45 44 0a 7b 0a 20 20 20 20 57 4f 52 FIXED.{. WOR
13090 44 20 66 72 61 63 74 3b 0a 20 20 20 20 73 68 6f D fract;. sho
130a0 72 74 20 76 61 6c 75 65 3b 0a 7d 0a 0a 73 74 72 rt value;.}..str
130b0 75 63 74 20 4d 41 54 32 0a 7b 0a 20 20 20 20 46 uct MAT2.{. F
130c0 49 58 45 44 20 65 4d 31 31 3b 0a 20 20 20 20 46 IXED eM11;. F
130d0 49 58 45 44 20 65 4d 31 32 3b 0a 20 20 20 20 46 IXED eM12;. F
130e0 49 58 45 44 20 65 4d 32 31 3b 0a 20 20 20 20 46 IXED eM21;. F
130f0 49 58 45 44 20 65 4d 32 32 3b 0a 7d 0a 61 6c 69 IXED eM22;.}.ali
13100 61 73 20 4d 41 54 32 2a 4c 50 4d 41 54 32 3b 0a as MAT2*LPMAT2;.
13110 0a 73 74 72 75 63 74 20 4f 55 54 4c 49 4e 45 54 .struct OUTLINET
13120 45 58 54 4d 45 54 52 49 43 41 0a 7b 0a 20 20 20 EXTMETRICA.{.
13130 20 55 49 4e 54 20 6f 74 6d 53 69 7a 65 3b 0a 20 UINT otmSize;.
13140 20 20 20 54 45 58 54 4d 45 54 52 49 43 41 20 6f TEXTMETRICA o
13150 74 6d 54 65 78 74 4d 65 74 72 69 63 73 3b 0a 20 tmTextMetrics;.
13160 20 20 20 42 59 54 45 20 6f 74 6d 46 69 6c 6c 65 BYTE otmFille
13170 72 3b 0a 20 20 20 20 50 41 4e 4f 53 45 20 6f 74 r;. PANOSE ot
13180 6d 50 61 6e 6f 73 65 4e 75 6d 62 65 72 3b 0a 20 mPanoseNumber;.
13190 20 20 20 55 49 4e 54 20 6f 74 6d 66 73 53 65 6c UINT otmfsSel
131a0 65 63 74 69 6f 6e 3b 0a 20 20 20 20 55 49 4e 54 ection;. UINT
131b0 20 6f 74 6d 66 73 54 79 70 65 3b 0a 20 20 20 20 otmfsType;.
131c0 69 6e 74 20 6f 74 6d 73 43 68 61 72 53 6c 6f 70 int otmsCharSlop
131d0 65 52 69 73 65 3b 0a 20 20 20 20 69 6e 74 20 6f eRise;. int o
131e0 74 6d 73 43 68 61 72 53 6c 6f 70 65 52 75 6e 3b tmsCharSlopeRun;
131f0 0a 20 20 20 20 69 6e 74 20 6f 74 6d 49 74 61 6c . int otmItal
13200 69 63 41 6e 67 6c 65 3b 0a 20 20 20 20 55 49 4e icAngle;. UIN
13210 54 20 6f 74 6d 45 4d 53 71 75 61 72 65 3b 0a 20 T otmEMSquare;.
13220 20 20 20 69 6e 74 20 6f 74 6d 41 73 63 65 6e 74 int otmAscent
13230 3b 0a 20 20 20 20 69 6e 74 20 6f 74 6d 44 65 73 ;. int otmDes
13240 63 65 6e 74 3b 0a 20 20 20 20 55 49 4e 54 20 6f cent;. UINT o
13250 74 6d 4c 69 6e 65 47 61 70 3b 0a 20 20 20 20 55 tmLineGap;. U
13260 49 4e 54 20 6f 74 6d 73 43 61 70 45 6d 48 65 69 INT otmsCapEmHei
13270 67 68 74 3b 0a 20 20 20 20 55 49 4e 54 20 6f 74 ght;. UINT ot
13280 6d 73 58 48 65 69 67 68 74 3b 0a 20 20 20 20 52 msXHeight;. R
13290 45 43 54 20 6f 74 6d 72 63 46 6f 6e 74 42 6f 78 ECT otmrcFontBox
132a0 3b 0a 20 20 20 20 69 6e 74 20 6f 74 6d 4d 61 63 ;. int otmMac
132b0 41 73 63 65 6e 74 3b 0a 20 20 20 20 69 6e 74 20 Ascent;. int
132c0 6f 74 6d 4d 61 63 44 65 73 63 65 6e 74 3b 0a 20 otmMacDescent;.
132d0 20 20 20 55 49 4e 54 20 6f 74 6d 4d 61 63 4c 69 UINT otmMacLi
132e0 6e 65 47 61 70 3b 0a 20 20 20 20 55 49 4e 54 20 neGap;. UINT
132f0 6f 74 6d 75 73 4d 69 6e 69 6d 75 6d 50 50 45 4d otmusMinimumPPEM
13300 3b 0a 20 20 20 20 50 4f 49 4e 54 20 6f 74 6d 70 ;. POINT otmp
13310 74 53 75 62 73 63 72 69 70 74 53 69 7a 65 3b 0a tSubscriptSize;.
13320 20 20 20 20 50 4f 49 4e 54 20 6f 74 6d 70 74 53 POINT otmptS
13330 75 62 73 63 72 69 70 74 4f 66 66 73 65 74 3b 0a ubscriptOffset;.
13340 20 20 20 20 50 4f 49 4e 54 20 6f 74 6d 70 74 53 POINT otmptS
13350 75 70 65 72 73 63 72 69 70 74 53 69 7a 65 3b 0a uperscriptSize;.
13360 20 20 20 20 50 4f 49 4e 54 20 6f 74 6d 70 74 53 POINT otmptS
13370 75 70 65 72 73 63 72 69 70 74 4f 66 66 73 65 74 uperscriptOffset
13380 3b 0a 20 20 20 20 55 49 4e 54 20 6f 74 6d 73 53 ;. UINT otmsS
13390 74 72 69 6b 65 6f 75 74 53 69 7a 65 3b 0a 20 20 trikeoutSize;.
133a0 20 20 69 6e 74 20 6f 74 6d 73 53 74 72 69 6b 65 int otmsStrike
133b0 6f 75 74 50 6f 73 69 74 69 6f 6e 3b 0a 20 20 20 outPosition;.
133c0 20 69 6e 74 20 6f 74 6d 73 55 6e 64 65 72 73 63 int otmsUndersc
133d0 6f 72 65 53 69 7a 65 3b 0a 20 20 20 20 69 6e 74 oreSize;. int
133e0 20 6f 74 6d 73 55 6e 64 65 72 73 63 6f 72 65 50 otmsUnderscoreP
133f0 6f 73 69 74 69 6f 6e 3b 0a 20 20 20 20 50 53 54 osition;. PST
13400 52 20 6f 74 6d 70 46 61 6d 69 6c 79 4e 61 6d 65 R otmpFamilyName
13410 3b 0a 20 20 20 20 50 53 54 52 20 6f 74 6d 70 46 ;. PSTR otmpF
13420 61 63 65 4e 61 6d 65 3b 0a 20 20 20 20 50 53 54 aceName;. PST
13430 52 20 6f 74 6d 70 53 74 79 6c 65 4e 61 6d 65 3b R otmpStyleName;
13440 0a 20 20 20 20 50 53 54 52 20 6f 74 6d 70 46 75 . PSTR otmpFu
13450 6c 6c 4e 61 6d 65 3b 0a 7d 0a 61 6c 69 61 73 20 llName;.}.alias
13460 4f 55 54 4c 49 4e 45 54 45 58 54 4d 45 54 52 49 OUTLINETEXTMETRI
13470 43 41 2a 50 4f 55 54 4c 49 4e 45 54 45 58 54 4d CA*POUTLINETEXTM
13480 45 54 52 49 43 41 2c 20 4e 50 4f 55 54 4c 49 4e ETRICA, NPOUTLIN
13490 45 54 45 58 54 4d 45 54 52 49 43 41 2c 20 4c 50 ETEXTMETRICA, LP
134a0 4f 55 54 4c 49 4e 45 54 45 58 54 4d 45 54 52 49 OUTLINETEXTMETRI
134b0 43 41 3b 0a 0a 73 74 72 75 63 74 20 4f 55 54 4c CA;..struct OUTL
134c0 49 4e 45 54 45 58 54 4d 45 54 52 49 43 57 0a 7b INETEXTMETRICW.{
134d0 0a 20 20 20 20 55 49 4e 54 20 6f 74 6d 53 69 7a . UINT otmSiz
134e0 65 3b 0a 20 20 20 20 54 45 58 54 4d 45 54 52 49 e;. TEXTMETRI
134f0 43 57 20 6f 74 6d 54 65 78 74 4d 65 74 72 69 63 CW otmTextMetric
13500 73 3b 0a 20 20 20 20 42 59 54 45 20 6f 74 6d 46 s;. BYTE otmF
13510 69 6c 6c 65 72 3b 0a 20 20 20 20 50 41 4e 4f 53 iller;. PANOS
13520 45 20 6f 74 6d 50 61 6e 6f 73 65 4e 75 6d 62 65 E otmPanoseNumbe
13530 72 3b 0a 20 20 20 20 55 49 4e 54 20 6f 74 6d 66 r;. UINT otmf
13540 73 53 65 6c 65 63 74 69 6f 6e 3b 0a 20 20 20 20 sSelection;.
13550 55 49 4e 54 20 6f 74 6d 66 73 54 79 70 65 3b 0a UINT otmfsType;.
13560 20 20 20 20 69 6e 74 20 6f 74 6d 73 43 68 61 72 int otmsChar
13570 53 6c 6f 70 65 52 69 73 65 3b 0a 20 20 20 20 69 SlopeRise;. i
13580 6e 74 20 6f 74 6d 73 43 68 61 72 53 6c 6f 70 65 nt otmsCharSlope
13590 52 75 6e 3b 0a 20 20 20 20 69 6e 74 20 6f 74 6d Run;. int otm
135a0 49 74 61 6c 69 63 41 6e 67 6c 65 3b 0a 20 20 20 ItalicAngle;.
135b0 20 55 49 4e 54 20 6f 74 6d 45 4d 53 71 75 61 72 UINT otmEMSquar
135c0 65 3b 0a 20 20 20 20 69 6e 74 20 6f 74 6d 41 73 e;. int otmAs
135d0 63 65 6e 74 3b 0a 20 20 20 20 69 6e 74 20 6f 74 cent;. int ot
135e0 6d 44 65 73 63 65 6e 74 3b 0a 20 20 20 20 55 49 mDescent;. UI
135f0 4e 54 20 6f 74 6d 4c 69 6e 65 47 61 70 3b 0a 20 NT otmLineGap;.
13600 20 20 20 55 49 4e 54 20 6f 74 6d 73 43 61 70 45 UINT otmsCapE
13610 6d 48 65 69 67 68 74 3b 0a 20 20 20 20 55 49 4e mHeight;. UIN
13620 54 20 6f 74 6d 73 58 48 65 69 67 68 74 3b 0a 20 T otmsXHeight;.
13630 20 20 20 52 45 43 54 20 6f 74 6d 72 63 46 6f 6e RECT otmrcFon
13640 74 42 6f 78 3b 0a 20 20 20 20 69 6e 74 20 6f 74 tBox;. int ot
13650 6d 4d 61 63 41 73 63 65 6e 74 3b 0a 20 20 20 20 mMacAscent;.
13660 69 6e 74 20 6f 74 6d 4d 61 63 44 65 73 63 65 6e int otmMacDescen
13670 74 3b 0a 20 20 20 20 55 49 4e 54 20 6f 74 6d 4d t;. UINT otmM
13680 61 63 4c 69 6e 65 47 61 70 3b 0a 20 20 20 20 55 acLineGap;. U
13690 49 4e 54 20 6f 74 6d 75 73 4d 69 6e 69 6d 75 6d INT otmusMinimum
136a0 50 50 45 4d 3b 0a 20 20 20 20 50 4f 49 4e 54 20 PPEM;. POINT
136b0 6f 74 6d 70 74 53 75 62 73 63 72 69 70 74 53 69 otmptSubscriptSi
136c0 7a 65 3b 0a 20 20 20 20 50 4f 49 4e 54 20 6f 74 ze;. POINT ot
136d0 6d 70 74 53 75 62 73 63 72 69 70 74 4f 66 66 73 mptSubscriptOffs
136e0 65 74 3b 0a 20 20 20 20 50 4f 49 4e 54 20 6f 74 et;. POINT ot
136f0 6d 70 74 53 75 70 65 72 73 63 72 69 70 74 53 69 mptSuperscriptSi
13700 7a 65 3b 0a 20 20 20 20 50 4f 49 4e 54 20 6f 74 ze;. POINT ot
13710 6d 70 74 53 75 70 65 72 73 63 72 69 70 74 4f 66 mptSuperscriptOf
13720 66 73 65 74 3b 0a 20 20 20 20 55 49 4e 54 20 6f fset;. UINT o
13730 74 6d 73 53 74 72 69 6b 65 6f 75 74 53 69 7a 65 tmsStrikeoutSize
13740 3b 0a 20 20 20 20 69 6e 74 20 6f 74 6d 73 53 74 ;. int otmsSt
13750 72 69 6b 65 6f 75 74 50 6f 73 69 74 69 6f 6e 3b rikeoutPosition;
13760 0a 20 20 20 20 69 6e 74 20 6f 74 6d 73 55 6e 64 . int otmsUnd
13770 65 72 73 63 6f 72 65 53 69 7a 65 3b 0a 20 20 20 erscoreSize;.
13780 20 69 6e 74 20 6f 74 6d 73 55 6e 64 65 72 73 63 int otmsUndersc
13790 6f 72 65 50 6f 73 69 74 69 6f 6e 3b 0a 20 20 20 orePosition;.
137a0 20 50 53 54 52 20 6f 74 6d 70 46 61 6d 69 6c 79 PSTR otmpFamily
137b0 4e 61 6d 65 3b 0a 20 20 20 20 50 53 54 52 20 6f Name;. PSTR o
137c0 74 6d 70 46 61 63 65 4e 61 6d 65 3b 0a 20 20 20 tmpFaceName;.
137d0 20 50 53 54 52 20 6f 74 6d 70 53 74 79 6c 65 4e PSTR otmpStyleN
137e0 61 6d 65 3b 0a 20 20 20 20 50 53 54 52 20 6f 74 ame;. PSTR ot
137f0 6d 70 46 75 6c 6c 4e 61 6d 65 3b 0a 7d 0a 61 6c mpFullName;.}.al
13800 69 61 73 20 4f 55 54 4c 49 4e 45 54 45 58 54 4d ias OUTLINETEXTM
13810 45 54 52 49 43 57 2a 50 4f 55 54 4c 49 4e 45 54 ETRICW*POUTLINET
13820 45 58 54 4d 45 54 52 49 43 57 2c 20 4e 50 4f 55 EXTMETRICW, NPOU
13830 54 4c 49 4e 45 54 45 58 54 4d 45 54 52 49 43 57 TLINETEXTMETRICW
13840 2c 20 4c 50 4f 55 54 4c 49 4e 45 54 45 58 54 4d , LPOUTLINETEXTM
13850 45 54 52 49 43 57 3b 0a 0a 73 74 72 75 63 74 20 ETRICW;..struct
13860 52 41 53 54 45 52 49 5a 45 52 5f 53 54 41 54 55 RASTERIZER_STATU
13870 53 0a 7b 0a 20 20 20 20 73 68 6f 72 74 20 6e 53 S.{. short nS
13880 69 7a 65 3b 0a 20 20 20 20 73 68 6f 72 74 20 77 ize;. short w
13890 46 6c 61 67 73 3b 0a 20 20 20 20 73 68 6f 72 74 Flags;. short
138a0 20 6e 4c 61 6e 67 75 61 67 65 49 44 3b 0a 7d 0a nLanguageID;.}.
138b0 61 6c 69 61 73 20 52 41 53 54 45 52 49 5a 45 52 alias RASTERIZER
138c0 5f 53 54 41 54 55 53 2a 4c 50 52 41 53 54 45 52 _STATUS*LPRASTER
138d0 49 5a 45 52 5f 53 54 41 54 55 53 3b 0a 0a 73 74 IZER_STATUS;..st
138e0 72 75 63 74 20 50 4f 4c 59 54 45 58 54 41 0a 7b ruct POLYTEXTA.{
138f0 0a 20 20 20 20 69 6e 74 20 78 3b 0a 20 20 20 20 . int x;.
13900 69 6e 74 20 79 3b 0a 20 20 20 20 55 49 4e 54 20 int y;. UINT
13910 6e 3b 0a 20 20 20 20 4c 50 43 53 54 52 20 6c 70 n;. LPCSTR lp
13920 73 74 72 3b 0a 20 20 20 20 55 49 4e 54 20 75 69 str;. UINT ui
13930 46 6c 61 67 73 3b 0a 20 20 20 20 52 45 43 54 20 Flags;. RECT
13940 72 63 6c 3b 0a 20 20 20 20 69 6e 74 2a 70 64 78 rcl;. int*pdx
13950 3b 0a 7d 0a 61 6c 69 61 73 20 50 4f 4c 59 54 45 ;.}.alias POLYTE
13960 58 54 41 2a 50 50 4f 4c 59 54 45 58 54 41 2c 20 XTA*PPOLYTEXTA,
13970 4e 50 50 4f 4c 59 54 45 58 54 41 2c 20 4c 50 50 NPPOLYTEXTA, LPP
13980 4f 4c 59 54 45 58 54 41 3b 0a 0a 73 74 72 75 63 OLYTEXTA;..struc
13990 74 20 50 4f 4c 59 54 45 58 54 57 0a 7b 0a 20 20 t POLYTEXTW.{.
139a0 20 20 69 6e 74 20 78 3b 0a 20 20 20 20 69 6e 74 int x;. int
139b0 20 79 3b 0a 20 20 20 20 55 49 4e 54 20 6e 3b 0a y;. UINT n;.
139c0 20 20 20 20 4c 50 43 57 53 54 52 20 6c 70 73 74 LPCWSTR lpst
139d0 72 3b 0a 20 20 20 20 55 49 4e 54 20 75 69 46 6c r;. UINT uiFl
139e0 61 67 73 3b 0a 20 20 20 20 52 45 43 54 20 72 63 ags;. RECT rc
139f0 6c 3b 0a 20 20 20 20 69 6e 74 2a 70 64 78 3b 0a l;. int*pdx;.
13a00 7d 0a 61 6c 69 61 73 20 50 4f 4c 59 54 45 58 54 }.alias POLYTEXT
13a10 57 2a 50 50 4f 4c 59 54 45 58 54 57 2c 20 4e 50 W*PPOLYTEXTW, NP
13a20 50 4f 4c 59 54 45 58 54 57 2c 20 4c 50 50 4f 4c POLYTEXTW, LPPOL
13a30 59 54 45 58 54 57 3b 0a 0a 73 74 72 75 63 74 20 YTEXTW;..struct
13a40 50 49 58 45 4c 46 4f 52 4d 41 54 44 45 53 43 52 PIXELFORMATDESCR
13a50 49 50 54 4f 52 0a 7b 0a 20 20 20 20 57 4f 52 44 IPTOR.{. WORD
13a60 20 6e 53 69 7a 65 3b 0a 20 20 20 20 57 4f 52 44 nSize;. WORD
13a70 20 6e 56 65 72 73 69 6f 6e 3b 0a 20 20 20 20 44 nVersion;. D
13a80 57 4f 52 44 20 64 77 46 6c 61 67 73 3b 0a 20 20 WORD dwFlags;.
13a90 20 20 42 59 54 45 20 69 50 69 78 65 6c 54 79 70 BYTE iPixelTyp
13aa0 65 3b 0a 20 20 20 20 42 59 54 45 20 63 43 6f 6c e;. BYTE cCol
13ab0 6f 72 42 69 74 73 3b 0a 20 20 20 20 42 59 54 45 orBits;. BYTE
13ac0 20 63 52 65 64 42 69 74 73 3b 0a 20 20 20 20 42 cRedBits;. B
13ad0 59 54 45 20 63 52 65 64 53 68 69 66 74 3b 0a 20 YTE cRedShift;.
13ae0 20 20 20 42 59 54 45 20 63 47 72 65 65 6e 42 69 BYTE cGreenBi
13af0 74 73 3b 0a 20 20 20 20 42 59 54 45 20 63 47 72 ts;. BYTE cGr
13b00 65 65 6e 53 68 69 66 74 3b 0a 20 20 20 20 42 59 eenShift;. BY
13b10 54 45 20 63 42 6c 75 65 42 69 74 73 3b 0a 20 20 TE cBlueBits;.
13b20 20 20 42 59 54 45 20 63 42 6c 75 65 53 68 69 66 BYTE cBlueShif
13b30 74 3b 0a 20 20 20 20 42 59 54 45 20 63 41 6c 70 t;. BYTE cAlp
13b40 68 61 42 69 74 73 3b 0a 20 20 20 20 42 59 54 45 haBits;. BYTE
13b50 20 63 41 6c 70 68 61 53 68 69 66 74 3b 0a 20 20 cAlphaShift;.
13b60 20 20 42 59 54 45 20 63 41 63 63 75 6d 42 69 74 BYTE cAccumBit
13b70 73 3b 0a 20 20 20 20 42 59 54 45 20 63 41 63 63 s;. BYTE cAcc
13b80 75 6d 52 65 64 42 69 74 73 3b 0a 20 20 20 20 42 umRedBits;. B
13b90 59 54 45 20 63 41 63 63 75 6d 47 72 65 65 6e 42 YTE cAccumGreenB
13ba0 69 74 73 3b 0a 20 20 20 20 42 59 54 45 20 63 41 its;. BYTE cA
13bb0 63 63 75 6d 42 6c 75 65 42 69 74 73 3b 0a 20 20 ccumBlueBits;.
13bc0 20 20 42 59 54 45 20 63 41 63 63 75 6d 41 6c 70 BYTE cAccumAlp
13bd0 68 61 42 69 74 73 3b 0a 20 20 20 20 42 59 54 45 haBits;. BYTE
13be0 20 63 44 65 70 74 68 42 69 74 73 3b 0a 20 20 20 cDepthBits;.
13bf0 20 42 59 54 45 20 63 53 74 65 6e 63 69 6c 42 69 BYTE cStencilBi
13c00 74 73 3b 0a 20 20 20 20 42 59 54 45 20 63 41 75 ts;. BYTE cAu
13c10 78 42 75 66 66 65 72 73 3b 0a 20 20 20 20 42 59 xBuffers;. BY
13c20 54 45 20 69 4c 61 79 65 72 54 79 70 65 3b 0a 20 TE iLayerType;.
13c30 20 20 20 42 59 54 45 20 62 52 65 73 65 72 76 65 BYTE bReserve
13c40 64 3b 0a 20 20 20 20 44 57 4f 52 44 20 64 77 4c d;. DWORD dwL
13c50 61 79 65 72 4d 61 73 6b 3b 0a 20 20 20 20 44 57 ayerMask;. DW
13c60 4f 52 44 20 64 77 56 69 73 69 62 6c 65 4d 61 73 ORD dwVisibleMas
13c70 6b 3b 0a 20 20 20 20 44 57 4f 52 44 20 64 77 44 k;. DWORD dwD
13c80 61 6d 61 67 65 4d 61 73 6b 3b 0a 7d 0a 61 6c 69 amageMask;.}.ali
13c90 61 73 20 50 49 58 45 4c 46 4f 52 4d 41 54 44 45 as PIXELFORMATDE
13ca0 53 43 52 49 50 54 4f 52 2a 50 50 49 58 45 4c 46 SCRIPTOR*PPIXELF
13cb0 4f 52 4d 41 54 44 45 53 43 52 49 50 54 4f 52 2c ORMATDESCRIPTOR,
13cc0 20 4c 50 50 49 58 45 4c 46 4f 52 4d 41 54 44 45 LPPIXELFORMATDE
13cd0 53 43 52 49 50 54 4f 52 3b 0a 0a 73 74 72 75 63 SCRIPTOR;..struc
13ce0 74 20 4d 45 54 41 46 49 4c 45 50 49 43 54 0a 7b t METAFILEPICT.{
13cf0 0a 20 20 20 20 4c 4f 4e 47 20 6d 6d 3b 0a 20 20 . LONG mm;.
13d00 20 20 4c 4f 4e 47 20 78 45 78 74 3b 0a 20 20 20 LONG xExt;.
13d10 20 4c 4f 4e 47 20 79 45 78 74 3b 0a 20 20 20 20 LONG yExt;.
13d20 48 4d 45 54 41 46 49 4c 45 20 68 4d 46 3b 0a 7d HMETAFILE hMF;.}
13d30 0a 61 6c 69 61 73 20 4d 45 54 41 46 49 4c 45 50 .alias METAFILEP
13d40 49 43 54 2a 4c 50 4d 45 54 41 46 49 4c 45 50 49 ICT*LPMETAFILEPI
13d50 43 54 3b 0a 0a 73 74 72 75 63 74 20 4c 4f 43 41 CT;..struct LOCA
13d60 4c 45 53 49 47 4e 41 54 55 52 45 0a 7b 0a 20 20 LESIGNATURE.{.
13d70 20 20 44 57 4f 52 44 5b 34 5d 20 6c 73 55 73 62 DWORD[4] lsUsb
13d80 3b 0a 20 20 20 20 44 57 4f 52 44 5b 32 5d 20 6c ;. DWORD[2] l
13d90 73 43 73 62 44 65 66 61 75 6c 74 3b 0a 20 20 20 sCsbDefault;.
13da0 20 44 57 4f 52 44 5b 32 5d 20 6c 73 43 73 62 53 DWORD[2] lsCsbS
13db0 75 70 70 6f 72 74 65 64 3b 0a 7d 0a 61 6c 69 61 upported;.}.alia
13dc0 73 20 4c 4f 43 41 4c 45 53 49 47 4e 41 54 55 52 s LOCALESIGNATUR
13dd0 45 2a 50 4c 4f 43 41 4c 45 53 49 47 4e 41 54 55 E*PLOCALESIGNATU
13de0 52 45 2c 20 4c 50 4c 4f 43 41 4c 45 53 49 47 4e RE, LPLOCALESIGN
13df0 41 54 55 52 45 3b 0a 0a 61 6c 69 61 73 20 4c 4f ATURE;..alias LO
13e00 4e 47 20 4c 43 53 54 59 50 45 3b 20 2f 2a 20 57 NG LCSTYPE; /* W
13e10 68 61 74 20 74 68 69 73 20 66 6f 72 3f 20 2a 2f hat this for? */
13e20 0a 0a 61 6c 69 67 6e 20 28 34 29 20 3a 0a 73 74 ..align (4) :.st
13e30 72 75 63 74 20 4e 45 57 54 45 58 54 4d 45 54 52 ruct NEWTEXTMETR
13e40 49 43 41 0a 7b 0a 20 20 20 20 4c 4f 4e 47 20 74 ICA.{. LONG t
13e50 6d 48 65 69 67 68 74 3b 0a 20 20 20 20 4c 4f 4e mHeight;. LON
13e60 47 20 74 6d 41 73 63 65 6e 74 3b 0a 20 20 20 20 G tmAscent;.
13e70 4c 4f 4e 47 20 74 6d 44 65 73 63 65 6e 74 3b 0a LONG tmDescent;.
13e80 20 20 20 20 4c 4f 4e 47 20 74 6d 49 6e 74 65 72 LONG tmInter
13e90 6e 61 6c 4c 65 61 64 69 6e 67 3b 0a 20 20 20 20 nalLeading;.
13ea0 4c 4f 4e 47 20 74 6d 45 78 74 65 72 6e 61 6c 4c LONG tmExternalL
13eb0 65 61 64 69 6e 67 3b 0a 20 20 20 20 4c 4f 4e 47 eading;. LONG
13ec0 20 74 6d 41 76 65 43 68 61 72 57 69 64 74 68 3b tmAveCharWidth;
13ed0 0a 20 20 20 20 4c 4f 4e 47 20 74 6d 4d 61 78 43 . LONG tmMaxC
13ee0 68 61 72 57 69 64 74 68 3b 0a 20 20 20 20 4c 4f harWidth;. LO
13ef0 4e 47 20 74 6d 57 65 69 67 68 74 3b 0a 20 20 20 NG tmWeight;.
13f00 20 4c 4f 4e 47 20 74 6d 4f 76 65 72 68 61 6e 67 LONG tmOverhang
13f10 3b 0a 20 20 20 20 4c 4f 4e 47 20 74 6d 44 69 67 ;. LONG tmDig
13f20 69 74 69 7a 65 64 41 73 70 65 63 74 58 3b 0a 20 itizedAspectX;.
13f30 20 20 20 4c 4f 4e 47 20 74 6d 44 69 67 69 74 69 LONG tmDigiti
13f40 7a 65 64 41 73 70 65 63 74 59 3b 0a 20 20 20 20 zedAspectY;.
13f50 42 59 54 45 20 74 6d 46 69 72 73 74 43 68 61 72 BYTE tmFirstChar
13f60 3b 0a 20 20 20 20 42 59 54 45 20 74 6d 4c 61 73 ;. BYTE tmLas
13f70 74 43 68 61 72 3b 0a 20 20 20 20 42 59 54 45 20 tChar;. BYTE
13f80 74 6d 44 65 66 61 75 6c 74 43 68 61 72 3b 0a 20 tmDefaultChar;.
13f90 20 20 20 42 59 54 45 20 74 6d 42 72 65 61 6b 43 BYTE tmBreakC
13fa0 68 61 72 3b 0a 20 20 20 20 42 59 54 45 20 74 6d har;. BYTE tm
13fb0 49 74 61 6c 69 63 3b 0a 20 20 20 20 42 59 54 45 Italic;. BYTE
13fc0 20 74 6d 55 6e 64 65 72 6c 69 6e 65 64 3b 0a 20 tmUnderlined;.
13fd0 20 20 20 42 59 54 45 20 74 6d 53 74 72 75 63 6b BYTE tmStruck
13fe0 4f 75 74 3b 0a 20 20 20 20 42 59 54 45 20 74 6d Out;. BYTE tm
13ff0 50 69 74 63 68 41 6e 64 46 61 6d 69 6c 79 3b 0a PitchAndFamily;.
14000 20 20 20 20 42 59 54 45 20 74 6d 43 68 61 72 53 BYTE tmCharS
14010 65 74 3b 0a 20 20 20 20 44 57 4f 52 44 20 6e 74 et;. DWORD nt
14020 6d 46 6c 61 67 73 3b 0a 20 20 20 20 55 49 4e 54 mFlags;. UINT
14030 20 6e 74 6d 53 69 7a 65 45 4d 3b 0a 20 20 20 20 ntmSizeEM;.
14040 55 49 4e 54 20 6e 74 6d 43 65 6c 6c 48 65 69 67 UINT ntmCellHeig
14050 68 74 3b 0a 20 20 20 20 55 49 4e 54 20 6e 74 6d ht;. UINT ntm
14060 41 76 67 57 69 64 74 68 3b 0a 7d 0a 61 6c 69 61 AvgWidth;.}.alia
14070 73 20 4e 45 57 54 45 58 54 4d 45 54 52 49 43 41 s NEWTEXTMETRICA
14080 2a 50 4e 45 57 54 45 58 54 4d 45 54 52 49 43 41 *PNEWTEXTMETRICA
14090 2c 20 4e 50 4e 45 57 54 45 58 54 4d 45 54 52 49 , NPNEWTEXTMETRI
140a0 43 41 2c 20 4c 50 4e 45 57 54 45 58 54 4d 45 54 CA, LPNEWTEXTMET
140b0 52 49 43 41 3b 0a 0a 73 74 72 75 63 74 20 4e 45 RICA;..struct NE
140c0 57 54 45 58 54 4d 45 54 52 49 43 57 0a 7b 0a 20 WTEXTMETRICW.{.
140d0 20 20 20 4c 4f 4e 47 20 74 6d 48 65 69 67 68 74 LONG tmHeight
140e0 3b 0a 20 20 20 20 4c 4f 4e 47 20 74 6d 41 73 63 ;. LONG tmAsc
140f0 65 6e 74 3b 0a 20 20 20 20 4c 4f 4e 47 20 74 6d ent;. LONG tm
14100 44 65 73 63 65 6e 74 3b 0a 20 20 20 20 4c 4f 4e Descent;. LON
14110 47 20 74 6d 49 6e 74 65 72 6e 61 6c 4c 65 61 64 G tmInternalLead
14120 69 6e 67 3b 0a 20 20 20 20 4c 4f 4e 47 20 74 6d ing;. LONG tm
14130 45 78 74 65 72 6e 61 6c 4c 65 61 64 69 6e 67 3b ExternalLeading;
14140 0a 20 20 20 20 4c 4f 4e 47 20 74 6d 41 76 65 43 . LONG tmAveC
14150 68 61 72 57 69 64 74 68 3b 0a 20 20 20 20 4c 4f harWidth;. LO
14160 4e 47 20 74 6d 4d 61 78 43 68 61 72 57 69 64 74 NG tmMaxCharWidt
14170 68 3b 0a 20 20 20 20 4c 4f 4e 47 20 74 6d 57 65 h;. LONG tmWe
14180 69 67 68 74 3b 0a 20 20 20 20 4c 4f 4e 47 20 74 ight;. LONG t
14190 6d 4f 76 65 72 68 61 6e 67 3b 0a 20 20 20 20 4c mOverhang;. L
141a0 4f 4e 47 20 74 6d 44 69 67 69 74 69 7a 65 64 41 ONG tmDigitizedA
141b0 73 70 65 63 74 58 3b 0a 20 20 20 20 4c 4f 4e 47 spectX;. LONG
141c0 20 74 6d 44 69 67 69 74 69 7a 65 64 41 73 70 65 tmDigitizedAspe
141d0 63 74 59 3b 0a 20 20 20 20 57 43 48 41 52 20 74 ctY;. WCHAR t
141e0 6d 46 69 72 73 74 43 68 61 72 3b 0a 20 20 20 20 mFirstChar;.
141f0 57 43 48 41 52 20 74 6d 4c 61 73 74 43 68 61 72 WCHAR tmLastChar
14200 3b 0a 20 20 20 20 57 43 48 41 52 20 74 6d 44 65 ;. WCHAR tmDe
14210 66 61 75 6c 74 43 68 61 72 3b 0a 20 20 20 20 57 faultChar;. W
14220 43 48 41 52 20 74 6d 42 72 65 61 6b 43 68 61 72 CHAR tmBreakChar
14230 3b 0a 20 20 20 20 42 59 54 45 20 74 6d 49 74 61 ;. BYTE tmIta
14240 6c 69 63 3b 0a 20 20 20 20 42 59 54 45 20 74 6d lic;. BYTE tm
14250 55 6e 64 65 72 6c 69 6e 65 64 3b 0a 20 20 20 20 Underlined;.
14260 42 59 54 45 20 74 6d 53 74 72 75 63 6b 4f 75 74 BYTE tmStruckOut
14270 3b 0a 20 20 20 20 42 59 54 45 20 74 6d 50 69 74 ;. BYTE tmPit
14280 63 68 41 6e 64 46 61 6d 69 6c 79 3b 0a 20 20 20 chAndFamily;.
14290 20 42 59 54 45 20 74 6d 43 68 61 72 53 65 74 3b BYTE tmCharSet;
142a0 0a 20 20 20 20 44 57 4f 52 44 20 6e 74 6d 46 6c . DWORD ntmFl
142b0 61 67 73 3b 0a 20 20 20 20 55 49 4e 54 20 6e 74 ags;. UINT nt
142c0 6d 53 69 7a 65 45 4d 3b 0a 20 20 20 20 55 49 4e mSizeEM;. UIN
142d0 54 20 6e 74 6d 43 65 6c 6c 48 65 69 67 68 74 3b T ntmCellHeight;
142e0 0a 20 20 20 20 55 49 4e 54 20 6e 74 6d 41 76 67 . UINT ntmAvg
142f0 57 69 64 74 68 3b 0a 7d 0a 61 6c 69 61 73 20 4e Width;.}.alias N
14300 45 57 54 45 58 54 4d 45 54 52 49 43 57 2a 50 4e EWTEXTMETRICW*PN
14310 45 57 54 45 58 54 4d 45 54 52 49 43 57 2c 20 4e EWTEXTMETRICW, N
14320 50 4e 45 57 54 45 58 54 4d 45 54 52 49 43 57 2c PNEWTEXTMETRICW,
14330 20 4c 50 4e 45 57 54 45 58 54 4d 45 54 52 49 43 LPNEWTEXTMETRIC
14340 57 3b 0a 0a 61 6c 69 67 6e 20 3a 0a 73 74 72 75 W;..align :.stru
14350 63 74 20 4e 45 57 54 45 58 54 4d 45 54 52 49 43 ct NEWTEXTMETRIC
14360 45 58 41 0a 7b 0a 20 20 20 20 4e 45 57 54 45 58 EXA.{. NEWTEX
14370 54 4d 45 54 52 49 43 41 20 6e 74 6d 54 6d 3b 0a TMETRICA ntmTm;.
14380 20 20 20 20 46 4f 4e 54 53 49 47 4e 41 54 55 52 FONTSIGNATUR
14390 45 20 6e 74 6d 46 6f 6e 74 53 69 67 3b 0a 7d 0a E ntmFontSig;.}.
143a0 0a 73 74 72 75 63 74 20 4e 45 57 54 45 58 54 4d .struct NEWTEXTM
143b0 45 54 52 49 43 45 58 57 0a 7b 0a 20 20 20 20 4e ETRICEXW.{. N
143c0 45 57 54 45 58 54 4d 45 54 52 49 43 57 20 6e 74 EWTEXTMETRICW nt
143d0 6d 54 6d 3b 0a 20 20 20 20 46 4f 4e 54 53 49 47 mTm;. FONTSIG
143e0 4e 41 54 55 52 45 20 6e 74 6d 46 6f 6e 74 53 69 NATURE ntmFontSi
143f0 67 3b 0a 7d 0a 0a 73 74 72 75 63 74 20 50 45 4c g;.}..struct PEL
14400 41 52 52 41 59 0a 7b 0a 20 20 20 20 4c 4f 4e 47 ARRAY.{. LONG
14410 20 70 61 58 43 6f 75 6e 74 3b 0a 20 20 20 20 4c paXCount;. L
14420 4f 4e 47 20 70 61 59 43 6f 75 6e 74 3b 0a 20 20 ONG paYCount;.
14430 20 20 4c 4f 4e 47 20 70 61 58 45 78 74 3b 0a 20 LONG paXExt;.
14440 20 20 20 4c 4f 4e 47 20 70 61 59 45 78 74 3b 0a LONG paYExt;.
14450 20 20 20 20 42 59 54 45 20 70 61 52 47 42 73 3b BYTE paRGBs;
14460 0a 7d 0a 61 6c 69 61 73 20 50 45 4c 41 52 52 41 .}.alias PELARRA
14470 59 2a 50 50 45 4c 41 52 52 41 59 2c 20 4e 50 50 Y*PPELARRAY, NPP
14480 45 4c 41 52 52 41 59 2c 20 4c 50 50 45 4c 41 52 ELARRAY, LPPELAR
14490 52 41 59 3b 0a 0a 73 74 72 75 63 74 20 45 4e 55 RAY;..struct ENU
144a0 4d 4c 4f 47 46 4f 4e 54 41 0a 7b 0a 20 20 20 20 MLOGFONTA.{.
144b0 4c 4f 47 46 4f 4e 54 41 20 65 6c 66 4c 6f 67 46 LOGFONTA elfLogF
144c0 6f 6e 74 3b 0a 20 20 20 20 42 59 54 45 5b 4c 46 ont;. BYTE[LF
144d0 5f 46 55 4c 4c 46 41 43 45 53 49 5a 45 5d 20 65 _FULLFACESIZE] e
144e0 6c 66 46 75 6c 6c 4e 61 6d 65 3b 0a 20 20 20 20 lfFullName;.
144f0 42 59 54 45 5b 4c 46 5f 46 41 43 45 53 49 5a 45 BYTE[LF_FACESIZE
14500 5d 20 65 6c 66 53 74 79 6c 65 3b 0a 7d 0a 61 6c ] elfStyle;.}.al
14510 69 61 73 20 45 4e 55 4d 4c 4f 47 46 4f 4e 54 41 ias ENUMLOGFONTA
14520 2a 4c 50 45 4e 55 4d 4c 4f 47 46 4f 4e 54 41 3b *LPENUMLOGFONTA;
14530 0a 0a 73 74 72 75 63 74 20 45 4e 55 4d 4c 4f 47 ..struct ENUMLOG
14540 46 4f 4e 54 57 0a 7b 0a 20 20 20 20 4c 4f 47 46 FONTW.{. LOGF
14550 4f 4e 54 57 20 65 6c 66 4c 6f 67 46 6f 6e 74 3b ONTW elfLogFont;
14560 0a 20 20 20 20 57 43 48 41 52 5b 4c 46 5f 46 55 . WCHAR[LF_FU
14570 4c 4c 46 41 43 45 53 49 5a 45 5d 20 65 6c 66 46 LLFACESIZE] elfF
14580 75 6c 6c 4e 61 6d 65 3b 0a 20 20 20 20 57 43 48 ullName;. WCH
14590 41 52 5b 4c 46 5f 46 41 43 45 53 49 5a 45 5d 20 AR[LF_FACESIZE]
145a0 65 6c 66 53 74 79 6c 65 3b 0a 7d 0a 61 6c 69 61 elfStyle;.}.alia
145b0 73 20 45 4e 55 4d 4c 4f 47 46 4f 4e 54 57 2a 4c s ENUMLOGFONTW*L
145c0 50 45 4e 55 4d 4c 4f 47 46 4f 4e 54 57 3b 0a 0a PENUMLOGFONTW;..
145d0 73 74 72 75 63 74 20 45 4e 55 4d 4c 4f 47 46 4f struct ENUMLOGFO
145e0 4e 54 45 58 41 0a 7b 0a 20 20 20 20 4c 4f 47 46 NTEXA.{. LOGF
145f0 4f 4e 54 41 20 65 6c 66 4c 6f 67 46 6f 6e 74 3b ONTA elfLogFont;
14600 0a 20 20 20 20 42 59 54 45 5b 4c 46 5f 46 55 4c . BYTE[LF_FUL
14610 4c 46 41 43 45 53 49 5a 45 5d 20 65 6c 66 46 75 LFACESIZE] elfFu
14620 6c 6c 4e 61 6d 65 3b 0a 20 20 20 20 42 59 54 45 llName;. BYTE
14630 5b 4c 46 5f 46 41 43 45 53 49 5a 45 5d 20 65 6c [LF_FACESIZE] el
14640 66 53 74 79 6c 65 3b 0a 20 20 20 20 42 59 54 45 fStyle;. BYTE
14650 5b 4c 46 5f 46 41 43 45 53 49 5a 45 5d 20 65 6c [LF_FACESIZE] el
14660 66 53 63 72 69 70 74 3b 0a 7d 0a 61 6c 69 61 73 fScript;.}.alias
14670 20 45 4e 55 4d 4c 4f 47 46 4f 4e 54 45 58 41 2a ENUMLOGFONTEXA*
14680 4c 50 45 4e 55 4d 4c 4f 47 46 4f 4e 54 45 58 41 LPENUMLOGFONTEXA
14690 3b 0a 0a 73 74 72 75 63 74 20 45 4e 55 4d 4c 4f ;..struct ENUMLO
146a0 47 46 4f 4e 54 45 58 57 0a 7b 0a 20 20 20 20 4c GFONTEXW.{. L
146b0 4f 47 46 4f 4e 54 57 20 65 6c 66 4c 6f 67 46 6f OGFONTW elfLogFo
146c0 6e 74 3b 0a 20 20 20 20 57 43 48 41 52 5b 4c 46 nt;. WCHAR[LF
146d0 5f 46 55 4c 4c 46 41 43 45 53 49 5a 45 5d 20 65 _FULLFACESIZE] e
146e0 6c 66 46 75 6c 6c 4e 61 6d 65 3b 0a 20 20 20 20 lfFullName;.
146f0 57 43 48 41 52 5b 4c 46 5f 46 41 43 45 53 49 5a WCHAR[LF_FACESIZ
14700 45 5d 20 65 6c 66 53 74 79 6c 65 3b 0a 20 20 20 E] elfStyle;.
14710 20 57 43 48 41 52 5b 4c 46 5f 46 41 43 45 53 49 WCHAR[LF_FACESI
14720 5a 45 5d 20 65 6c 66 53 63 72 69 70 74 3b 0a 7d ZE] elfScript;.}
14730 0a 61 6c 69 61 73 20 45 4e 55 4d 4c 4f 47 46 4f .alias ENUMLOGFO
14740 4e 54 45 58 57 2a 4c 50 45 4e 55 4d 4c 4f 47 46 NTEXW*LPENUMLOGF
14750 4f 4e 54 45 58 57 3b 0a 0a 73 74 72 75 63 74 20 ONTEXW;..struct
14760 50 4f 49 4e 54 46 58 0a 7b 0a 20 20 20 20 46 49 POINTFX.{. FI
14770 58 45 44 20 78 3b 0a 20 20 20 20 46 49 58 45 44 XED x;. FIXED
14780 20 79 3b 0a 7d 0a 61 6c 69 61 73 20 50 4f 49 4e y;.}.alias POIN
14790 54 46 58 2a 4c 50 50 4f 49 4e 54 46 58 3b 0a 0a TFX*LPPOINTFX;..
147a0 73 74 72 75 63 74 20 54 54 50 4f 4c 59 43 55 52 struct TTPOLYCUR
147b0 56 45 0a 7b 0a 20 20 20 20 57 4f 52 44 20 77 54 VE.{. WORD wT
147c0 79 70 65 3b 0a 20 20 20 20 57 4f 52 44 20 63 70 ype;. WORD cp
147d0 66 78 3b 0a 20 20 20 20 50 4f 49 4e 54 46 58 5b fx;. POINTFX[
147e0 31 5d 20 61 70 66 78 3b 0a 7d 0a 61 6c 69 61 73 1] apfx;.}.alias
147f0 20 54 54 50 4f 4c 59 43 55 52 56 45 2a 4c 50 54 TTPOLYCURVE*LPT
14800 54 50 4f 4c 59 43 55 52 56 45 3b 0a 0a 73 74 72 TPOLYCURVE;..str
14810 75 63 74 20 54 54 50 4f 4c 59 47 4f 4e 48 45 41 uct TTPOLYGONHEA
14820 44 45 52 0a 7b 0a 20 20 20 20 44 57 4f 52 44 20 DER.{. DWORD
14830 63 62 3b 0a 20 20 20 20 44 57 4f 52 44 20 64 77 cb;. DWORD dw
14840 54 79 70 65 3b 0a 20 20 20 20 50 4f 49 4e 54 46 Type;. POINTF
14850 58 20 70 66 78 53 74 61 72 74 3b 0a 7d 0a 61 6c X pfxStart;.}.al
14860 69 61 73 20 54 54 50 4f 4c 59 47 4f 4e 48 45 41 ias TTPOLYGONHEA
14870 44 45 52 2a 4c 50 54 54 50 4f 4c 59 47 4f 4e 48 DER*LPTTPOLYGONH
14880 45 41 44 45 52 3b 0a 0a 73 74 72 75 63 74 20 50 EADER;..struct P
14890 4f 49 4e 54 46 4c 4f 41 54 0a 7b 0a 20 20 20 20 OINTFLOAT.{.
148a0 46 4c 4f 41 54 20 78 3b 0a 20 20 20 20 46 4c 4f FLOAT x;. FLO
148b0 41 54 20 79 3b 0a 7d 0a 61 6c 69 61 73 20 50 4f AT y;.}.alias PO
148c0 49 4e 54 46 4c 4f 41 54 2a 50 50 4f 49 4e 54 46 INTFLOAT*PPOINTF
148d0 4c 4f 41 54 3b 0a 0a 73 74 72 75 63 74 20 47 4c LOAT;..struct GL
148e0 59 50 48 4d 45 54 52 49 43 53 46 4c 4f 41 54 0a YPHMETRICSFLOAT.
148f0 7b 0a 20 20 20 20 46 4c 4f 41 54 20 67 6d 66 42 {. FLOAT gmfB
14900 6c 61 63 6b 42 6f 78 58 3b 0a 20 20 20 20 46 4c lackBoxX;. FL
14910 4f 41 54 20 67 6d 66 42 6c 61 63 6b 42 6f 78 59 OAT gmfBlackBoxY
14920 3b 0a 20 20 20 20 50 4f 49 4e 54 46 4c 4f 41 54 ;. POINTFLOAT
14930 20 67 6d 66 70 74 47 6c 79 70 68 4f 72 69 67 69 gmfptGlyphOrigi
14940 6e 3b 0a 20 20 20 20 46 4c 4f 41 54 20 67 6d 66 n;. FLOAT gmf
14950 43 65 6c 6c 49 6e 63 58 3b 0a 20 20 20 20 46 4c CellIncX;. FL
14960 4f 41 54 20 67 6d 66 43 65 6c 6c 49 6e 63 59 3b OAT gmfCellIncY;
14970 0a 7d 0a 61 6c 69 61 73 20 47 4c 59 50 48 4d 45 .}.alias GLYPHME
14980 54 52 49 43 53 46 4c 4f 41 54 2a 50 47 4c 59 50 TRICSFLOAT*PGLYP
14990 48 4d 45 54 52 49 43 53 46 4c 4f 41 54 2c 20 4c HMETRICSFLOAT, L
149a0 50 47 4c 59 50 48 4d 45 54 52 49 43 53 46 4c 4f PGLYPHMETRICSFLO
149b0 41 54 3b 0a 0a 73 74 72 75 63 74 20 4c 41 59 45 AT;..struct LAYE
149c0 52 50 4c 41 4e 45 44 45 53 43 52 49 50 54 4f 52 RPLANEDESCRIPTOR
149d0 0a 7b 0a 20 20 20 20 57 4f 52 44 20 6e 53 69 7a .{. WORD nSiz
149e0 65 3b 0a 20 20 20 20 57 4f 52 44 20 6e 56 65 72 e;. WORD nVer
149f0 73 69 6f 6e 3b 0a 20 20 20 20 44 57 4f 52 44 20 sion;. DWORD
14a00 64 77 46 6c 61 67 73 3b 0a 20 20 20 20 42 59 54 dwFlags;. BYT
14a10 45 20 69 50 69 78 65 6c 54 79 70 65 3b 0a 20 20 E iPixelType;.
14a20 20 20 42 59 54 45 20 63 43 6f 6c 6f 72 42 69 74 BYTE cColorBit
14a30 73 3b 0a 20 20 20 20 42 59 54 45 20 63 52 65 64 s;. BYTE cRed
14a40 42 69 74 73 3b 0a 20 20 20 20 42 59 54 45 20 63 Bits;. BYTE c
14a50 52 65 64 53 68 69 66 74 3b 0a 20 20 20 20 42 59 RedShift;. BY
14a60 54 45 20 63 47 72 65 65 6e 42 69 74 73 3b 0a 20 TE cGreenBits;.
14a70 20 20 20 42 59 54 45 20 63 47 72 65 65 6e 53 68 BYTE cGreenSh
14a80 69 66 74 3b 0a 20 20 20 20 42 59 54 45 20 63 42 ift;. BYTE cB
14a90 6c 75 65 42 69 74 73 3b 0a 20 20 20 20 42 59 54 lueBits;. BYT
14aa0 45 20 63 42 6c 75 65 53 68 69 66 74 3b 0a 20 20 E cBlueShift;.
14ab0 20 20 42 59 54 45 20 63 41 6c 70 68 61 42 69 74 BYTE cAlphaBit
14ac0 73 3b 0a 20 20 20 20 42 59 54 45 20 63 41 6c 70 s;. BYTE cAlp
14ad0 68 61 53 68 69 66 74 3b 0a 20 20 20 20 42 59 54 haShift;. BYT
14ae0 45 20 63 41 63 63 75 6d 42 69 74 73 3b 0a 20 20 E cAccumBits;.
14af0 20 20 42 59 54 45 20 63 41 63 63 75 6d 52 65 64 BYTE cAccumRed
14b00 42 69 74 73 3b 0a 20 20 20 20 42 59 54 45 20 63 Bits;. BYTE c
14b10 41 63 63 75 6d 47 72 65 65 6e 42 69 74 73 3b 0a AccumGreenBits;.
14b20 20 20 20 20 42 59 54 45 20 63 41 63 63 75 6d 42 BYTE cAccumB
14b30 6c 75 65 42 69 74 73 3b 0a 20 20 20 20 42 59 54 lueBits;. BYT
14b40 45 20 63 41 63 63 75 6d 41 6c 70 68 61 42 69 74 E cAccumAlphaBit
14b50 73 3b 0a 20 20 20 20 42 59 54 45 20 63 44 65 70 s;. BYTE cDep
14b60 74 68 42 69 74 73 3b 0a 20 20 20 20 42 59 54 45 thBits;. BYTE
14b70 20 63 53 74 65 6e 63 69 6c 42 69 74 73 3b 0a 20 cStencilBits;.
14b80 20 20 20 42 59 54 45 20 63 41 75 78 42 75 66 66 BYTE cAuxBuff
14b90 65 72 73 3b 0a 20 20 20 20 42 59 54 45 20 69 4c ers;. BYTE iL
14ba0 61 79 65 72 50 6c 61 6e 65 3b 0a 20 20 20 20 42 ayerPlane;. B
14bb0 59 54 45 20 62 52 65 73 65 72 76 65 64 3b 0a 20 YTE bReserved;.
14bc0 20 20 20 43 4f 4c 4f 52 52 45 46 20 63 72 54 72 COLORREF crTr
14bd0 61 6e 73 70 61 72 65 6e 74 3b 0a 7d 0a 61 6c 69 ansparent;.}.ali
14be0 61 73 20 4c 41 59 45 52 50 4c 41 4e 45 44 45 53 as LAYERPLANEDES
14bf0 43 52 49 50 54 4f 52 2a 50 4c 41 59 45 52 50 4c CRIPTOR*PLAYERPL
14c00 41 4e 45 44 45 53 43 52 49 50 54 4f 52 2c 20 4c ANEDESCRIPTOR, L
14c10 50 4c 41 59 45 52 50 4c 41 4e 45 44 45 53 43 52 PLAYERPLANEDESCR
14c20 49 50 54 4f 52 3b 0a 0a 73 74 72 75 63 74 20 42 IPTOR;..struct B
14c30 4c 45 4e 44 46 55 4e 43 54 49 4f 4e 0a 7b 0a 20 LENDFUNCTION.{.
14c40 20 20 20 42 59 54 45 20 42 6c 65 6e 64 4f 70 3b BYTE BlendOp;
14c50 0a 20 20 20 20 42 59 54 45 20 42 6c 65 6e 64 46 . BYTE BlendF
14c60 6c 61 67 73 3b 0a 20 20 20 20 42 59 54 45 20 53 lags;. BYTE S
14c70 6f 75 72 63 65 43 6f 6e 73 74 61 6e 74 41 6c 70 ourceConstantAlp
14c80 68 61 3b 0a 20 20 20 20 42 59 54 45 20 41 6c 70 ha;. BYTE Alp
14c90 68 61 46 6f 72 6d 61 74 3b 0a 7d 0a 61 6c 69 61 haFormat;.}.alia
14ca0 73 20 42 4c 45 4e 44 46 55 4e 43 54 49 4f 4e 2a s BLENDFUNCTION*
14cb0 50 42 4c 45 4e 44 46 55 4e 43 54 49 4f 4e 2c 20 PBLENDFUNCTION,
14cc0 4c 50 42 4c 45 4e 44 46 55 4e 43 54 49 4f 4e 3b LPBLENDFUNCTION;
14cd0 0a 0a 63 6f 6e 73 74 20 4d 4d 5f 4d 41 58 5f 4e ..const MM_MAX_N
14ce0 55 4d 41 58 45 53 20 3d 20 31 36 3b 0a 0a 73 74 UMAXES = 16;..st
14cf0 72 75 63 74 20 44 45 53 49 47 4e 56 45 43 54 4f ruct DESIGNVECTO
14d00 52 0a 7b 0a 20 20 20 20 44 57 4f 52 44 20 64 76 R.{. DWORD dv
14d10 52 65 73 65 72 76 65 64 3b 0a 20 20 20 20 44 57 Reserved;. DW
14d20 4f 52 44 20 64 76 4e 75 6d 41 78 65 73 3b 0a 20 ORD dvNumAxes;.
14d30 20 20 20 4c 4f 4e 47 5b 4d 4d 5f 4d 41 58 5f 4e LONG[MM_MAX_N
14d40 55 4d 41 58 45 53 5d 20 64 76 56 61 6c 75 65 73 UMAXES] dvValues
14d50 3b 0a 7d 0a 61 6c 69 61 73 20 44 45 53 49 47 4e ;.}.alias DESIGN
14d60 56 45 43 54 4f 52 2a 50 44 45 53 49 47 4e 56 45 VECTOR*PDESIGNVE
14d70 43 54 4f 52 2c 20 4c 50 44 45 53 49 47 4e 56 45 CTOR, LPDESIGNVE
14d80 43 54 4f 52 3b 0a 63 6f 6e 73 74 20 53 54 41 4d CTOR;.const STAM
14d90 50 5f 44 45 53 49 47 4e 56 45 43 54 4f 52 20 3d P_DESIGNVECTOR =
14da0 20 30 78 38 30 30 30 30 30 30 20 2b 20 27 64 27 0x8000000 + 'd'
14db0 20 2b 20 28 27 76 27 20 3c 3c 20 38 29 3b 0a 63 + ('v' << 8);.c
14dc0 6f 6e 73 74 20 53 54 41 4d 50 5f 41 58 45 53 4c onst STAMP_AXESL
14dd0 49 53 54 20 20 20 20 20 3d 20 30 78 38 30 30 30 IST = 0x8000
14de0 30 30 30 20 2b 20 27 61 27 20 2b 20 28 27 6c 27 000 + 'a' + ('l'
14df0 20 3c 3c 20 38 29 3b 0a 0a 73 74 61 74 69 63 0a << 8);..static.
14e00 0a 69 66 20 28 5f 57 49 4e 33 32 5f 57 49 4e 4e .if (_WIN32_WINN
14e10 54 20 3e 3d 20 30 78 30 35 30 30 29 0a 7b 0a 20 T >= 0x0500).{.
14e20 20 20 20 63 6f 6e 73 74 20 4d 4d 5f 4d 41 58 5f const MM_MAX_
14e30 41 58 45 53 5f 4e 41 4d 45 4c 45 4e 20 3d 20 31 AXES_NAMELEN = 1
14e40 36 3b 0a 0a 20 20 20 20 73 74 72 75 63 74 20 41 6;.. struct A
14e50 58 49 53 49 4e 46 4f 41 0a 20 20 20 20 7b 0a 20 XISINFOA. {.
14e60 20 20 20 20 20 20 20 4c 4f 4e 47 20 61 78 4d 69 LONG axMi
14e70 6e 56 61 6c 75 65 3b 0a 20 20 20 20 20 20 20 20 nValue;.
14e80 4c 4f 4e 47 20 61 78 4d 61 78 56 61 6c 75 65 3b LONG axMaxValue;
14e90 0a 20 20 20 20 20 20 20 20 42 59 54 45 5b 4d 4d . BYTE[MM
14ea0 5f 4d 41 58 5f 41 58 45 53 5f 4e 41 4d 45 4c 45 _MAX_AXES_NAMELE
14eb0 4e 5d 20 61 78 41 78 69 73 4e 61 6d 65 3b 0a 20 N] axAxisName;.
14ec0 20 20 20 7d 0a 20 20 20 20 61 6c 69 61 73 20 41 }. alias A
14ed0 58 49 53 49 4e 46 4f 41 2a 50 41 58 49 53 49 4e XISINFOA*PAXISIN
14ee0 46 4f 41 2c 20 4c 50 41 58 49 53 49 4e 46 4f 41 FOA, LPAXISINFOA
14ef0 3b 0a 0a 20 20 20 20 73 74 72 75 63 74 20 41 58 ;.. struct AX
14f00 49 53 49 4e 46 4f 57 0a 20 20 20 20 7b 0a 20 20 ISINFOW. {.
14f10 20 20 20 20 20 20 4c 4f 4e 47 20 61 78 4d 69 6e LONG axMin
14f20 56 61 6c 75 65 3b 0a 20 20 20 20 20 20 20 20 4c Value;. L
14f30 4f 4e 47 20 61 78 4d 61 78 56 61 6c 75 65 3b 0a ONG axMaxValue;.
14f40 20 20 20 20 20 20 20 20 57 43 48 41 52 5b 4d 4d WCHAR[MM
14f50 5f 4d 41 58 5f 41 58 45 53 5f 4e 41 4d 45 4c 45 _MAX_AXES_NAMELE
14f60 4e 5d 20 61 78 41 78 69 73 4e 61 6d 65 3b 0a 20 N] axAxisName;.
14f70 20 20 20 7d 0a 20 20 20 20 61 6c 69 61 73 20 41 }. alias A
14f80 58 49 53 49 4e 46 4f 57 2a 50 41 58 49 53 49 4e XISINFOW*PAXISIN
14f90 46 4f 57 2c 20 4c 50 41 58 49 53 49 4e 46 4f 57 FOW, LPAXISINFOW
14fa0 3b 0a 0a 20 20 20 20 76 65 72 73 69 6f 6e 20 28 ;.. version (
14fb0 55 6e 69 63 6f 64 65 29 0a 20 20 20 20 7b 0a 20 Unicode). {.
14fc0 20 20 20 20 20 20 20 61 6c 69 61 73 20 41 58 49 alias AXI
14fd0 53 49 4e 46 4f 57 20 20 20 41 58 49 53 49 4e 46 SINFOW AXISINF
14fe0 4f 3b 0a 20 20 20 20 20 20 20 20 61 6c 69 61 73 O;. alias
14ff0 20 50 41 58 49 53 49 4e 46 4f 57 20 20 50 41 58 PAXISINFOW PAX
15000 49 53 49 4e 46 4f 3b 0a 20 20 20 20 20 20 20 20 ISINFO;.
15010 61 6c 69 61 73 20 4c 50 41 58 49 53 49 4e 46 4f alias LPAXISINFO
15020 57 20 4c 50 41 58 49 53 49 4e 46 4f 3b 0a 20 20 W LPAXISINFO;.
15030 20 20 7d 0a 20 20 20 20 65 6c 73 65 0a 20 20 20 }. else.
15040 20 7b 0a 20 20 20 20 20 20 20 20 61 6c 69 61 73 {. alias
15050 20 41 58 49 53 49 4e 46 4f 41 20 20 20 41 58 49 AXISINFOA AXI
15060 53 49 4e 46 4f 3b 0a 20 20 20 20 20 20 20 20 61 SINFO;. a
15070 6c 69 61 73 20 50 41 58 49 53 49 4e 46 4f 41 20 lias PAXISINFOA
15080 20 50 41 58 49 53 49 4e 46 4f 3b 0a 20 20 20 20 PAXISINFO;.
15090 20 20 20 20 61 6c 69 61 73 20 4c 50 41 58 49 53 alias LPAXIS
150a0 49 4e 46 4f 41 20 4c 50 41 58 49 53 49 4e 46 4f INFOA LPAXISINFO
150b0 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 73 74 72 ;. }.. str
150c0 75 63 74 20 41 58 45 53 4c 49 53 54 41 0a 20 20 uct AXESLISTA.
150d0 20 20 7b 0a 20 20 20 20 20 20 20 20 44 57 4f 52 {. DWOR
150e0 44 20 61 78 6c 52 65 73 65 72 76 65 64 3b 0a 20 D axlReserved;.
150f0 20 20 20 20 20 20 20 44 57 4f 52 44 20 61 78 6c DWORD axl
15100 4e 75 6d 41 78 65 73 3b 0a 20 20 20 20 20 20 20 NumAxes;.
15110 20 41 58 49 53 49 4e 46 4f 41 5b 4d 4d 5f 4d 41 AXISINFOA[MM_MA
15120 58 5f 4e 55 4d 41 58 45 53 5d 20 61 78 6c 41 78 X_NUMAXES] axlAx
15130 69 73 49 6e 66 6f 3b 0a 20 20 20 20 7d 0a 20 20 isInfo;. }.
15140 20 20 61 6c 69 61 73 20 41 58 45 53 4c 49 53 54 alias AXESLIST
15150 41 2a 50 41 58 45 53 4c 49 53 54 41 2c 20 4c 50 A*PAXESLISTA, LP
15160 41 58 45 53 4c 49 53 54 41 3b 0a 0a 20 20 20 20 AXESLISTA;..
15170 73 74 72 75 63 74 20 41 58 45 53 4c 49 53 54 57 struct AXESLISTW
15180 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 44 . {. D
15190 57 4f 52 44 20 61 78 6c 52 65 73 65 72 76 65 64 WORD axlReserved
151a0 3b 0a 20 20 20 20 20 20 20 20 44 57 4f 52 44 20 ;. DWORD
151b0 61 78 6c 4e 75 6d 41 78 65 73 3b 0a 20 20 20 20 axlNumAxes;.
151c0 20 20 20 20 41 58 49 53 49 4e 46 4f 57 5b 4d 4d AXISINFOW[MM
151d0 5f 4d 41 58 5f 4e 55 4d 41 58 45 53 5d 20 61 78 _MAX_NUMAXES] ax
151e0 6c 41 78 69 73 49 6e 66 6f 3b 0a 20 20 20 20 7d lAxisInfo;. }
151f0 0a 20 20 20 20 61 6c 69 61 73 20 41 58 45 53 4c . alias AXESL
15200 49 53 54 57 2a 50 41 58 45 53 4c 49 53 54 57 2c ISTW*PAXESLISTW,
15210 20 4c 50 41 58 45 53 4c 49 53 54 57 3b 0a 0a 20 LPAXESLISTW;..
15220 20 20 20 76 65 72 73 69 6f 6e 20 28 55 6e 69 63 version (Unic
15230 6f 64 65 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 ode). {.
15240 20 20 20 61 6c 69 61 73 20 41 58 45 53 4c 49 53 alias AXESLIS
15250 54 57 20 20 20 41 58 45 53 4c 49 53 54 3b 0a 20 TW AXESLIST;.
15260 20 20 20 20 20 20 20 61 6c 69 61 73 20 50 41 58 alias PAX
15270 45 53 4c 49 53 54 57 20 20 50 41 58 45 53 4c 49 ESLISTW PAXESLI
15280 53 54 3b 0a 20 20 20 20 20 20 20 20 61 6c 69 61 ST;. alia
15290 73 20 4c 50 41 58 45 53 4c 49 53 54 57 20 4c 50 s LPAXESLISTW LP
152a0 41 58 45 53 4c 49 53 54 3b 0a 20 20 20 20 7d 0a AXESLIST;. }.
152b0 20 20 20 20 65 6c 73 65 0a 20 20 20 20 7b 0a 20 else. {.
152c0 20 20 20 20 20 20 20 61 6c 69 61 73 20 41 58 45 alias AXE
152d0 53 4c 49 53 54 41 20 20 20 41 58 45 53 4c 49 53 SLISTA AXESLIS
152e0 54 3b 0a 20 20 20 20 20 20 20 20 61 6c 69 61 73 T;. alias
152f0 20 50 41 58 45 53 4c 49 53 54 41 20 20 50 41 58 PAXESLISTA PAX
15300 45 53 4c 49 53 54 3b 0a 20 20 20 20 20 20 20 20 ESLIST;.
15310 61 6c 69 61 73 20 4c 50 41 58 45 53 4c 49 53 54 alias LPAXESLIST
15320 41 20 4c 50 41 58 45 53 4c 49 53 54 3b 0a 20 20 A LPAXESLIST;.
15330 20 20 7d 0a 0a 20 20 20 20 73 74 72 75 63 74 20 }.. struct
15340 45 4e 55 4d 4c 4f 47 46 4f 4e 54 45 58 44 56 41 ENUMLOGFONTEXDVA
15350 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 45 . {. E
15360 4e 55 4d 4c 4f 47 46 4f 4e 54 45 58 41 20 65 6c NUMLOGFONTEXA el
15370 66 45 6e 75 6d 4c 6f 67 66 6f 6e 74 45 78 3b 0a fEnumLogfontEx;.
15380 20 20 20 20 20 20 20 20 44 45 53 49 47 4e 56 45 DESIGNVE
15390 43 54 4f 52 20 65 6c 66 44 65 73 69 67 6e 56 65 CTOR elfDesignVe
153a0 63 74 6f 72 3b 0a 20 20 20 20 7d 0a 20 20 20 20 ctor;. }.
153b0 61 6c 69 61 73 20 45 4e 55 4d 4c 4f 47 46 4f 4e alias ENUMLOGFON
153c0 54 45 58 44 56 41 2a 50 45 4e 55 4d 4c 4f 47 46 TEXDVA*PENUMLOGF
153d0 4f 4e 54 45 58 44 56 41 2c 20 4c 50 45 4e 55 4d ONTEXDVA, LPENUM
153e0 4c 4f 47 46 4f 4e 54 45 58 44 56 41 3b 0a 0a 20 LOGFONTEXDVA;..
153f0 20 20 20 73 74 72 75 63 74 20 45 4e 55 4d 4c 4f struct ENUMLO
15400 47 46 4f 4e 54 45 58 44 56 57 0a 20 20 20 20 7b GFONTEXDVW. {
15410 0a 20 20 20 20 20 20 20 20 45 4e 55 4d 4c 4f 47 . ENUMLOG
15420 46 4f 4e 54 45 58 57 20 65 6c 66 45 6e 75 6d 4c FONTEXW elfEnumL
15430 6f 67 66 6f 6e 74 45 78 3b 0a 20 20 20 20 20 20 ogfontEx;.
15440 20 20 44 45 53 49 47 4e 56 45 43 54 4f 52 20 65 DESIGNVECTOR e
15450 6c 66 44 65 73 69 67 6e 56 65 63 74 6f 72 3b 0a lfDesignVector;.
15460 20 20 20 20 7d 0a 20 20 20 20 61 6c 69 61 73 20 }. alias
15470 45 4e 55 4d 4c 4f 47 46 4f 4e 54 45 58 44 56 57 ENUMLOGFONTEXDVW
15480 2a 50 45 4e 55 4d 4c 4f 47 46 4f 4e 54 45 58 44 *PENUMLOGFONTEXD
15490 56 57 2c 20 4c 50 45 4e 55 4d 4c 4f 47 46 4f 4e VW, LPENUMLOGFON
154a0 54 45 58 44 56 57 3b 0a 0a 20 20 20 20 48 46 4f TEXDVW;.. HFO
154b0 4e 54 20 43 72 65 61 74 65 46 6f 6e 74 49 6e 64 NT CreateFontInd
154c0 69 72 65 63 74 45 78 41 28 45 4e 55 4d 4c 4f 47 irectExA(ENUMLOG
154d0 46 4f 4e 54 45 58 44 56 41 2a 29 3b 0a 0a 20 20 FONTEXDVA*);..
154e0 20 20 48 46 4f 4e 54 20 43 72 65 61 74 65 46 6f HFONT CreateFo
154f0 6e 74 49 6e 64 69 72 65 63 74 45 78 57 28 45 4e ntIndirectExW(EN
15500 55 4d 4c 4f 47 46 4f 4e 54 45 58 44 56 57 2a 29 UMLOGFONTEXDVW*)
15510 3b 0a 0a 20 20 20 20 76 65 72 73 69 6f 6e 20 28 ;.. version (
15520 55 6e 69 63 6f 64 65 29 0a 20 20 20 20 20 20 20 Unicode).
15530 20 61 6c 69 61 73 20 43 72 65 61 74 65 46 6f 6e alias CreateFon
15540 74 49 6e 64 69 72 65 63 74 45 78 57 20 43 72 65 tIndirectExW Cre
15550 61 74 65 46 6f 6e 74 49 6e 64 69 72 65 63 74 45 ateFontIndirectE
15560 78 3b 0a 20 20 20 20 65 6c 73 65 0a 20 20 20 20 x;. else.
15570 20 20 20 20 61 6c 69 61 73 20 43 72 65 61 74 65 alias Create
15580 46 6f 6e 74 49 6e 64 69 72 65 63 74 45 78 41 20 FontIndirectExA
15590 43 72 65 61 74 65 46 6f 6e 74 49 6e 64 69 72 65 CreateFontIndire
155a0 63 74 45 78 3b 0a 0a 20 20 20 20 73 74 72 75 63 ctEx;.. struc
155b0 74 20 45 4e 55 4d 54 45 58 54 4d 45 54 52 49 43 t ENUMTEXTMETRIC
155c0 41 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 A. {.
155d0 4e 45 57 54 45 58 54 4d 45 54 52 49 43 45 58 41 NEWTEXTMETRICEXA
155e0 20 65 74 6d 4e 65 77 54 65 78 74 4d 65 74 72 69 etmNewTextMetri
155f0 63 45 78 3b 0a 20 20 20 20 20 20 20 20 41 58 45 cEx;. AXE
15600 53 4c 49 53 54 41 20 65 74 6d 41 78 65 73 4c 69 SLISTA etmAxesLi
15610 73 74 3b 0a 20 20 20 20 7d 0a 20 20 20 20 61 6c st;. }. al
15620 69 61 73 20 45 4e 55 4d 54 45 58 54 4d 45 54 52 ias ENUMTEXTMETR
15630 49 43 41 2a 50 45 4e 55 4d 54 45 58 54 4d 45 54 ICA*PENUMTEXTMET
15640 52 49 43 41 2c 20 4c 50 45 4e 55 4d 54 45 58 54 RICA, LPENUMTEXT
15650 4d 45 54 52 49 43 41 3b 0a 0a 20 20 20 20 73 74 METRICA;.. st
15660 72 75 63 74 20 45 4e 55 4d 54 45 58 54 4d 45 54 ruct ENUMTEXTMET
15670 52 49 43 57 0a 20 20 20 20 7b 0a 20 20 20 20 20 RICW. {.
15680 20 20 20 4e 45 57 54 45 58 54 4d 45 54 52 49 43 NEWTEXTMETRIC
15690 45 58 57 20 65 74 6d 4e 65 77 54 65 78 74 4d 65 EXW etmNewTextMe
156a0 74 72 69 63 45 78 3b 0a 20 20 20 20 20 20 20 20 tricEx;.
156b0 41 58 45 53 4c 49 53 54 57 20 65 74 6d 41 78 65 AXESLISTW etmAxe
156c0 73 4c 69 73 74 3b 0a 20 20 20 20 7d 0a 20 20 20 sList;. }.
156d0 20 61 6c 69 61 73 20 45 4e 55 4d 54 45 58 54 4d alias ENUMTEXTM
156e0 45 54 52 49 43 57 2a 50 45 4e 55 4d 54 45 58 54 ETRICW*PENUMTEXT
156f0 4d 45 54 52 49 43 57 2c 20 4c 50 45 4e 55 4d 54 METRICW, LPENUMT
15700 45 58 54 4d 45 54 52 49 43 57 3b 0a 0a 20 20 20 EXTMETRICW;..
15710 20 76 65 72 73 69 6f 6e 20 28 55 6e 69 63 6f 64 version (Unicod
15720 65 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 e). {.
15730 20 61 6c 69 61 73 20 45 4e 55 4d 54 45 58 54 4d alias ENUMTEXTM
15740 45 54 52 49 43 57 20 20 20 45 4e 55 4d 54 45 58 ETRICW ENUMTEX
15750 54 4d 45 54 52 49 43 3b 0a 20 20 20 20 20 20 20 TMETRIC;.
15760 20 61 6c 69 61 73 20 50 45 4e 55 4d 54 45 58 54 alias PENUMTEXT
15770 4d 45 54 52 49 43 57 20 20 50 45 4e 55 4d 54 45 METRICW PENUMTE
15780 58 54 4d 45 54 52 49 43 3b 0a 20 20 20 20 20 20 XTMETRIC;.
15790 20 20 61 6c 69 61 73 20 4c 50 45 4e 55 4d 54 45 alias LPENUMTE
157a0 58 54 4d 45 54 52 49 43 57 20 4c 50 45 4e 55 4d XTMETRICW LPENUM
157b0 54 45 58 54 4d 45 54 52 49 43 3b 0a 20 20 20 20 TEXTMETRIC;.
157c0 7d 0a 20 20 20 20 65 6c 73 65 0a 20 20 20 20 7b }. else. {
157d0 0a 20 20 20 20 20 20 20 20 61 6c 69 61 73 20 45 . alias E
157e0 4e 55 4d 54 45 58 54 4d 45 54 52 49 43 41 20 20 NUMTEXTMETRICA
157f0 20 45 4e 55 4d 54 45 58 54 4d 45 54 52 49 43 3b ENUMTEXTMETRIC;
15800 0a 20 20 20 20 20 20 20 20 61 6c 69 61 73 20 50 . alias P
15810 45 4e 55 4d 54 45 58 54 4d 45 54 52 49 43 41 20 ENUMTEXTMETRICA
15820 20 50 45 4e 55 4d 54 45 58 54 4d 45 54 52 49 43 PENUMTEXTMETRIC
15830 3b 0a 20 20 20 20 20 20 20 20 61 6c 69 61 73 20 ;. alias
15840 4c 50 45 4e 55 4d 54 45 58 54 4d 45 54 52 49 43 LPENUMTEXTMETRIC
15850 41 20 4c 50 45 4e 55 4d 54 45 58 54 4d 45 54 52 A LPENUMTEXTMETR
15860 49 43 3b 0a 20 20 20 20 7d 0a 7d 20 2f 2a 20 5f IC;. }.} /* _
15870 57 49 4e 33 32 5f 57 49 4e 4e 54 20 3e 3d 20 30 WIN32_WINNT >= 0
15880 78 30 35 30 30 20 2a 2f 0a 0a 73 74 72 75 63 74 x0500 */..struct
15890 20 47 52 41 44 49 45 4e 54 5f 54 52 49 41 4e 47 GRADIENT_TRIANG
158a0 4c 45 0a 7b 0a 20 20 20 20 55 4c 4f 4e 47 20 56 LE.{. ULONG V
158b0 65 72 74 65 78 31 3b 0a 20 20 20 20 55 4c 4f 4e ertex1;. ULON
158c0 47 20 56 65 72 74 65 78 32 3b 0a 20 20 20 20 55 G Vertex2;. U
158d0 4c 4f 4e 47 20 56 65 72 74 65 78 33 3b 0a 7d 0a LONG Vertex3;.}.
158e0 61 6c 69 61 73 20 47 52 41 44 49 45 4e 54 5f 54 alias GRADIENT_T
158f0 52 49 41 4e 47 4c 45 2a 50 47 52 41 44 49 45 4e RIANGLE*PGRADIEN
15900 54 5f 54 52 49 41 4e 47 4c 45 2c 20 4c 50 47 52 T_TRIANGLE, LPGR
15910 41 44 49 45 4e 54 5f 54 52 49 41 4e 47 4c 45 3b ADIENT_TRIANGLE;
15920 0a 0a 73 74 72 75 63 74 20 47 52 41 44 49 45 4e ..struct GRADIEN
15930 54 5f 52 45 43 54 0a 7b 0a 20 20 20 20 55 4c 4f T_RECT.{. ULO
15940 4e 47 20 55 70 70 65 72 4c 65 66 74 3b 0a 20 20 NG UpperLeft;.
15950 20 20 55 4c 4f 4e 47 20 4c 6f 77 65 72 52 69 67 ULONG LowerRig
15960 68 74 3b 0a 7d 0a 61 6c 69 61 73 20 47 52 41 44 ht;.}.alias GRAD
15970 49 45 4e 54 5f 52 45 43 54 2a 50 47 52 41 44 49 IENT_RECT*PGRADI
15980 45 4e 54 5f 52 45 43 54 2c 20 4c 50 47 52 41 44 ENT_RECT, LPGRAD
15990 49 45 4e 54 5f 52 45 43 54 3b 0a 0a 73 74 72 75 IENT_RECT;..stru
159a0 63 74 20 44 49 53 50 4c 41 59 5f 44 45 56 49 43 ct DISPLAY_DEVIC
159b0 45 41 0a 7b 0a 20 20 20 20 44 57 4f 52 44 20 63 EA.{. DWORD c
159c0 62 3b 0a 20 20 20 20 43 48 41 52 5b 33 32 5d 20 b;. CHAR[32]
159d0 44 65 76 69 63 65 4e 61 6d 65 3b 0a 20 20 20 20 DeviceName;.
159e0 43 48 41 52 5b 31 32 38 5d 20 44 65 76 69 63 65 CHAR[128] Device
159f0 53 74 72 69 6e 67 3b 0a 20 20 20 20 44 57 4f 52 String;. DWOR
15a00 44 20 53 74 61 74 65 46 6c 61 67 73 3b 0a 20 20 D StateFlags;.
15a10 20 20 43 48 41 52 5b 31 32 38 5d 20 44 65 76 69 CHAR[128] Devi
15a20 63 65 49 44 3b 0a 20 20 20 20 43 48 41 52 5b 31 ceID;. CHAR[1
15a30 32 38 5d 20 44 65 76 69 63 65 4b 65 79 3b 0a 7d 28] DeviceKey;.}
15a40 0a 61 6c 69 61 73 20 44 49 53 50 4c 41 59 5f 44 .alias DISPLAY_D
15a50 45 56 49 43 45 41 2a 50 44 49 53 50 4c 41 59 5f EVICEA*PDISPLAY_
15a60 44 45 56 49 43 45 41 2c 20 4c 50 44 49 53 50 4c DEVICEA, LPDISPL
15a70 41 59 5f 44 45 56 49 43 45 41 3b 0a 0a 73 74 72 AY_DEVICEA;..str
15a80 75 63 74 20 44 49 53 50 4c 41 59 5f 44 45 56 49 uct DISPLAY_DEVI
15a90 43 45 57 0a 7b 0a 20 20 20 20 44 57 4f 52 44 20 CEW.{. DWORD
15aa0 63 62 3b 0a 20 20 20 20 57 43 48 41 52 5b 33 32 cb;. WCHAR[32
15ab0 5d 20 44 65 76 69 63 65 4e 61 6d 65 3b 0a 20 20 ] DeviceName;.
15ac0 20 20 57 43 48 41 52 5b 31 32 38 5d 20 44 65 76 WCHAR[128] Dev
15ad0 69 63 65 53 74 72 69 6e 67 3b 0a 20 20 20 20 44 iceString;. D
15ae0 57 4f 52 44 20 53 74 61 74 65 46 6c 61 67 73 3b WORD StateFlags;
15af0 0a 20 20 20 20 57 43 48 41 52 5b 31 32 38 5d 20 . WCHAR[128]
15b00 44 65 76 69 63 65 49 44 3b 0a 20 20 20 20 57 43 DeviceID;. WC
15b10 48 41 52 5b 31 32 38 5d 20 44 65 76 69 63 65 4b HAR[128] DeviceK
15b20 65 79 3b 0a 7d 0a 61 6c 69 61 73 20 44 49 53 50 ey;.}.alias DISP
15b30 4c 41 59 5f 44 45 56 49 43 45 57 2a 50 44 49 53 LAY_DEVICEW*PDIS
15b40 50 4c 41 59 5f 44 45 56 49 43 45 57 2c 20 4c 50 PLAY_DEVICEW, LP
15b50 44 49 53 50 4c 41 59 5f 44 45 56 49 43 45 57 3b DISPLAY_DEVICEW;
15b60 0a 0a 73 74 61 74 69 63 0a 0a 69 66 20 28 57 49 ..static..if (WI
15b70 4e 56 45 52 20 3e 3d 20 30 78 30 34 30 30 29 0a NVER >= 0x0400).
15b80 7b 0a 20 20 20 20 73 74 72 75 63 74 20 44 52 41 {. struct DRA
15b90 57 50 41 54 52 45 43 54 0a 20 20 20 20 7b 0a 20 WPATRECT. {.
15ba0 20 20 20 20 20 20 20 50 4f 49 4e 54 20 70 74 50 POINT ptP
15bb0 6f 73 69 74 69 6f 6e 3b 0a 20 20 20 20 20 20 20 osition;.
15bc0 20 50 4f 49 4e 54 20 70 74 53 69 7a 65 3b 0a 20 POINT ptSize;.
15bd0 20 20 20 20 20 20 20 57 4f 52 44 20 77 53 74 79 WORD wSty
15be0 6c 65 3b 0a 20 20 20 20 20 20 20 20 57 4f 52 44 le;. WORD
15bf0 20 77 50 61 74 74 65 72 6e 3b 0a 20 20 20 20 7d wPattern;. }
15c00 0a 20 20 20 20 61 6c 69 61 73 20 44 52 41 57 50 . alias DRAWP
15c10 41 54 52 45 43 54 2a 50 44 52 41 57 50 41 54 52 ATRECT*PDRAWPATR
15c20 45 43 54 3b 0a 7d 0a 0a 2f 2f 20 2d 2d 2d 2d 2d ECT;.}..// -----
15c30 2d 2d 2d 2d 0a 2f 2f 20 43 61 6c 6c 62 61 63 6b ----.// Callback
15c40 73 0a 0a 61 6c 69 61 73 20 42 4f 4f 4c 20 66 75 s..alias BOOL fu
15c50 6e 63 74 69 6f 6e 28 48 44 43 2c 20 69 6e 74 29 nction(HDC, int)
15c60 20 41 42 4f 52 54 50 52 4f 43 3b 0a 0a 61 6c 69 ABORTPROC;..ali
15c70 61 73 20 69 6e 74 20 66 75 6e 63 74 69 6f 6e 28 as int function(
15c80 48 44 43 2c 20 48 41 4e 44 4c 45 54 41 42 4c 45 HDC, HANDLETABLE
15c90 2a 2c 20 4d 45 54 41 52 45 43 4f 52 44 2a 2c 20 *, METARECORD*,
15ca0 69 6e 74 2c 20 4c 50 41 52 41 4d 29 20 4d 46 45 int, LPARAM) MFE
15cb0 4e 55 4d 50 52 4f 43 3b 0a 0a 61 6c 69 61 73 20 NUMPROC;..alias
15cc0 69 6e 74 20 66 75 6e 63 74 69 6f 6e 28 48 44 43 int function(HDC
15cd0 2c 20 48 41 4e 44 4c 45 54 41 42 4c 45 2a 2c 20 , HANDLETABLE*,
15ce0 43 50 74 72 21 28 45 4e 48 4d 45 54 41 52 45 43 CPtr!(ENHMETAREC
15cf0 4f 52 44 29 2c 20 69 6e 74 2c 20 4c 50 41 52 41 ORD), int, LPARA
15d00 4d 29 20 45 4e 48 4d 46 45 4e 55 4d 50 52 4f 43 M) ENHMFENUMPROC
15d10 3b 0a 0a 61 6c 69 61 73 20 69 6e 74 20 66 75 6e ;..alias int fun
15d20 63 74 69 6f 6e 28 43 50 74 72 21 28 4c 4f 47 46 ction(CPtr!(LOGF
15d30 4f 4e 54 41 29 2c 20 43 50 74 72 21 28 54 45 58 ONTA), CPtr!(TEX
15d40 54 4d 45 54 52 49 43 41 29 2c 20 44 57 4f 52 44 TMETRICA), DWORD
15d50 2c 20 4c 50 41 52 41 4d 29 20 46 4f 4e 54 45 4e , LPARAM) FONTEN
15d60 55 4d 50 52 4f 43 41 2c 20 4f 4c 44 46 4f 4e 54 UMPROCA, OLDFONT
15d70 45 4e 55 4d 50 52 4f 43 41 3b 0a 0a 61 6c 69 61 ENUMPROCA;..alia
15d80 73 20 69 6e 74 20 66 75 6e 63 74 69 6f 6e 28 43 s int function(C
15d90 50 74 72 21 28 4c 4f 47 46 4f 4e 54 57 29 2c 20 Ptr!(LOGFONTW),
15da0 43 50 74 72 21 28 54 45 58 54 4d 45 54 52 49 43 CPtr!(TEXTMETRIC
15db0 57 29 2c 20 44 57 4f 52 44 2c 20 4c 50 41 52 41 W), DWORD, LPARA
15dc0 4d 29 20 46 4f 4e 54 45 4e 55 4d 50 52 4f 43 57 M) FONTENUMPROCW
15dd0 2c 20 4f 4c 44 46 4f 4e 54 45 4e 55 4d 50 52 4f , OLDFONTENUMPRO
15de0 43 57 3b 0a 0a 61 6c 69 61 73 20 69 6e 74 20 66 CW;..alias int f
15df0 75 6e 63 74 69 6f 6e 28 4c 50 53 54 52 2c 20 4c unction(LPSTR, L
15e00 50 41 52 41 4d 29 20 49 43 4d 45 4e 55 4d 50 52 PARAM) ICMENUMPR
15e10 4f 43 41 3b 0a 0a 61 6c 69 61 73 20 69 6e 74 20 OCA;..alias int
15e20 66 75 6e 63 74 69 6f 6e 28 4c 50 57 53 54 52 2c function(LPWSTR,
15e30 20 4c 50 41 52 41 4d 29 20 49 43 4d 45 4e 55 4d LPARAM) ICMENUM
15e40 50 52 4f 43 57 3b 0a 0a 61 6c 69 61 73 20 76 6f PROCW;..alias vo
15e50 69 64 20 66 75 6e 63 74 69 6f 6e 28 4c 50 56 4f id function(LPVO
15e60 49 44 2c 20 4c 50 41 52 41 4d 29 20 47 4f 42 4a ID, LPARAM) GOBJ
15e70 45 4e 55 4d 50 52 4f 43 3b 0a 0a 61 6c 69 61 73 ENUMPROC;..alias
15e80 20 76 6f 69 64 20 66 75 6e 63 74 69 6f 6e 28 69 void function(i
15e90 6e 74 2c 20 69 6e 74 2c 20 4c 50 41 52 41 4d 29 nt, int, LPARAM)
15ea0 20 4c 49 4e 45 44 44 41 50 52 4f 43 3b 0a 0a 61 LINEDDAPROC;..a
15eb0 6c 69 61 73 20 55 49 4e 54 20 66 75 6e 63 74 69 lias UINT functi
15ec0 6f 6e 28 48 57 4e 44 2c 20 48 4d 4f 44 55 4c 45 on(HWND, HMODULE
15ed0 2c 20 4c 50 44 45 56 4d 4f 44 45 41 2c 20 4c 50 , LPDEVMODEA, LP
15ee0 53 54 52 2c 20 4c 50 53 54 52 2c 20 4c 50 44 45 STR, LPSTR, LPDE
15ef0 56 4d 4f 44 45 41 2c 20 4c 50 53 54 52 2c 20 55 VMODEA, LPSTR, U
15f00 49 4e 54 29 20 4c 50 46 4e 44 45 56 4d 4f 44 45 INT) LPFNDEVMODE
15f10 3b 0a 0a 61 6c 69 61 73 20 44 57 4f 52 44 20 66 ;..alias DWORD f
15f20 75 6e 63 74 69 6f 6e 28 4c 50 53 54 52 2c 20 4c unction(LPSTR, L
15f30 50 53 54 52 2c 20 55 49 4e 54 2c 20 4c 50 53 54 PSTR, UINT, LPST
15f40 52 2c 20 4c 50 44 45 56 4d 4f 44 45 41 29 20 4c R, LPDEVMODEA) L
15f50 50 46 4e 44 45 56 43 41 50 53 3b 0a 0a 2f 2f 20 PFNDEVCAPS;..//
15f60 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 2f 2f 20 43 20 4d ---------.// C M
15f70 61 63 72 6f 73 2e 0a 2f 2f 20 46 49 58 4d 45 3a acros..// FIXME:
15f80 0a 2f 2f 20 50 4f 49 4e 54 53 20 4d 41 4b 45 50 .// POINTS MAKEP
15f90 4f 49 4e 54 53 28 44 57 4f 52 44 20 64 77 56 61 OINTS(DWORD dwVa
15fa0 6c 75 65 29 20 23 64 65 66 69 6e 65 20 4d 41 4b lue) #define MAK
15fb0 45 50 4f 49 4e 54 53 28 6c 29 20 28 2a 28 28 50 EPOINTS(l) (*((P
15fc0 4f 49 4e 54 53 2a 29 26 28 6c 29 29 29 0a 44 57 OINTS*)&(l))).DW
15fd0 4f 52 44 20 4d 41 4b 45 52 4f 50 34 28 44 57 4f ORD MAKEROP4(DWO
15fe0 52 44 20 66 6f 72 65 2c 20 44 57 4f 52 44 20 62 RD fore, DWORD b
15ff0 61 63 6b 29 0a 7b 0a 20 20 20 20 72 65 74 75 72 ack).{. retur
16000 6e 20 28 28 62 61 63 6b 20 3c 3c 20 38 29 20 26 n ((back << 8) &
16010 20 30 78 46 46 30 30 30 30 30 30 29 20 7c 20 28 0xFF000000) | (
16020 66 6f 72 65 29 3b 0a 7d 0a 0a 0a 43 4f 4c 4f 52 fore);.}...COLOR
16030 52 45 46 20 43 4d 59 4b 28 42 59 54 45 20 63 2c REF CMYK(BYTE c,
16040 20 42 59 54 45 20 6d 2c 20 42 59 54 45 20 79 2c BYTE m, BYTE y,
16050 20 42 59 54 45 20 6b 29 0a 7b 0a 20 20 20 20 72 BYTE k).{. r
16060 65 74 75 72 6e 20 63 61 73 74 28 43 4f 4c 4f 52 eturn cast(COLOR
16070 52 45 46 29 20 28 6b 20 7c 20 28 79 20 3c 3c 20 REF) (k | (y <<
16080 38 29 20 7c 20 28 6d 20 3c 3c 20 31 36 29 20 7c 8) | (m << 16) |
16090 20 28 63 20 3c 3c 20 32 34 29 29 3b 0a 7d 0a 0a (c << 24));.}..
160a0 0a 42 59 54 45 20 47 65 74 43 56 61 6c 75 65 28 .BYTE GetCValue(
160b0 43 4f 4c 4f 52 52 45 46 20 63 6d 79 6b 29 0a 7b COLORREF cmyk).{
160c0 0a 20 20 20 20 72 65 74 75 72 6e 20 63 61 73 74 . return cast
160d0 28 42 59 54 45 29 20 28 63 6d 79 6b 20 3e 3e 20 (BYTE) (cmyk >>
160e0 32 34 29 3b 0a 7d 0a 0a 0a 42 59 54 45 20 47 65 24);.}...BYTE Ge
160f0 74 4d 56 61 6c 75 65 28 43 4f 4c 4f 52 52 45 46 tMValue(COLORREF
16100 20 63 6d 79 6b 29 0a 7b 0a 20 20 20 20 72 65 74 cmyk).{. ret
16110 75 72 6e 20 63 61 73 74 28 42 59 54 45 29 20 28 urn cast(BYTE) (
16120 63 6d 79 6b 20 3e 3e 20 31 36 29 3b 0a 7d 0a 0a cmyk >> 16);.}..
16130 0a 42 59 54 45 20 47 65 74 59 56 61 6c 75 65 28 .BYTE GetYValue(
16140 43 4f 4c 4f 52 52 45 46 20 63 6d 79 6b 29 0a 7b COLORREF cmyk).{
16150 0a 20 20 20 20 72 65 74 75 72 6e 20 63 61 73 74 . return cast
16160 28 42 59 54 45 29 20 28 63 6d 79 6b 20 3e 3e 20 (BYTE) (cmyk >>
16170 38 29 3b 0a 7d 0a 0a 0a 42 59 54 45 20 47 65 74 8);.}...BYTE Get
16180 4b 56 61 6c 75 65 28 43 4f 4c 4f 52 52 45 46 20 KValue(COLORREF
16190 63 6d 79 6b 29 0a 7b 0a 20 20 20 20 72 65 74 75 cmyk).{. retu
161a0 72 6e 20 63 61 73 74 28 42 59 54 45 29 20 63 6d rn cast(BYTE) cm
161b0 79 6b 3b 0a 7d 0a 0a 0a 43 4f 4c 4f 52 52 45 46 yk;.}...COLORREF
161c0 20 52 47 42 28 42 59 54 45 20 72 2c 20 42 59 54 RGB(BYTE r, BYT
161d0 45 20 67 2c 20 42 59 54 45 20 62 29 0a 7b 0a 20 E g, BYTE b).{.
161e0 20 20 20 72 65 74 75 72 6e 20 63 61 73 74 28 43 return cast(C
161f0 4f 4c 4f 52 52 45 46 29 20 28 72 20 7c 20 28 67 OLORREF) (r | (g
16200 20 3c 3c 20 38 29 20 7c 20 28 62 20 3c 3c 20 31 << 8) | (b << 1
16210 36 29 29 3b 0a 7d 0a 0a 0a 42 59 54 45 20 47 65 6));.}...BYTE Ge
16220 74 52 56 61 6c 75 65 28 43 4f 4c 4f 52 52 45 46 tRValue(COLORREF
16230 20 63 29 0a 7b 0a 20 20 20 20 72 65 74 75 72 6e c).{. return
16240 20 63 61 73 74 28 42 59 54 45 29 20 63 3b 0a 7d cast(BYTE) c;.}
16250 0a 0a 0a 42 59 54 45 20 47 65 74 47 56 61 6c 75 ...BYTE GetGValu
16260 65 28 43 4f 4c 4f 52 52 45 46 20 63 29 0a 7b 0a e(COLORREF c).{.
16270 20 20 20 20 72 65 74 75 72 6e 20 63 61 73 74 28 return cast(
16280 42 59 54 45 29 20 28 63 20 3e 3e 20 38 29 3b 0a BYTE) (c >> 8);.
16290 7d 0a 0a 0a 42 59 54 45 20 47 65 74 42 56 61 6c }...BYTE GetBVal
162a0 75 65 28 43 4f 4c 4f 52 52 45 46 20 63 29 0a 7b ue(COLORREF c).{
162b0 0a 20 20 20 20 72 65 74 75 72 6e 20 63 61 73 74 . return cast
162c0 28 42 59 54 45 29 20 28 63 20 3e 3e 20 31 36 29 (BYTE) (c >> 16)
162d0 3b 0a 7d 0a 0a 0a 43 4f 4c 4f 52 52 45 46 20 50 ;.}...COLORREF P
162e0 41 4c 45 54 54 45 49 4e 44 45 58 28 57 4f 52 44 ALETTEINDEX(WORD
162f0 20 69 29 0a 7b 0a 20 20 20 20 72 65 74 75 72 6e i).{. return
16300 20 30 78 30 31 30 30 30 30 30 30 20 7c 20 63 61 0x01000000 | ca
16310 73 74 28 43 4f 4c 4f 52 52 45 46 29 20 69 3b 0a st(COLORREF) i;.
16320 7d 0a 0a 0a 43 4f 4c 4f 52 52 45 46 20 50 41 4c }...COLORREF PAL
16330 45 54 54 45 52 47 42 28 42 59 54 45 20 72 2c 20 ETTERGB(BYTE r,
16340 42 59 54 45 20 67 2c 20 42 59 54 45 20 62 29 0a BYTE g, BYTE b).
16350 7b 0a 20 20 20 20 72 65 74 75 72 6e 20 30 78 30 {. return 0x0
16360 32 30 30 30 30 30 30 20 7c 20 52 47 42 28 72 2c 2000000 | RGB(r,
16370 20 67 2c 20 62 29 3b 0a 7d 0a 0a 0a 65 78 74 65 g, b);.}...exte
16380 72 6e 20 28 57 69 6e 64 6f 77 73 29 20 7b 0a 69 rn (Windows) {.i
16390 6e 74 20 41 62 6f 72 74 44 6f 63 28 48 44 43 29 nt AbortDoc(HDC)
163a0 3b 0a 0a 42 4f 4f 4c 20 41 62 6f 72 74 50 61 74 ;..BOOL AbortPat
163b0 68 28 48 44 43 29 3b 0a 0a 69 6e 74 20 41 64 64 h(HDC);..int Add
163c0 46 6f 6e 74 52 65 73 6f 75 72 63 65 41 28 4c 50 FontResourceA(LP
163d0 43 53 54 52 29 3b 0a 0a 69 6e 74 20 41 64 64 46 CSTR);..int AddF
163e0 6f 6e 74 52 65 73 6f 75 72 63 65 57 28 4c 50 43 ontResourceW(LPC
163f0 57 53 54 52 29 3b 0a 0a 42 4f 4f 4c 20 41 6e 67 WSTR);..BOOL Ang
16400 6c 65 41 72 63 28 48 44 43 2c 20 69 6e 74 2c 20 leArc(HDC, int,
16410 69 6e 74 2c 20 44 57 4f 52 44 2c 20 46 4c 4f 41 int, DWORD, FLOA
16420 54 2c 20 46 4c 4f 41 54 29 3b 0a 0a 42 4f 4f 4c T, FLOAT);..BOOL
16430 20 41 6e 69 6d 61 74 65 50 61 6c 65 74 74 65 28 AnimatePalette(
16440 48 50 41 4c 45 54 54 45 2c 20 55 49 4e 54 2c 20 HPALETTE, UINT,
16450 55 49 4e 54 2c 20 43 50 74 72 21 28 50 41 4c 45 UINT, CPtr!(PALE
16460 54 54 45 45 4e 54 52 59 29 29 3b 0a 0a 42 4f 4f TTEENTRY));..BOO
16470 4c 20 41 72 63 28 48 44 43 2c 20 69 6e 74 2c 20 L Arc(HDC, int,
16480 69 6e 74 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 69 int, int, int, i
16490 6e 74 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 69 6e nt, int, int, in
164a0 74 29 3b 0a 0a 42 4f 4f 4c 20 41 72 63 54 6f 28 t);..BOOL ArcTo(
164b0 48 44 43 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 69 HDC, int, int, i
164c0 6e 74 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 69 6e nt, int, int, in
164d0 74 2c 20 69 6e 74 2c 20 69 6e 74 29 3b 0a 0a 42 t, int, int);..B
164e0 4f 4f 4c 20 42 65 67 69 6e 50 61 74 68 28 48 44 OOL BeginPath(HD
164f0 43 29 3b 0a 0a 42 4f 4f 4c 20 42 69 74 42 6c 74 C);..BOOL BitBlt
16500 28 48 44 43 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 (HDC, int, int,
16510 69 6e 74 2c 20 69 6e 74 2c 20 48 44 43 2c 20 69 int, int, HDC, i
16520 6e 74 2c 20 69 6e 74 2c 20 44 57 4f 52 44 29 3b nt, int, DWORD);
16530 0a 0a 42 4f 4f 4c 20 43 61 6e 63 65 6c 44 43 28 ..BOOL CancelDC(
16540 48 44 43 29 3b 0a 0a 42 4f 4f 4c 20 43 68 65 63 HDC);..BOOL Chec
16550 6b 43 6f 6c 6f 72 73 49 6e 47 61 6d 75 74 28 48 kColorsInGamut(H
16560 44 43 2c 20 50 56 4f 49 44 2c 20 50 56 4f 49 44 DC, PVOID, PVOID
16570 2c 20 44 57 4f 52 44 29 3b 0a 0a 42 4f 4f 4c 20 , DWORD);..BOOL
16580 43 68 6f 72 64 28 48 44 43 2c 20 69 6e 74 2c 20 Chord(HDC, int,
16590 69 6e 74 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 69 int, int, int, i
165a0 6e 74 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 69 6e nt, int, int, in
165b0 74 29 3b 0a 0a 69 6e 74 20 43 68 6f 6f 73 65 50 t);..int ChooseP
165c0 69 78 65 6c 46 6f 72 6d 61 74 28 48 44 43 2c 20 ixelFormat(HDC,
165d0 43 50 74 72 21 28 50 49 58 45 4c 46 4f 52 4d 41 CPtr!(PIXELFORMA
165e0 54 44 45 53 43 52 49 50 54 4f 52 29 29 3b 0a 0a TDESCRIPTOR));..
165f0 48 45 4e 48 4d 45 54 41 46 49 4c 45 20 43 6c 6f HENHMETAFILE Clo
16600 73 65 45 6e 68 4d 65 74 61 46 69 6c 65 28 48 44 seEnhMetaFile(HD
16610 43 29 3b 0a 0a 42 4f 4f 4c 20 43 6c 6f 73 65 46 C);..BOOL CloseF
16620 69 67 75 72 65 28 48 44 43 29 3b 0a 0a 48 4d 45 igure(HDC);..HME
16630 54 41 46 49 4c 45 20 43 6c 6f 73 65 4d 65 74 61 TAFILE CloseMeta
16640 46 69 6c 65 28 48 44 43 29 3b 0a 0a 42 4f 4f 4c File(HDC);..BOOL
16650 20 43 6f 6c 6f 72 4d 61 74 63 68 54 6f 54 61 72 ColorMatchToTar
16660 67 65 74 28 48 44 43 2c 20 48 44 43 2c 20 44 57 get(HDC, HDC, DW
16670 4f 52 44 29 3b 0a 0a 42 4f 4f 4c 20 43 6f 6c 6f ORD);..BOOL Colo
16680 72 43 6f 72 72 65 63 74 50 61 6c 65 74 74 65 28 rCorrectPalette(
16690 48 44 43 2c 20 48 50 41 4c 45 54 54 45 2c 20 44 HDC, HPALETTE, D
166a0 57 4f 52 44 2c 20 44 57 4f 52 44 29 3b 0a 0a 69 WORD, DWORD);..i
166b0 6e 74 20 43 6f 6d 62 69 6e 65 52 67 6e 28 48 52 nt CombineRgn(HR
166c0 47 4e 2c 20 48 52 47 4e 2c 20 48 52 47 4e 2c 20 GN, HRGN, HRGN,
166d0 69 6e 74 29 3b 0a 0a 42 4f 4f 4c 20 43 6f 6d 62 int);..BOOL Comb
166e0 69 6e 65 54 72 61 6e 73 66 6f 72 6d 28 4c 50 58 ineTransform(LPX
166f0 46 4f 52 4d 2c 20 43 50 74 72 21 28 58 46 4f 52 FORM, CPtr!(XFOR
16700 4d 29 2c 20 43 50 74 72 21 28 58 46 4f 52 4d 29 M), CPtr!(XFORM)
16710 29 3b 0a 0a 48 45 4e 48 4d 45 54 41 46 49 4c 45 );..HENHMETAFILE
16720 20 43 6f 70 79 45 6e 68 4d 65 74 61 46 69 6c 65 CopyEnhMetaFile
16730 41 28 48 45 4e 48 4d 45 54 41 46 49 4c 45 2c 20 A(HENHMETAFILE,
16740 4c 50 43 53 54 52 29 3b 0a 0a 48 45 4e 48 4d 45 LPCSTR);..HENHME
16750 54 41 46 49 4c 45 20 43 6f 70 79 45 6e 68 4d 65 TAFILE CopyEnhMe
16760 74 61 46 69 6c 65 57 28 48 45 4e 48 4d 45 54 41 taFileW(HENHMETA
16770 46 49 4c 45 2c 20 4c 50 43 57 53 54 52 29 3b 0a FILE, LPCWSTR);.
16780 0a 48 4d 45 54 41 46 49 4c 45 20 43 6f 70 79 4d .HMETAFILE CopyM
16790 65 74 61 46 69 6c 65 41 28 48 4d 45 54 41 46 49 etaFileA(HMETAFI
167a0 4c 45 2c 20 4c 50 43 53 54 52 29 3b 0a 0a 48 4d LE, LPCSTR);..HM
167b0 45 54 41 46 49 4c 45 20 43 6f 70 79 4d 65 74 61 ETAFILE CopyMeta
167c0 46 69 6c 65 57 28 48 4d 45 54 41 46 49 4c 45 2c FileW(HMETAFILE,
167d0 20 4c 50 43 57 53 54 52 29 3b 0a 0a 48 42 49 54 LPCWSTR);..HBIT
167e0 4d 41 50 20 43 72 65 61 74 65 42 69 74 6d 61 70 MAP CreateBitmap
167f0 28 69 6e 74 2c 20 69 6e 74 2c 20 55 49 4e 54 2c (int, int, UINT,
16800 20 55 49 4e 54 2c 20 50 43 56 4f 49 44 29 3b 0a UINT, PCVOID);.
16810 0a 48 42 49 54 4d 41 50 20 43 72 65 61 74 65 42 .HBITMAP CreateB
16820 69 74 6d 61 70 49 6e 64 69 72 65 63 74 28 43 50 itmapIndirect(CP
16830 74 72 21 28 42 49 54 4d 41 50 29 29 3b 0a 0a 48 tr!(BITMAP));..H
16840 42 52 55 53 48 20 43 72 65 61 74 65 42 72 75 73 BRUSH CreateBrus
16850 68 49 6e 64 69 72 65 63 74 28 43 50 74 72 21 28 hIndirect(CPtr!(
16860 4c 4f 47 42 52 55 53 48 29 29 3b 0a 0a 48 43 4f LOGBRUSH));..HCO
16870 4c 4f 52 53 50 41 43 45 20 43 72 65 61 74 65 43 LORSPACE CreateC
16880 6f 6c 6f 72 53 70 61 63 65 41 28 4c 50 4c 4f 47 olorSpaceA(LPLOG
16890 43 4f 4c 4f 52 53 50 41 43 45 41 29 3b 0a 0a 48 COLORSPACEA);..H
168a0 43 4f 4c 4f 52 53 50 41 43 45 20 43 72 65 61 74 COLORSPACE Creat
168b0 65 43 6f 6c 6f 72 53 70 61 63 65 57 28 4c 50 4c eColorSpaceW(LPL
168c0 4f 47 43 4f 4c 4f 52 53 50 41 43 45 57 29 3b 0a OGCOLORSPACEW);.
168d0 0a 48 42 49 54 4d 41 50 20 43 72 65 61 74 65 43 .HBITMAP CreateC
168e0 6f 6d 70 61 74 69 62 6c 65 42 69 74 6d 61 70 28 ompatibleBitmap(
168f0 48 44 43 2c 20 69 6e 74 2c 20 69 6e 74 29 3b 0a HDC, int, int);.
16900 0a 48 44 43 20 43 72 65 61 74 65 43 6f 6d 70 61 .HDC CreateCompa
16910 74 69 62 6c 65 44 43 28 48 44 43 29 3b 0a 0a 48 tibleDC(HDC);..H
16920 44 43 20 43 72 65 61 74 65 44 43 41 28 4c 50 43 DC CreateDCA(LPC
16930 53 54 52 2c 20 4c 50 43 53 54 52 2c 20 4c 50 43 STR, LPCSTR, LPC
16940 53 54 52 2c 20 43 50 74 72 21 28 44 45 56 4d 4f STR, CPtr!(DEVMO
16950 44 45 41 29 29 3b 0a 0a 48 44 43 20 43 72 65 61 DEA));..HDC Crea
16960 74 65 44 43 57 28 4c 50 43 57 53 54 52 2c 20 4c teDCW(LPCWSTR, L
16970 50 43 57 53 54 52 2c 20 4c 50 43 57 53 54 52 2c PCWSTR, LPCWSTR,
16980 20 43 50 74 72 21 28 44 45 56 4d 4f 44 45 57 29 CPtr!(DEVMODEW)
16990 29 3b 0a 0a 48 42 49 54 4d 41 50 20 43 72 65 61 );..HBITMAP Crea
169a0 74 65 44 49 42 69 74 6d 61 70 28 48 44 43 2c 20 teDIBitmap(HDC,
169b0 43 50 74 72 21 28 42 49 54 4d 41 50 49 4e 46 4f CPtr!(BITMAPINFO
169c0 48 45 41 44 45 52 29 2c 20 44 57 4f 52 44 2c 20 HEADER), DWORD,
169d0 50 43 56 4f 49 44 2c 20 43 50 74 72 21 28 42 49 PCVOID, CPtr!(BI
169e0 54 4d 41 50 49 4e 46 4f 29 2c 20 55 49 4e 54 29 TMAPINFO), UINT)
169f0 3b 0a 0a 48 42 52 55 53 48 20 43 72 65 61 74 65 ;..HBRUSH Create
16a00 44 49 42 50 61 74 74 65 72 6e 42 72 75 73 68 28 DIBPatternBrush(
16a10 48 47 4c 4f 42 41 4c 2c 20 55 49 4e 54 29 3b 0a HGLOBAL, UINT);.
16a20 0a 48 42 52 55 53 48 20 43 72 65 61 74 65 44 49 .HBRUSH CreateDI
16a30 42 50 61 74 74 65 72 6e 42 72 75 73 68 50 74 28 BPatternBrushPt(
16a40 50 43 56 4f 49 44 2c 20 55 49 4e 54 29 3b 0a 0a PCVOID, UINT);..
16a50 48 42 49 54 4d 41 50 20 43 72 65 61 74 65 44 49 HBITMAP CreateDI
16a60 42 53 65 63 74 69 6f 6e 28 48 44 43 2c 20 43 50 BSection(HDC, CP
16a70 74 72 21 28 42 49 54 4d 41 50 49 4e 46 4f 29 2c tr!(BITMAPINFO),
16a80 20 55 49 4e 54 2c 20 76 6f 69 64 2a 2a 2c 20 48 UINT, void**, H
16a90 41 4e 44 4c 45 2c 20 44 57 4f 52 44 29 3b 0a 0a ANDLE, DWORD);..
16aa0 48 42 49 54 4d 41 50 20 43 72 65 61 74 65 44 69 HBITMAP CreateDi
16ab0 73 63 61 72 64 61 62 6c 65 42 69 74 6d 61 70 28 scardableBitmap(
16ac0 48 44 43 2c 20 69 6e 74 2c 20 69 6e 74 29 3b 0a HDC, int, int);.
16ad0 0a 48 52 47 4e 20 43 72 65 61 74 65 45 6c 6c 69 .HRGN CreateElli
16ae0 70 74 69 63 52 67 6e 28 69 6e 74 2c 20 69 6e 74 pticRgn(int, int
16af0 2c 20 69 6e 74 2c 20 69 6e 74 29 3b 0a 0a 48 52 , int, int);..HR
16b00 47 4e 20 43 72 65 61 74 65 45 6c 6c 69 70 74 69 GN CreateEllipti
16b10 63 52 67 6e 49 6e 64 69 72 65 63 74 28 4c 50 43 cRgnIndirect(LPC
16b20 52 45 43 54 29 3b 0a 0a 48 44 43 20 43 72 65 61 RECT);..HDC Crea
16b30 74 65 45 6e 68 4d 65 74 61 46 69 6c 65 41 28 48 teEnhMetaFileA(H
16b40 44 43 2c 20 4c 50 43 53 54 52 2c 20 4c 50 43 52 DC, LPCSTR, LPCR
16b50 45 43 54 2c 20 4c 50 43 53 54 52 29 3b 0a 0a 48 ECT, LPCSTR);..H
16b60 44 43 20 43 72 65 61 74 65 45 6e 68 4d 65 74 61 DC CreateEnhMeta
16b70 46 69 6c 65 57 28 48 44 43 2c 20 4c 50 43 57 53 FileW(HDC, LPCWS
16b80 54 52 2c 20 4c 50 43 52 45 43 54 2c 20 4c 50 43 TR, LPCRECT, LPC
16b90 57 53 54 52 29 3b 0a 0a 48 46 4f 4e 54 20 43 72 WSTR);..HFONT Cr
16ba0 65 61 74 65 46 6f 6e 74 41 28 69 6e 74 2c 20 69 eateFontA(int, i
16bb0 6e 74 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 69 6e nt, int, int, in
16bc0 74 2c 20 44 57 4f 52 44 2c 20 44 57 4f 52 44 2c t, DWORD, DWORD,
16bd0 20 44 57 4f 52 44 2c 20 44 57 4f 52 44 2c 20 44 DWORD, DWORD, D
16be0 57 4f 52 44 2c 20 44 57 4f 52 44 2c 20 44 57 4f WORD, DWORD, DWO
16bf0 52 44 2c 20 44 57 4f 52 44 2c 20 4c 50 43 53 54 RD, DWORD, LPCST
16c00 52 29 3b 0a 0a 48 46 4f 4e 54 20 43 72 65 61 74 R);..HFONT Creat
16c10 65 46 6f 6e 74 57 28 69 6e 74 2c 20 69 6e 74 2c eFontW(int, int,
16c20 20 69 6e 74 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 int, int, int,
16c30 44 57 4f 52 44 2c 20 44 57 4f 52 44 2c 20 44 57 DWORD, DWORD, DW
16c40 4f 52 44 2c 20 44 57 4f 52 44 2c 20 44 57 4f 52 ORD, DWORD, DWOR
16c50 44 2c 20 44 57 4f 52 44 2c 20 44 57 4f 52 44 2c D, DWORD, DWORD,
16c60 20 44 57 4f 52 44 2c 20 4c 50 43 57 53 54 52 29 DWORD, LPCWSTR)
16c70 3b 0a 0a 48 46 4f 4e 54 20 43 72 65 61 74 65 46 ;..HFONT CreateF
16c80 6f 6e 74 49 6e 64 69 72 65 63 74 41 28 43 50 74 ontIndirectA(CPt
16c90 72 21 28 4c 4f 47 46 4f 4e 54 41 29 29 3b 0a 0a r!(LOGFONTA));..
16ca0 48 46 4f 4e 54 20 43 72 65 61 74 65 46 6f 6e 74 HFONT CreateFont
16cb0 49 6e 64 69 72 65 63 74 57 28 43 50 74 72 21 28 IndirectW(CPtr!(
16cc0 4c 4f 47 46 4f 4e 54 57 29 29 3b 0a 0a 48 50 41 LOGFONTW));..HPA
16cd0 4c 45 54 54 45 20 43 72 65 61 74 65 48 61 6c 66 LETTE CreateHalf
16ce0 74 6f 6e 65 50 61 6c 65 74 74 65 28 48 44 43 29 tonePalette(HDC)
16cf0 3b 0a 0a 48 42 52 55 53 48 20 43 72 65 61 74 65 ;..HBRUSH Create
16d00 48 61 74 63 68 42 72 75 73 68 28 69 6e 74 2c 20 HatchBrush(int,
16d10 43 4f 4c 4f 52 52 45 46 29 3b 0a 0a 48 44 43 20 COLORREF);..HDC
16d20 43 72 65 61 74 65 49 43 41 28 4c 50 43 53 54 52 CreateICA(LPCSTR
16d30 2c 20 4c 50 43 53 54 52 2c 20 4c 50 43 53 54 52 , LPCSTR, LPCSTR
16d40 2c 20 43 50 74 72 21 28 44 45 56 4d 4f 44 45 41 , CPtr!(DEVMODEA
16d50 29 29 3b 0a 0a 48 44 43 20 43 72 65 61 74 65 49 ));..HDC CreateI
16d60 43 57 28 4c 50 43 57 53 54 52 2c 20 4c 50 43 57 CW(LPCWSTR, LPCW
16d70 53 54 52 2c 20 4c 50 43 57 53 54 52 2c 20 43 50 STR, LPCWSTR, CP
16d80 74 72 21 28 44 45 56 4d 4f 44 45 57 29 29 3b 0a tr!(DEVMODEW));.
16d90 0a 48 44 43 20 43 72 65 61 74 65 4d 65 74 61 46 .HDC CreateMetaF
16da0 69 6c 65 41 28 4c 50 43 53 54 52 29 3b 0a 0a 48 ileA(LPCSTR);..H
16db0 44 43 20 43 72 65 61 74 65 4d 65 74 61 46 69 6c DC CreateMetaFil
16dc0 65 57 28 4c 50 43 57 53 54 52 29 3b 0a 0a 48 50 eW(LPCWSTR);..HP
16dd0 41 4c 45 54 54 45 20 43 72 65 61 74 65 50 61 6c ALETTE CreatePal
16de0 65 74 74 65 28 43 50 74 72 21 28 4c 4f 47 50 41 ette(CPtr!(LOGPA
16df0 4c 45 54 54 45 29 29 3b 0a 0a 48 42 52 55 53 48 LETTE));..HBRUSH
16e00 20 43 72 65 61 74 65 50 61 74 74 65 72 6e 42 72 CreatePatternBr
16e10 75 73 68 28 48 42 49 54 4d 41 50 29 3b 0a 0a 48 ush(HBITMAP);..H
16e20 50 45 4e 20 43 72 65 61 74 65 50 65 6e 28 69 6e PEN CreatePen(in
16e30 74 2c 20 69 6e 74 2c 20 43 4f 4c 4f 52 52 45 46 t, int, COLORREF
16e40 29 3b 0a 0a 48 50 45 4e 20 43 72 65 61 74 65 50 );..HPEN CreateP
16e50 65 6e 49 6e 64 69 72 65 63 74 28 43 50 74 72 21 enIndirect(CPtr!
16e60 28 4c 4f 47 50 45 4e 29 29 3b 0a 0a 48 52 47 4e (LOGPEN));..HRGN
16e70 20 43 72 65 61 74 65 50 6f 6c 79 67 6f 6e 52 67 CreatePolygonRg
16e80 6e 28 43 50 74 72 21 28 50 4f 49 4e 54 29 2c 20 n(CPtr!(POINT),
16e90 69 6e 74 2c 20 69 6e 74 29 3b 0a 0a 48 52 47 4e int, int);..HRGN
16ea0 20 43 72 65 61 74 65 50 6f 6c 79 50 6f 6c 79 67 CreatePolyPolyg
16eb0 6f 6e 52 67 6e 28 43 50 74 72 21 28 50 4f 49 4e onRgn(CPtr!(POIN
16ec0 54 29 2c 20 43 50 74 72 21 28 49 4e 54 29 2c 20 T), CPtr!(INT),
16ed0 69 6e 74 2c 20 69 6e 74 29 3b 0a 0a 48 52 47 4e int, int);..HRGN
16ee0 20 43 72 65 61 74 65 52 65 63 74 52 67 6e 28 69 CreateRectRgn(i
16ef0 6e 74 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 69 6e nt, int, int, in
16f00 74 29 3b 0a 0a 48 52 47 4e 20 43 72 65 61 74 65 t);..HRGN Create
16f10 52 65 63 74 52 67 6e 49 6e 64 69 72 65 63 74 28 RectRgnIndirect(
16f20 4c 50 43 52 45 43 54 29 3b 0a 0a 48 52 47 4e 20 LPCRECT);..HRGN
16f30 43 72 65 61 74 65 52 6f 75 6e 64 52 65 63 74 52 CreateRoundRectR
16f40 67 6e 28 69 6e 74 2c 20 69 6e 74 2c 20 69 6e 74 gn(int, int, int
16f50 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 69 6e 74 29 , int, int, int)
16f60 3b 0a 0a 42 4f 4f 4c 20 43 72 65 61 74 65 53 63 ;..BOOL CreateSc
16f70 61 6c 61 62 6c 65 46 6f 6e 74 52 65 73 6f 75 72 alableFontResour
16f80 63 65 41 28 44 57 4f 52 44 2c 20 4c 50 43 53 54 ceA(DWORD, LPCST
16f90 52 2c 20 4c 50 43 53 54 52 2c 20 4c 50 43 53 54 R, LPCSTR, LPCST
16fa0 52 29 3b 0a 0a 42 4f 4f 4c 20 43 72 65 61 74 65 R);..BOOL Create
16fb0 53 63 61 6c 61 62 6c 65 46 6f 6e 74 52 65 73 6f ScalableFontReso
16fc0 75 72 63 65 57 28 44 57 4f 52 44 2c 20 4c 50 43 urceW(DWORD, LPC
16fd0 57 53 54 52 2c 20 4c 50 43 57 53 54 52 2c 20 4c WSTR, LPCWSTR, L
16fe0 50 43 57 53 54 52 29 3b 0a 0a 48 42 52 55 53 48 PCWSTR);..HBRUSH
16ff0 20 43 72 65 61 74 65 53 6f 6c 69 64 42 72 75 73 CreateSolidBrus
17000 68 28 43 4f 4c 4f 52 52 45 46 29 3b 0a 0a 42 4f h(COLORREF);..BO
17010 4f 4c 20 44 65 6c 65 74 65 43 6f 6c 6f 72 53 70 OL DeleteColorSp
17020 61 63 65 28 48 43 4f 4c 4f 52 53 50 41 43 45 29 ace(HCOLORSPACE)
17030 3b 0a 0a 42 4f 4f 4c 20 44 65 6c 65 74 65 44 43 ;..BOOL DeleteDC
17040 28 48 44 43 29 3b 0a 0a 42 4f 4f 4c 20 44 65 6c (HDC);..BOOL Del
17050 65 74 65 45 6e 68 4d 65 74 61 46 69 6c 65 28 48 eteEnhMetaFile(H
17060 45 4e 48 4d 45 54 41 46 49 4c 45 29 3b 0a 0a 42 ENHMETAFILE);..B
17070 4f 4f 4c 20 44 65 6c 65 74 65 4d 65 74 61 46 69 OOL DeleteMetaFi
17080 6c 65 28 48 4d 45 54 41 46 49 4c 45 29 3b 0a 0a le(HMETAFILE);..
17090 42 4f 4f 4c 20 44 65 6c 65 74 65 4f 62 6a 65 63 BOOL DeleteObjec
170a0 74 28 48 47 44 49 4f 42 4a 29 3b 0a 0a 69 6e 74 t(HGDIOBJ);..int
170b0 20 44 65 73 63 72 69 62 65 50 69 78 65 6c 46 6f DescribePixelFo
170c0 72 6d 61 74 28 48 44 43 2c 20 69 6e 74 2c 20 55 rmat(HDC, int, U
170d0 49 4e 54 2c 20 4c 50 50 49 58 45 4c 46 4f 52 4d INT, LPPIXELFORM
170e0 41 54 44 45 53 43 52 49 50 54 4f 52 29 3b 0a 0a ATDESCRIPTOR);..
170f0 44 57 4f 52 44 20 44 65 76 69 63 65 43 61 70 61 DWORD DeviceCapa
17100 62 69 6c 69 74 69 65 73 41 28 4c 50 43 53 54 52 bilitiesA(LPCSTR
17110 2c 20 4c 50 43 53 54 52 2c 20 57 4f 52 44 2c 20 , LPCSTR, WORD,
17120 4c 50 53 54 52 2c 20 43 50 74 72 21 28 44 45 56 LPSTR, CPtr!(DEV
17130 4d 4f 44 45 41 29 29 3b 0a 0a 44 57 4f 52 44 20 MODEA));..DWORD
17140 44 65 76 69 63 65 43 61 70 61 62 69 6c 69 74 69 DeviceCapabiliti
17150 65 73 57 28 4c 50 43 57 53 54 52 2c 20 4c 50 43 esW(LPCWSTR, LPC
17160 57 53 54 52 2c 20 57 4f 52 44 2c 20 4c 50 57 53 WSTR, WORD, LPWS
17170 54 52 2c 20 43 50 74 72 21 28 44 45 56 4d 4f 44 TR, CPtr!(DEVMOD
17180 45 57 29 29 3b 0a 0a 42 4f 4f 4c 20 44 50 74 6f EW));..BOOL DPto
17190 4c 50 28 48 44 43 2c 20 4c 50 50 4f 49 4e 54 2c LP(HDC, LPPOINT,
171a0 20 69 6e 74 29 3b 0a 0a 69 6e 74 20 44 72 61 77 int);..int Draw
171b0 45 73 63 61 70 65 28 48 44 43 2c 20 69 6e 74 2c Escape(HDC, int,
171c0 20 69 6e 74 2c 20 4c 50 43 53 54 52 29 3b 0a 0a int, LPCSTR);..
171d0 42 4f 4f 4c 20 45 6c 6c 69 70 73 65 28 48 44 43 BOOL Ellipse(HDC
171e0 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 69 6e 74 2c , int, int, int,
171f0 20 69 6e 74 29 3b 0a 0a 69 6e 74 20 45 6e 64 44 int);..int EndD
17200 6f 63 28 48 44 43 29 3b 0a 0a 69 6e 74 20 45 6e oc(HDC);..int En
17210 64 50 61 67 65 28 48 44 43 29 3b 0a 0a 42 4f 4f dPage(HDC);..BOO
17220 4c 20 45 6e 64 50 61 74 68 28 48 44 43 29 3b 0a L EndPath(HDC);.
17230 0a 42 4f 4f 4c 20 45 6e 75 6d 45 6e 68 4d 65 74 .BOOL EnumEnhMet
17240 61 46 69 6c 65 28 48 44 43 2c 20 48 45 4e 48 4d aFile(HDC, HENHM
17250 45 54 41 46 49 4c 45 2c 20 45 4e 48 4d 46 45 4e ETAFILE, ENHMFEN
17260 55 4d 50 52 4f 43 2c 20 50 56 4f 49 44 2c 20 4c UMPROC, PVOID, L
17270 50 43 52 45 43 54 29 3b 0a 0a 69 6e 74 20 45 6e PCRECT);..int En
17280 75 6d 46 6f 6e 74 46 61 6d 69 6c 69 65 73 41 28 umFontFamiliesA(
17290 48 44 43 2c 20 4c 50 43 53 54 52 2c 20 46 4f 4e HDC, LPCSTR, FON
172a0 54 45 4e 55 4d 50 52 4f 43 41 2c 20 4c 50 41 52 TENUMPROCA, LPAR
172b0 41 4d 29 3b 0a 0a 69 6e 74 20 45 6e 75 6d 46 6f AM);..int EnumFo
172c0 6e 74 46 61 6d 69 6c 69 65 73 57 28 48 44 43 2c ntFamiliesW(HDC,
172d0 20 4c 50 43 57 53 54 52 2c 20 46 4f 4e 54 45 4e LPCWSTR, FONTEN
172e0 55 4d 50 52 4f 43 57 2c 20 4c 50 41 52 41 4d 29 UMPROCW, LPARAM)
172f0 3b 0a 0a 69 6e 74 20 45 6e 75 6d 46 6f 6e 74 46 ;..int EnumFontF
17300 61 6d 69 6c 69 65 73 45 78 41 28 48 44 43 2c 20 amiliesExA(HDC,
17310 50 4c 4f 47 46 4f 4e 54 41 2c 20 46 4f 4e 54 45 PLOGFONTA, FONTE
17320 4e 55 4d 50 52 4f 43 41 2c 20 4c 50 41 52 41 4d NUMPROCA, LPARAM
17330 2c 20 44 57 4f 52 44 29 3b 0a 0a 69 6e 74 20 45 , DWORD);..int E
17340 6e 75 6d 46 6f 6e 74 46 61 6d 69 6c 69 65 73 45 numFontFamiliesE
17350 78 57 28 48 44 43 2c 20 50 4c 4f 47 46 4f 4e 54 xW(HDC, PLOGFONT
17360 57 2c 20 46 4f 4e 54 45 4e 55 4d 50 52 4f 43 57 W, FONTENUMPROCW
17370 2c 20 4c 50 41 52 41 4d 2c 20 44 57 4f 52 44 29 , LPARAM, DWORD)
17380 3b 0a 0a 69 6e 74 20 45 6e 75 6d 46 6f 6e 74 73 ;..int EnumFonts
17390 41 28 48 44 43 2c 20 4c 50 43 53 54 52 2c 20 46 A(HDC, LPCSTR, F
173a0 4f 4e 54 45 4e 55 4d 50 52 4f 43 41 2c 20 4c 50 ONTENUMPROCA, LP
173b0 41 52 41 4d 29 3b 0a 0a 69 6e 74 20 45 6e 75 6d ARAM);..int Enum
173c0 46 6f 6e 74 73 57 28 48 44 43 2c 20 4c 50 43 57 FontsW(HDC, LPCW
173d0 53 54 52 2c 20 46 4f 4e 54 45 4e 55 4d 50 52 4f STR, FONTENUMPRO
173e0 43 57 2c 20 4c 50 41 52 41 4d 29 3b 0a 0a 69 6e CW, LPARAM);..in
173f0 74 20 45 6e 75 6d 49 43 4d 50 72 6f 66 69 6c 65 t EnumICMProfile
17400 73 41 28 48 44 43 2c 20 49 43 4d 45 4e 55 4d 50 sA(HDC, ICMENUMP
17410 52 4f 43 41 2c 20 4c 50 41 52 41 4d 29 3b 0a 0a ROCA, LPARAM);..
17420 69 6e 74 20 45 6e 75 6d 49 43 4d 50 72 6f 66 69 int EnumICMProfi
17430 6c 65 73 57 28 48 44 43 2c 20 49 43 4d 45 4e 55 lesW(HDC, ICMENU
17440 4d 50 52 4f 43 57 2c 20 4c 50 41 52 41 4d 29 3b MPROCW, LPARAM);
17450 0a 0a 42 4f 4f 4c 20 45 6e 75 6d 4d 65 74 61 46 ..BOOL EnumMetaF
17460 69 6c 65 28 48 44 43 2c 20 48 4d 45 54 41 46 49 ile(HDC, HMETAFI
17470 4c 45 2c 20 4d 46 45 4e 55 4d 50 52 4f 43 2c 20 LE, MFENUMPROC,
17480 4c 50 41 52 41 4d 29 3b 0a 0a 69 6e 74 20 45 6e LPARAM);..int En
17490 75 6d 4f 62 6a 65 63 74 73 28 48 44 43 2c 20 69 umObjects(HDC, i
174a0 6e 74 2c 20 47 4f 42 4a 45 4e 55 4d 50 52 4f 43 nt, GOBJENUMPROC
174b0 2c 20 4c 50 41 52 41 4d 29 3b 0a 0a 42 4f 4f 4c , LPARAM);..BOOL
174c0 20 45 71 75 61 6c 52 67 6e 28 48 52 47 4e 2c 20 EqualRgn(HRGN,
174d0 48 52 47 4e 29 3b 0a 0a 69 6e 74 20 45 73 63 61 HRGN);..int Esca
174e0 70 65 28 48 44 43 2c 20 69 6e 74 2c 20 69 6e 74 pe(HDC, int, int
174f0 2c 20 4c 50 43 53 54 52 2c 20 50 56 4f 49 44 29 , LPCSTR, PVOID)
17500 3b 0a 0a 69 6e 74 20 45 78 63 6c 75 64 65 43 6c ;..int ExcludeCl
17510 69 70 52 65 63 74 28 48 44 43 2c 20 69 6e 74 2c ipRect(HDC, int,
17520 20 69 6e 74 2c 20 69 6e 74 2c 20 69 6e 74 29 3b int, int, int);
17530 0a 0a 69 6e 74 20 45 78 63 6c 75 64 65 55 70 64 ..int ExcludeUpd
17540 61 74 65 52 67 6e 28 48 44 43 2c 20 48 57 4e 44 ateRgn(HDC, HWND
17550 29 3b 0a 0a 48 50 45 4e 20 45 78 74 43 72 65 61 );..HPEN ExtCrea
17560 74 65 50 65 6e 28 44 57 4f 52 44 2c 20 44 57 4f tePen(DWORD, DWO
17570 52 44 2c 20 43 50 74 72 21 28 4c 4f 47 42 52 55 RD, CPtr!(LOGBRU
17580 53 48 29 2c 20 44 57 4f 52 44 2c 20 43 50 74 72 SH), DWORD, CPtr
17590 21 28 44 57 4f 52 44 29 29 3b 0a 0a 48 52 47 4e !(DWORD));..HRGN
175a0 20 45 78 74 43 72 65 61 74 65 52 65 67 69 6f 6e ExtCreateRegion
175b0 28 43 50 74 72 21 28 58 46 4f 52 4d 29 2c 20 44 (CPtr!(XFORM), D
175c0 57 4f 52 44 2c 20 43 50 74 72 21 28 52 47 4e 44 WORD, CPtr!(RGND
175d0 41 54 41 29 29 3b 0a 0a 69 6e 74 20 45 78 74 45 ATA));..int ExtE
175e0 73 63 61 70 65 28 48 44 43 2c 20 69 6e 74 2c 20 scape(HDC, int,
175f0 69 6e 74 2c 20 4c 50 43 53 54 52 2c 20 69 6e 74 int, LPCSTR, int
17600 2c 20 4c 50 53 54 52 29 3b 0a 0a 42 4f 4f 4c 20 , LPSTR);..BOOL
17610 45 78 74 46 6c 6f 6f 64 46 69 6c 6c 28 48 44 43 ExtFloodFill(HDC
17620 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 43 4f 4c 4f , int, int, COLO
17630 52 52 45 46 2c 20 55 49 4e 54 29 3b 0a 0a 69 6e RREF, UINT);..in
17640 74 20 45 78 74 53 65 6c 65 63 74 43 6c 69 70 52 t ExtSelectClipR
17650 67 6e 28 48 44 43 2c 20 48 52 47 4e 2c 20 69 6e gn(HDC, HRGN, in
17660 74 29 3b 0a 0a 42 4f 4f 4c 20 45 78 74 54 65 78 t);..BOOL ExtTex
17670 74 4f 75 74 41 28 48 44 43 2c 20 69 6e 74 2c 20 tOutA(HDC, int,
17680 69 6e 74 2c 20 55 49 4e 54 2c 20 4c 50 43 52 45 int, UINT, LPCRE
17690 43 54 2c 20 4c 50 43 53 54 52 2c 20 55 49 4e 54 CT, LPCSTR, UINT
176a0 2c 20 43 50 74 72 21 28 49 4e 54 29 29 3b 0a 0a , CPtr!(INT));..
176b0 42 4f 4f 4c 20 45 78 74 54 65 78 74 4f 75 74 57 BOOL ExtTextOutW
176c0 28 48 44 43 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 (HDC, int, int,
176d0 55 49 4e 54 2c 20 4c 50 43 52 45 43 54 2c 20 4c UINT, LPCRECT, L
176e0 50 43 57 53 54 52 2c 20 55 49 4e 54 2c 20 43 50 PCWSTR, UINT, CP
176f0 74 72 21 28 49 4e 54 29 29 3b 0a 0a 42 4f 4f 4c tr!(INT));..BOOL
17700 20 46 69 6c 6c 50 61 74 68 28 48 44 43 29 3b 0a FillPath(HDC);.
17710 0a 69 6e 74 20 46 69 6c 6c 52 65 63 74 28 48 44 .int FillRect(HD
17720 43 2c 20 4c 50 43 52 45 43 54 2c 20 48 42 52 55 C, LPCRECT, HBRU
17730 53 48 29 3b 0a 0a 69 6e 74 20 46 69 6c 6c 52 67 SH);..int FillRg
17740 6e 28 48 44 43 2c 20 48 52 47 4e 2c 20 48 42 52 n(HDC, HRGN, HBR
17750 55 53 48 29 3b 0a 0a 42 4f 4f 4c 20 46 69 78 42 USH);..BOOL FixB
17760 72 75 73 68 4f 72 67 45 78 28 48 44 43 2c 20 69 rushOrgEx(HDC, i
17770 6e 74 2c 20 69 6e 74 2c 20 4c 50 50 4f 49 4e 54 nt, int, LPPOINT
17780 29 3b 0a 0a 42 4f 4f 4c 20 46 6c 61 74 74 65 6e );..BOOL Flatten
17790 50 61 74 68 28 48 44 43 29 3b 0a 0a 42 4f 4f 4c Path(HDC);..BOOL
177a0 20 46 6c 6f 6f 64 46 69 6c 6c 28 48 44 43 2c 20 FloodFill(HDC,
177b0 69 6e 74 2c 20 69 6e 74 2c 20 43 4f 4c 4f 52 52 int, int, COLORR
177c0 45 46 29 3b 0a 0a 42 4f 4f 4c 20 46 72 61 6d 65 EF);..BOOL Frame
177d0 52 67 6e 28 48 44 43 2c 20 48 52 47 4e 2c 20 48 Rgn(HDC, HRGN, H
177e0 42 52 55 53 48 2c 20 69 6e 74 2c 20 69 6e 74 29 BRUSH, int, int)
177f0 3b 0a 0a 42 4f 4f 4c 20 47 64 69 43 6f 6d 6d 65 ;..BOOL GdiComme
17800 6e 74 28 48 44 43 2c 20 55 49 4e 54 2c 20 43 50 nt(HDC, UINT, CP
17810 74 72 21 28 42 59 54 45 29 29 3b 0a 0a 42 4f 4f tr!(BYTE));..BOO
17820 4c 20 47 64 69 46 6c 75 73 68 28 29 3b 0a 0a 44 L GdiFlush();..D
17830 57 4f 52 44 20 47 64 69 47 65 74 42 61 74 63 68 WORD GdiGetBatch
17840 4c 69 6d 69 74 28 29 3b 0a 0a 44 57 4f 52 44 20 Limit();..DWORD
17850 47 64 69 53 65 74 42 61 74 63 68 4c 69 6d 69 74 GdiSetBatchLimit
17860 28 44 57 4f 52 44 29 3b 0a 0a 69 6e 74 20 47 65 (DWORD);..int Ge
17870 74 41 72 63 44 69 72 65 63 74 69 6f 6e 28 48 44 tArcDirection(HD
17880 43 29 3b 0a 0a 42 4f 4f 4c 20 47 65 74 41 73 70 C);..BOOL GetAsp
17890 65 63 74 52 61 74 69 6f 46 69 6c 74 65 72 45 78 ectRatioFilterEx
178a0 28 48 44 43 2c 20 4c 50 53 49 5a 45 29 3b 0a 0a (HDC, LPSIZE);..
178b0 4c 4f 4e 47 20 47 65 74 42 69 74 6d 61 70 42 69 LONG GetBitmapBi
178c0 74 73 28 48 42 49 54 4d 41 50 2c 20 4c 4f 4e 47 ts(HBITMAP, LONG
178d0 2c 20 50 56 4f 49 44 29 3b 0a 0a 42 4f 4f 4c 20 , PVOID);..BOOL
178e0 47 65 74 42 69 74 6d 61 70 44 69 6d 65 6e 73 69 GetBitmapDimensi
178f0 6f 6e 45 78 28 48 42 49 54 4d 41 50 2c 20 4c 50 onEx(HBITMAP, LP
17900 53 49 5a 45 29 3b 0a 0a 43 4f 4c 4f 52 52 45 46 SIZE);..COLORREF
17910 20 47 65 74 42 6b 43 6f 6c 6f 72 28 48 44 43 29 GetBkColor(HDC)
17920 3b 0a 0a 69 6e 74 20 47 65 74 42 6b 4d 6f 64 65 ;..int GetBkMode
17930 28 48 44 43 29 3b 0a 0a 55 49 4e 54 20 47 65 74 (HDC);..UINT Get
17940 42 6f 75 6e 64 73 52 65 63 74 28 48 44 43 2c 20 BoundsRect(HDC,
17950 4c 50 52 45 43 54 2c 20 55 49 4e 54 29 3b 0a 0a LPRECT, UINT);..
17960 42 4f 4f 4c 20 47 65 74 42 72 75 73 68 4f 72 67 BOOL GetBrushOrg
17970 45 78 28 48 44 43 2c 20 4c 50 50 4f 49 4e 54 29 Ex(HDC, LPPOINT)
17980 3b 0a 0a 42 4f 4f 4c 20 47 65 74 43 68 61 72 41 ;..BOOL GetCharA
17990 42 43 57 69 64 74 68 73 41 28 48 44 43 2c 20 55 BCWidthsA(HDC, U
179a0 49 4e 54 2c 20 55 49 4e 54 2c 20 4c 50 41 42 43 INT, UINT, LPABC
179b0 29 3b 0a 0a 42 4f 4f 4c 20 47 65 74 43 68 61 72 );..BOOL GetChar
179c0 41 42 43 57 69 64 74 68 73 57 28 48 44 43 2c 20 ABCWidthsW(HDC,
179d0 55 49 4e 54 2c 20 55 49 4e 54 2c 20 4c 50 41 42 UINT, UINT, LPAB
179e0 43 29 3b 0a 0a 42 4f 4f 4c 20 47 65 74 43 68 61 C);..BOOL GetCha
179f0 72 41 42 43 57 69 64 74 68 73 46 6c 6f 61 74 41 rABCWidthsFloatA
17a00 28 48 44 43 2c 20 55 49 4e 54 2c 20 55 49 4e 54 (HDC, UINT, UINT
17a10 2c 20 4c 50 41 42 43 46 4c 4f 41 54 29 3b 0a 0a , LPABCFLOAT);..
17a20 42 4f 4f 4c 20 47 65 74 43 68 61 72 41 42 43 57 BOOL GetCharABCW
17a30 69 64 74 68 73 46 6c 6f 61 74 57 28 48 44 43 2c idthsFloatW(HDC,
17a40 20 55 49 4e 54 2c 20 55 49 4e 54 2c 20 4c 50 41 UINT, UINT, LPA
17a50 42 43 46 4c 4f 41 54 29 3b 0a 0a 44 57 4f 52 44 BCFLOAT);..DWORD
17a60 20 47 65 74 43 68 61 72 61 63 74 65 72 50 6c 61 GetCharacterPla
17a70 63 65 6d 65 6e 74 41 28 48 44 43 2c 20 4c 50 43 cementA(HDC, LPC
17a80 53 54 52 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 4c STR, int, int, L
17a90 50 47 43 50 5f 52 45 53 55 4c 54 53 41 2c 20 44 PGCP_RESULTSA, D
17aa0 57 4f 52 44 29 3b 0a 0a 44 57 4f 52 44 20 47 65 WORD);..DWORD Ge
17ab0 74 43 68 61 72 61 63 74 65 72 50 6c 61 63 65 6d tCharacterPlacem
17ac0 65 6e 74 57 28 48 44 43 2c 20 4c 50 43 57 53 54 entW(HDC, LPCWST
17ad0 52 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 4c 50 47 R, int, int, LPG
17ae0 43 50 5f 52 45 53 55 4c 54 53 57 2c 20 44 57 4f CP_RESULTSW, DWO
17af0 52 44 29 3b 0a 0a 42 4f 4f 4c 20 47 65 74 43 68 RD);..BOOL GetCh
17b00 61 72 57 69 64 74 68 33 32 41 28 48 44 43 2c 20 arWidth32A(HDC,
17b10 55 49 4e 54 2c 20 55 49 4e 54 2c 20 4c 50 49 4e UINT, UINT, LPIN
17b20 54 29 3b 0a 0a 42 4f 4f 4c 20 47 65 74 43 68 61 T);..BOOL GetCha
17b30 72 57 69 64 74 68 33 32 57 28 48 44 43 2c 20 55 rWidth32W(HDC, U
17b40 49 4e 54 2c 20 55 49 4e 54 2c 20 4c 50 49 4e 54 INT, UINT, LPINT
17b50 29 3b 0a 0a 42 4f 4f 4c 20 47 65 74 43 68 61 72 );..BOOL GetChar
17b60 57 69 64 74 68 41 28 48 44 43 2c 20 55 49 4e 54 WidthA(HDC, UINT
17b70 2c 20 55 49 4e 54 2c 20 4c 50 49 4e 54 29 3b 0a , UINT, LPINT);.
17b80 0a 42 4f 4f 4c 20 47 65 74 43 68 61 72 57 69 64 .BOOL GetCharWid
17b90 74 68 57 28 48 44 43 2c 20 55 49 4e 54 2c 20 55 thW(HDC, UINT, U
17ba0 49 4e 54 2c 20 4c 50 49 4e 54 29 3b 0a 0a 42 4f INT, LPINT);..BO
17bb0 4f 4c 20 47 65 74 43 68 61 72 57 69 64 74 68 46 OL GetCharWidthF
17bc0 6c 6f 61 74 41 28 48 44 43 2c 20 55 49 4e 54 2c loatA(HDC, UINT,
17bd0 20 55 49 4e 54 2c 20 50 46 4c 4f 41 54 29 3b 0a UINT, PFLOAT);.
17be0 0a 42 4f 4f 4c 20 47 65 74 43 68 61 72 57 69 64 .BOOL GetCharWid
17bf0 74 68 46 6c 6f 61 74 57 28 48 44 43 2c 20 55 49 thFloatW(HDC, UI
17c00 4e 54 2c 20 55 49 4e 54 2c 20 50 46 4c 4f 41 54 NT, UINT, PFLOAT
17c10 29 3b 0a 0a 69 6e 74 20 47 65 74 43 6c 69 70 42 );..int GetClipB
17c20 6f 78 28 48 44 43 2c 20 4c 50 52 45 43 54 29 3b ox(HDC, LPRECT);
17c30 0a 0a 69 6e 74 20 47 65 74 43 6c 69 70 52 67 6e ..int GetClipRgn
17c40 28 48 44 43 2c 20 48 52 47 4e 29 3b 0a 0a 42 4f (HDC, HRGN);..BO
17c50 4f 4c 20 47 65 74 43 6f 6c 6f 72 41 64 6a 75 73 OL GetColorAdjus
17c60 74 6d 65 6e 74 28 48 44 43 2c 20 4c 50 43 4f 4c tment(HDC, LPCOL
17c70 4f 52 41 44 4a 55 53 54 4d 45 4e 54 29 3b 0a 0a ORADJUSTMENT);..
17c80 48 41 4e 44 4c 45 20 47 65 74 43 6f 6c 6f 72 53 HANDLE GetColorS
17c90 70 61 63 65 28 48 44 43 29 3b 0a 0a 48 47 44 49 pace(HDC);..HGDI
17ca0 4f 42 4a 20 47 65 74 43 75 72 72 65 6e 74 4f 62 OBJ GetCurrentOb
17cb0 6a 65 63 74 28 48 44 43 2c 20 55 49 4e 54 29 3b ject(HDC, UINT);
17cc0 0a 0a 42 4f 4f 4c 20 47 65 74 43 75 72 72 65 6e ..BOOL GetCurren
17cd0 74 50 6f 73 69 74 69 6f 6e 45 78 28 48 44 43 2c tPositionEx(HDC,
17ce0 20 4c 50 50 4f 49 4e 54 29 3b 0a 0a 48 43 55 52 LPPOINT);..HCUR
17cf0 53 4f 52 20 47 65 74 43 75 72 73 6f 72 28 29 3b SOR GetCursor();
17d00 0a 0a 42 4f 4f 4c 20 47 65 74 44 43 4f 72 67 45 ..BOOL GetDCOrgE
17d10 78 28 48 44 43 2c 20 4c 50 50 4f 49 4e 54 29 3b x(HDC, LPPOINT);
17d20 0a 0a 69 6e 74 20 47 65 74 44 65 76 69 63 65 43 ..int GetDeviceC
17d30 61 70 73 28 48 44 43 2c 20 69 6e 74 29 3b 0a 0a aps(HDC, int);..
17d40 42 4f 4f 4c 20 47 65 74 44 65 76 69 63 65 47 61 BOOL GetDeviceGa
17d50 6d 6d 61 52 61 6d 70 28 48 44 43 2c 20 50 56 4f mmaRamp(HDC, PVO
17d60 49 44 29 3b 0a 0a 55 49 4e 54 20 47 65 74 44 49 ID);..UINT GetDI
17d70 42 43 6f 6c 6f 72 54 61 62 6c 65 28 48 44 43 2c BColorTable(HDC,
17d80 20 55 49 4e 54 2c 20 55 49 4e 54 2c 20 52 47 42 UINT, UINT, RGB
17d90 51 55 41 44 2a 29 3b 0a 0a 69 6e 74 20 47 65 74 QUAD*);..int Get
17da0 44 49 42 69 74 73 28 48 44 43 2c 20 48 42 49 54 DIBits(HDC, HBIT
17db0 4d 41 50 2c 20 55 49 4e 54 2c 20 55 49 4e 54 2c MAP, UINT, UINT,
17dc0 20 50 56 4f 49 44 2c 20 4c 50 42 49 54 4d 41 50 PVOID, LPBITMAP
17dd0 49 4e 46 4f 2c 20 55 49 4e 54 29 3b 0a 0a 48 45 INFO, UINT);..HE
17de0 4e 48 4d 45 54 41 46 49 4c 45 20 47 65 74 45 6e NHMETAFILE GetEn
17df0 68 4d 65 74 61 46 69 6c 65 41 28 4c 50 43 53 54 hMetaFileA(LPCST
17e00 52 29 3b 0a 0a 48 45 4e 48 4d 45 54 41 46 49 4c R);..HENHMETAFIL
17e10 45 20 47 65 74 45 6e 68 4d 65 74 61 46 69 6c 65 E GetEnhMetaFile
17e20 57 28 4c 50 43 57 53 54 52 29 3b 0a 0a 55 49 4e W(LPCWSTR);..UIN
17e30 54 20 47 65 74 45 6e 68 4d 65 74 61 46 69 6c 65 T GetEnhMetaFile
17e40 42 69 74 73 28 48 45 4e 48 4d 45 54 41 46 49 4c Bits(HENHMETAFIL
17e50 45 2c 20 55 49 4e 54 2c 20 4c 50 42 59 54 45 29 E, UINT, LPBYTE)
17e60 3b 0a 0a 55 49 4e 54 20 47 65 74 45 6e 68 4d 65 ;..UINT GetEnhMe
17e70 74 61 46 69 6c 65 44 65 73 63 72 69 70 74 69 6f taFileDescriptio
17e80 6e 41 28 48 45 4e 48 4d 45 54 41 46 49 4c 45 2c nA(HENHMETAFILE,
17e90 20 55 49 4e 54 2c 20 4c 50 53 54 52 29 3b 0a 0a UINT, LPSTR);..
17ea0 55 49 4e 54 20 47 65 74 45 6e 68 4d 65 74 61 46 UINT GetEnhMetaF
17eb0 69 6c 65 44 65 73 63 72 69 70 74 69 6f 6e 57 28 ileDescriptionW(
17ec0 48 45 4e 48 4d 45 54 41 46 49 4c 45 2c 20 55 49 HENHMETAFILE, UI
17ed0 4e 54 2c 20 4c 50 57 53 54 52 29 3b 0a 0a 55 49 NT, LPWSTR);..UI
17ee0 4e 54 20 47 65 74 45 6e 68 4d 65 74 61 46 69 6c NT GetEnhMetaFil
17ef0 65 48 65 61 64 65 72 28 48 45 4e 48 4d 45 54 41 eHeader(HENHMETA
17f00 46 49 4c 45 2c 20 55 49 4e 54 2c 20 4c 50 45 4e FILE, UINT, LPEN
17f10 48 4d 45 54 41 48 45 41 44 45 52 29 3b 0a 0a 55 HMETAHEADER);..U
17f20 49 4e 54 20 47 65 74 45 6e 68 4d 65 74 61 46 69 INT GetEnhMetaFi
17f30 6c 65 50 61 6c 65 74 74 65 45 6e 74 72 69 65 73 lePaletteEntries
17f40 28 48 45 4e 48 4d 45 54 41 46 49 4c 45 2c 20 55 (HENHMETAFILE, U
17f50 49 4e 54 2c 20 4c 50 50 41 4c 45 54 54 45 45 4e INT, LPPALETTEEN
17f60 54 52 59 29 3b 0a 0a 55 49 4e 54 20 47 65 74 45 TRY);..UINT GetE
17f70 6e 68 4d 65 74 61 46 69 6c 65 50 69 78 65 6c 46 nhMetaFilePixelF
17f80 6f 72 6d 61 74 28 48 45 4e 48 4d 45 54 41 46 49 ormat(HENHMETAFI
17f90 4c 45 2c 20 44 57 4f 52 44 2c 20 43 50 74 72 21 LE, DWORD, CPtr!
17fa0 28 50 49 58 45 4c 46 4f 52 4d 41 54 44 45 53 43 (PIXELFORMATDESC
17fb0 52 49 50 54 4f 52 29 29 3b 0a 0a 44 57 4f 52 44 RIPTOR));..DWORD
17fc0 20 47 65 74 46 6f 6e 74 44 61 74 61 28 48 44 43 GetFontData(HDC
17fd0 2c 20 44 57 4f 52 44 2c 20 44 57 4f 52 44 2c 20 , DWORD, DWORD,
17fe0 50 56 4f 49 44 2c 20 44 57 4f 52 44 29 3b 0a 0a PVOID, DWORD);..
17ff0 44 57 4f 52 44 20 47 65 74 46 6f 6e 74 4c 61 6e DWORD GetFontLan
18000 67 75 61 67 65 49 6e 66 6f 28 48 44 43 29 3b 0a guageInfo(HDC);.
18010 0a 44 57 4f 52 44 20 47 65 74 47 6c 79 70 68 4f .DWORD GetGlyphO
18020 75 74 6c 69 6e 65 41 28 48 44 43 2c 20 55 49 4e utlineA(HDC, UIN
18030 54 2c 20 55 49 4e 54 2c 20 4c 50 47 4c 59 50 48 T, UINT, LPGLYPH
18040 4d 45 54 52 49 43 53 2c 20 44 57 4f 52 44 2c 20 METRICS, DWORD,
18050 50 56 4f 49 44 2c 20 43 50 74 72 21 28 4d 41 54 PVOID, CPtr!(MAT
18060 32 29 29 3b 0a 0a 44 57 4f 52 44 20 47 65 74 47 2));..DWORD GetG
18070 6c 79 70 68 4f 75 74 6c 69 6e 65 57 28 48 44 43 lyphOutlineW(HDC
18080 2c 20 55 49 4e 54 2c 20 55 49 4e 54 2c 20 4c 50 , UINT, UINT, LP
18090 47 4c 59 50 48 4d 45 54 52 49 43 53 2c 20 44 57 GLYPHMETRICS, DW
180a0 4f 52 44 2c 20 50 56 4f 49 44 2c 20 43 50 74 72 ORD, PVOID, CPtr
180b0 21 28 4d 41 54 32 29 29 3b 0a 0a 69 6e 74 20 47 !(MAT2));..int G
180c0 65 74 47 72 61 70 68 69 63 73 4d 6f 64 65 28 48 etGraphicsMode(H
180d0 44 43 29 3b 0a 0a 42 4f 4f 4c 20 47 65 74 49 43 DC);..BOOL GetIC
180e0 4d 50 72 6f 66 69 6c 65 41 28 48 44 43 2c 20 44 MProfileA(HDC, D
180f0 57 4f 52 44 2c 20 4c 50 53 54 52 29 3b 0a 0a 42 WORD, LPSTR);..B
18100 4f 4f 4c 20 47 65 74 49 43 4d 50 72 6f 66 69 6c OOL GetICMProfil
18110 65 57 28 48 44 43 2c 20 44 57 4f 52 44 2c 20 4c eW(HDC, DWORD, L
18120 50 57 53 54 52 29 3b 0a 0a 44 57 4f 52 44 20 47 PWSTR);..DWORD G
18130 65 74 4b 65 72 6e 69 6e 67 50 61 69 72 73 41 28 etKerningPairsA(
18140 48 44 43 2c 20 44 57 4f 52 44 2c 20 4c 50 4b 45 HDC, DWORD, LPKE
18150 52 4e 49 4e 47 50 41 49 52 29 3b 0a 0a 44 57 4f RNINGPAIR);..DWO
18160 52 44 20 47 65 74 4b 65 72 6e 69 6e 67 50 61 69 RD GetKerningPai
18170 72 73 57 28 48 44 43 2c 20 44 57 4f 52 44 2c 20 rsW(HDC, DWORD,
18180 4c 50 4b 45 52 4e 49 4e 47 50 41 49 52 29 3b 0a LPKERNINGPAIR);.
18190 0a 42 4f 4f 4c 20 47 65 74 4c 6f 67 43 6f 6c 6f .BOOL GetLogColo
181a0 72 53 70 61 63 65 41 28 48 43 4f 4c 4f 52 53 50 rSpaceA(HCOLORSP
181b0 41 43 45 2c 20 4c 50 4c 4f 47 43 4f 4c 4f 52 53 ACE, LPLOGCOLORS
181c0 50 41 43 45 41 2c 20 44 57 4f 52 44 29 3b 0a 0a PACEA, DWORD);..
181d0 42 4f 4f 4c 20 47 65 74 4c 6f 67 43 6f 6c 6f 72 BOOL GetLogColor
181e0 53 70 61 63 65 57 28 48 43 4f 4c 4f 52 53 50 41 SpaceW(HCOLORSPA
181f0 43 45 2c 20 4c 50 4c 4f 47 43 4f 4c 4f 52 53 50 CE, LPLOGCOLORSP
18200 41 43 45 57 2c 20 44 57 4f 52 44 29 3b 0a 0a 69 ACEW, DWORD);..i
18210 6e 74 20 47 65 74 4d 61 70 4d 6f 64 65 28 48 44 nt GetMapMode(HD
18220 43 29 3b 0a 0a 48 4d 45 54 41 46 49 4c 45 20 47 C);..HMETAFILE G
18230 65 74 4d 65 74 61 46 69 6c 65 41 28 4c 50 43 53 etMetaFileA(LPCS
18240 54 52 29 3b 0a 0a 48 4d 45 54 41 46 49 4c 45 20 TR);..HMETAFILE
18250 47 65 74 4d 65 74 61 46 69 6c 65 57 28 4c 50 43 GetMetaFileW(LPC
18260 57 53 54 52 29 3b 0a 0a 55 49 4e 54 20 47 65 74 WSTR);..UINT Get
18270 4d 65 74 61 46 69 6c 65 42 69 74 73 45 78 28 48 MetaFileBitsEx(H
18280 4d 45 54 41 46 49 4c 45 2c 20 55 49 4e 54 2c 20 METAFILE, UINT,
18290 50 56 4f 49 44 29 3b 0a 0a 69 6e 74 20 47 65 74 PVOID);..int Get
182a0 4d 65 74 61 52 67 6e 28 48 44 43 2c 20 48 52 47 MetaRgn(HDC, HRG
182b0 4e 29 3b 0a 0a 42 4f 4f 4c 20 47 65 74 4d 69 74 N);..BOOL GetMit
182c0 65 72 4c 69 6d 69 74 28 48 44 43 2c 20 50 46 4c erLimit(HDC, PFL
182d0 4f 41 54 29 3b 0a 0a 43 4f 4c 4f 52 52 45 46 20 OAT);..COLORREF
182e0 47 65 74 4e 65 61 72 65 73 74 43 6f 6c 6f 72 28 GetNearestColor(
182f0 48 44 43 2c 20 43 4f 4c 4f 52 52 45 46 29 3b 0a HDC, COLORREF);.
18300 0a 55 49 4e 54 20 47 65 74 4e 65 61 72 65 73 74 .UINT GetNearest
18310 50 61 6c 65 74 74 65 49 6e 64 65 78 28 48 50 41 PaletteIndex(HPA
18320 4c 45 54 54 45 2c 20 43 4f 4c 4f 52 52 45 46 29 LETTE, COLORREF)
18330 3b 0a 0a 69 6e 74 20 47 65 74 4f 62 6a 65 63 74 ;..int GetObject
18340 41 28 48 47 44 49 4f 42 4a 2c 20 69 6e 74 2c 20 A(HGDIOBJ, int,
18350 50 56 4f 49 44 29 3b 0a 0a 69 6e 74 20 47 65 74 PVOID);..int Get
18360 4f 62 6a 65 63 74 57 28 48 47 44 49 4f 42 4a 2c ObjectW(HGDIOBJ,
18370 20 69 6e 74 2c 20 50 56 4f 49 44 29 3b 0a 0a 44 int, PVOID);..D
18380 57 4f 52 44 20 47 65 74 4f 62 6a 65 63 74 54 79 WORD GetObjectTy
18390 70 65 28 48 47 44 49 4f 42 4a 29 3b 0a 0a 55 49 pe(HGDIOBJ);..UI
183a0 4e 54 20 47 65 74 4f 75 74 6c 69 6e 65 54 65 78 NT GetOutlineTex
183b0 74 4d 65 74 72 69 63 73 41 28 48 44 43 2c 20 55 tMetricsA(HDC, U
183c0 49 4e 54 2c 20 4c 50 4f 55 54 4c 49 4e 45 54 45 INT, LPOUTLINETE
183d0 58 54 4d 45 54 52 49 43 41 29 3b 0a 0a 55 49 4e XTMETRICA);..UIN
183e0 54 20 47 65 74 4f 75 74 6c 69 6e 65 54 65 78 74 T GetOutlineText
183f0 4d 65 74 72 69 63 73 57 28 48 44 43 2c 20 55 49 MetricsW(HDC, UI
18400 4e 54 2c 20 4c 50 4f 55 54 4c 49 4e 45 54 45 58 NT, LPOUTLINETEX
18410 54 4d 45 54 52 49 43 57 29 3b 0a 0a 55 49 4e 54 TMETRICW);..UINT
18420 20 47 65 74 50 61 6c 65 74 74 65 45 6e 74 72 69 GetPaletteEntri
18430 65 73 28 48 50 41 4c 45 54 54 45 2c 20 55 49 4e es(HPALETTE, UIN
18440 54 2c 20 55 49 4e 54 2c 20 4c 50 50 41 4c 45 54 T, UINT, LPPALET
18450 54 45 45 4e 54 52 59 29 3b 0a 0a 69 6e 74 20 47 TEENTRY);..int G
18460 65 74 50 61 74 68 28 48 44 43 2c 20 4c 50 50 4f etPath(HDC, LPPO
18470 49 4e 54 2c 20 50 42 59 54 45 2c 20 69 6e 74 29 INT, PBYTE, int)
18480 3b 0a 0a 43 4f 4c 4f 52 52 45 46 20 47 65 74 50 ;..COLORREF GetP
18490 69 78 65 6c 28 48 44 43 2c 20 69 6e 74 2c 20 69 ixel(HDC, int, i
184a0 6e 74 29 3b 0a 0a 69 6e 74 20 47 65 74 50 69 78 nt);..int GetPix
184b0 65 6c 46 6f 72 6d 61 74 28 48 44 43 29 3b 0a 0a elFormat(HDC);..
184c0 69 6e 74 20 47 65 74 50 6f 6c 79 46 69 6c 6c 4d int GetPolyFillM
184d0 6f 64 65 28 48 44 43 29 3b 0a 0a 42 4f 4f 4c 20 ode(HDC);..BOOL
184e0 47 65 74 52 61 73 74 65 72 69 7a 65 72 43 61 70 GetRasterizerCap
184f0 73 28 4c 50 52 41 53 54 45 52 49 5a 45 52 5f 53 s(LPRASTERIZER_S
18500 54 41 54 55 53 2c 20 55 49 4e 54 29 3b 0a 0a 69 TATUS, UINT);..i
18510 6e 74 20 47 65 74 52 61 6e 64 6f 6d 52 67 6e 28 nt GetRandomRgn(
18520 48 44 43 2c 20 48 52 47 4e 2c 20 49 4e 54 29 3b HDC, HRGN, INT);
18530 0a 0a 44 57 4f 52 44 20 47 65 74 52 65 67 69 6f ..DWORD GetRegio
18540 6e 44 61 74 61 28 48 52 47 4e 2c 20 44 57 4f 52 nData(HRGN, DWOR
18550 44 2c 20 4c 50 52 47 4e 44 41 54 41 29 3b 0a 0a D, LPRGNDATA);..
18560 69 6e 74 20 47 65 74 52 67 6e 42 6f 78 28 48 52 int GetRgnBox(HR
18570 47 4e 2c 20 4c 50 52 45 43 54 29 3b 0a 0a 69 6e GN, LPRECT);..in
18580 74 20 47 65 74 52 4f 50 32 28 48 44 43 29 3b 0a t GetROP2(HDC);.
18590 0a 48 47 44 49 4f 42 4a 20 47 65 74 53 74 6f 63 .HGDIOBJ GetStoc
185a0 6b 4f 62 6a 65 63 74 28 69 6e 74 29 3b 0a 0a 69 kObject(int);..i
185b0 6e 74 20 47 65 74 53 74 72 65 74 63 68 42 6c 74 nt GetStretchBlt
185c0 4d 6f 64 65 28 48 44 43 29 3b 0a 0a 55 49 4e 54 Mode(HDC);..UINT
185d0 20 47 65 74 53 79 73 74 65 6d 50 61 6c 65 74 74 GetSystemPalett
185e0 65 45 6e 74 72 69 65 73 28 48 44 43 2c 20 55 49 eEntries(HDC, UI
185f0 4e 54 2c 20 55 49 4e 54 2c 20 4c 50 50 41 4c 45 NT, UINT, LPPALE
18600 54 54 45 45 4e 54 52 59 29 3b 0a 0a 55 49 4e 54 TTEENTRY);..UINT
18610 20 47 65 74 53 79 73 74 65 6d 50 61 6c 65 74 74 GetSystemPalett
18620 65 55 73 65 28 48 44 43 29 3b 0a 0a 55 49 4e 54 eUse(HDC);..UINT
18630 20 47 65 74 54 65 78 74 41 6c 69 67 6e 28 48 44 GetTextAlign(HD
18640 43 29 3b 0a 0a 69 6e 74 20 47 65 74 54 65 78 74 C);..int GetText
18650 43 68 61 72 61 63 74 65 72 45 78 74 72 61 28 48 CharacterExtra(H
18660 44 43 29 3b 0a 0a 69 6e 74 20 47 65 74 54 65 78 DC);..int GetTex
18670 74 43 68 61 72 73 65 74 28 48 44 43 29 3b 0a 0a tCharset(HDC);..
18680 69 6e 74 20 47 65 74 54 65 78 74 43 68 61 72 73 int GetTextChars
18690 65 74 49 6e 66 6f 28 48 44 43 2c 20 4c 50 46 4f etInfo(HDC, LPFO
186a0 4e 54 53 49 47 4e 41 54 55 52 45 2c 20 44 57 4f NTSIGNATURE, DWO
186b0 52 44 29 3b 0a 0a 43 4f 4c 4f 52 52 45 46 20 47 RD);..COLORREF G
186c0 65 74 54 65 78 74 43 6f 6c 6f 72 28 48 44 43 29 etTextColor(HDC)
186d0 3b 0a 0a 42 4f 4f 4c 20 47 65 74 54 65 78 74 45 ;..BOOL GetTextE
186e0 78 74 65 6e 74 45 78 50 6f 69 6e 74 41 28 48 44 xtentExPointA(HD
186f0 43 2c 20 4c 50 43 53 54 52 2c 20 69 6e 74 2c 20 C, LPCSTR, int,
18700 69 6e 74 2c 20 4c 50 49 4e 54 2c 20 4c 50 49 4e int, LPINT, LPIN
18710 54 2c 20 4c 50 53 49 5a 45 29 3b 0a 0a 42 4f 4f T, LPSIZE);..BOO
18720 4c 20 47 65 74 54 65 78 74 45 78 74 65 6e 74 45 L GetTextExtentE
18730 78 50 6f 69 6e 74 57 28 48 44 43 2c 20 4c 50 43 xPointW(HDC, LPC
18740 57 53 54 52 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 WSTR, int, int,
18750 4c 50 49 4e 54 2c 20 4c 50 49 4e 54 2c 20 4c 50 LPINT, LPINT, LP
18760 53 49 5a 45 29 3b 0a 0a 42 4f 4f 4c 20 47 65 74 SIZE);..BOOL Get
18770 54 65 78 74 45 78 74 65 6e 74 50 6f 69 6e 74 41 TextExtentPointA
18780 28 48 44 43 2c 20 4c 50 43 53 54 52 2c 20 69 6e (HDC, LPCSTR, in
18790 74 2c 20 4c 50 53 49 5a 45 29 3b 0a 0a 42 4f 4f t, LPSIZE);..BOO
187a0 4c 20 47 65 74 54 65 78 74 45 78 74 65 6e 74 50 L GetTextExtentP
187b0 6f 69 6e 74 57 28 48 44 43 2c 20 4c 50 43 57 53 ointW(HDC, LPCWS
187c0 54 52 2c 20 69 6e 74 2c 20 4c 50 53 49 5a 45 29 TR, int, LPSIZE)
187d0 3b 0a 0a 42 4f 4f 4c 20 47 65 74 54 65 78 74 45 ;..BOOL GetTextE
187e0 78 74 65 6e 74 50 6f 69 6e 74 33 32 41 28 48 44 xtentPoint32A(HD
187f0 43 2c 20 4c 50 43 53 54 52 2c 20 69 6e 74 2c 20 C, LPCSTR, int,
18800 4c 50 53 49 5a 45 29 3b 0a 0a 42 4f 4f 4c 20 47 LPSIZE);..BOOL G
18810 65 74 54 65 78 74 45 78 74 65 6e 74 50 6f 69 6e etTextExtentPoin
18820 74 33 32 57 28 48 44 43 2c 20 4c 50 43 57 53 54 t32W(HDC, LPCWST
18830 52 2c 20 69 6e 74 2c 20 4c 50 53 49 5a 45 29 3b R, int, LPSIZE);
18840 0a 0a 69 6e 74 20 47 65 74 54 65 78 74 46 61 63 ..int GetTextFac
18850 65 41 28 48 44 43 2c 20 69 6e 74 2c 20 4c 50 53 eA(HDC, int, LPS
18860 54 52 29 3b 0a 0a 69 6e 74 20 47 65 74 54 65 78 TR);..int GetTex
18870 74 46 61 63 65 57 28 48 44 43 2c 20 69 6e 74 2c tFaceW(HDC, int,
18880 20 4c 50 57 53 54 52 29 3b 0a 0a 42 4f 4f 4c 20 LPWSTR);..BOOL
18890 47 65 74 54 65 78 74 4d 65 74 72 69 63 73 41 28 GetTextMetricsA(
188a0 48 44 43 2c 20 4c 50 54 45 58 54 4d 45 54 52 49 HDC, LPTEXTMETRI
188b0 43 41 29 3b 0a 0a 42 4f 4f 4c 20 47 65 74 54 65 CA);..BOOL GetTe
188c0 78 74 4d 65 74 72 69 63 73 57 28 48 44 43 2c 20 xtMetricsW(HDC,
188d0 4c 50 54 45 58 54 4d 45 54 52 49 43 57 29 3b 0a LPTEXTMETRICW);.
188e0 0a 42 4f 4f 4c 20 47 65 74 56 69 65 77 70 6f 72 .BOOL GetViewpor
188f0 74 45 78 74 45 78 28 48 44 43 2c 20 4c 50 53 49 tExtEx(HDC, LPSI
18900 5a 45 29 3b 0a 0a 42 4f 4f 4c 20 47 65 74 56 69 ZE);..BOOL GetVi
18910 65 77 70 6f 72 74 4f 72 67 45 78 28 48 44 43 2c ewportOrgEx(HDC,
18920 20 4c 50 50 4f 49 4e 54 29 3b 0a 0a 42 4f 4f 4c LPPOINT);..BOOL
18930 20 47 65 74 57 69 6e 64 6f 77 45 78 74 45 78 28 GetWindowExtEx(
18940 48 44 43 2c 20 4c 50 53 49 5a 45 29 3b 0a 0a 42 HDC, LPSIZE);..B
18950 4f 4f 4c 20 47 65 74 57 69 6e 64 6f 77 4f 72 67 OOL GetWindowOrg
18960 45 78 28 48 44 43 2c 20 4c 50 50 4f 49 4e 54 29 Ex(HDC, LPPOINT)
18970 3b 0a 0a 55 49 4e 54 20 47 65 74 57 69 6e 4d 65 ;..UINT GetWinMe
18980 74 61 46 69 6c 65 42 69 74 73 28 48 45 4e 48 4d taFileBits(HENHM
18990 45 54 41 46 49 4c 45 2c 20 55 49 4e 54 2c 20 4c ETAFILE, UINT, L
189a0 50 42 59 54 45 2c 20 49 4e 54 2c 20 48 44 43 29 PBYTE, INT, HDC)
189b0 3b 0a 0a 42 4f 4f 4c 20 47 65 74 57 6f 72 6c 64 ;..BOOL GetWorld
189c0 54 72 61 6e 73 66 6f 72 6d 28 48 44 43 2c 20 4c Transform(HDC, L
189d0 50 58 46 4f 52 4d 29 3b 0a 0a 69 6e 74 20 49 6e PXFORM);..int In
189e0 74 65 72 73 65 63 74 43 6c 69 70 52 65 63 74 28 tersectClipRect(
189f0 48 44 43 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 69 HDC, int, int, i
18a00 6e 74 2c 20 69 6e 74 29 3b 0a 0a 42 4f 4f 4c 20 nt, int);..BOOL
18a10 49 6e 76 65 72 74 52 67 6e 28 48 44 43 2c 20 48 InvertRgn(HDC, H
18a20 52 47 4e 29 3b 0a 0a 42 4f 4f 4c 20 4c 69 6e 65 RGN);..BOOL Line
18a30 44 44 41 28 69 6e 74 2c 20 69 6e 74 2c 20 69 6e DDA(int, int, in
18a40 74 2c 20 69 6e 74 2c 20 4c 49 4e 45 44 44 41 50 t, int, LINEDDAP
18a50 52 4f 43 2c 20 4c 50 41 52 41 4d 29 3b 0a 0a 42 ROC, LPARAM);..B
18a60 4f 4f 4c 20 4c 69 6e 65 54 6f 28 48 44 43 2c 20 OOL LineTo(HDC,
18a70 69 6e 74 2c 20 69 6e 74 29 3b 0a 0a 42 4f 4f 4c int, int);..BOOL
18a80 20 4c 50 74 6f 44 50 28 48 44 43 2c 20 4c 50 50 LPtoDP(HDC, LPP
18a90 4f 49 4e 54 2c 20 69 6e 74 29 3b 0a 0a 42 4f 4f OINT, int);..BOO
18aa0 4c 20 4d 61 73 6b 42 6c 74 28 48 44 43 2c 20 69 L MaskBlt(HDC, i
18ab0 6e 74 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 69 6e nt, int, int, in
18ac0 74 2c 20 48 44 43 2c 20 69 6e 74 2c 20 69 6e 74 t, HDC, int, int
18ad0 2c 20 48 42 49 54 4d 41 50 2c 20 69 6e 74 2c 20 , HBITMAP, int,
18ae0 69 6e 74 2c 20 44 57 4f 52 44 29 3b 0a 0a 42 4f int, DWORD);..BO
18af0 4f 4c 20 4d 6f 64 69 66 79 57 6f 72 6c 64 54 72 OL ModifyWorldTr
18b00 61 6e 73 66 6f 72 6d 28 48 44 43 2c 20 43 50 74 ansform(HDC, CPt
18b10 72 21 28 58 46 4f 52 4d 29 2c 20 44 57 4f 52 44 r!(XFORM), DWORD
18b20 29 3b 0a 0a 42 4f 4f 4c 20 4d 6f 76 65 54 6f 45 );..BOOL MoveToE
18b30 78 28 48 44 43 2c 20 69 6e 74 2c 20 69 6e 74 2c x(HDC, int, int,
18b40 20 4c 50 50 4f 49 4e 54 29 3b 0a 0a 69 6e 74 20 LPPOINT);..int
18b50 4f 66 66 73 65 74 43 6c 69 70 52 67 6e 28 48 44 OffsetClipRgn(HD
18b60 43 2c 20 69 6e 74 2c 20 69 6e 74 29 3b 0a 0a 69 C, int, int);..i
18b70 6e 74 20 4f 66 66 73 65 74 52 67 6e 28 48 52 47 nt OffsetRgn(HRG
18b80 4e 2c 20 69 6e 74 2c 20 69 6e 74 29 3b 0a 0a 42 N, int, int);..B
18b90 4f 4f 4c 20 4f 66 66 73 65 74 56 69 65 77 70 6f OOL OffsetViewpo
18ba0 72 74 4f 72 67 45 78 28 48 44 43 2c 20 69 6e 74 rtOrgEx(HDC, int
18bb0 2c 20 69 6e 74 2c 20 4c 50 50 4f 49 4e 54 29 3b , int, LPPOINT);
18bc0 0a 0a 42 4f 4f 4c 20 4f 66 66 73 65 74 57 69 6e ..BOOL OffsetWin
18bd0 64 6f 77 4f 72 67 45 78 28 48 44 43 2c 20 69 6e dowOrgEx(HDC, in
18be0 74 2c 20 69 6e 74 2c 20 4c 50 50 4f 49 4e 54 29 t, int, LPPOINT)
18bf0 3b 0a 0a 42 4f 4f 4c 20 50 61 69 6e 74 52 67 6e ;..BOOL PaintRgn
18c00 28 48 44 43 2c 20 48 52 47 4e 29 3b 0a 0a 42 4f (HDC, HRGN);..BO
18c10 4f 4c 20 50 61 74 42 6c 74 28 48 44 43 2c 20 69 OL PatBlt(HDC, i
18c20 6e 74 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 69 6e nt, int, int, in
18c30 74 2c 20 44 57 4f 52 44 29 3b 0a 0a 48 52 47 4e t, DWORD);..HRGN
18c40 20 50 61 74 68 54 6f 52 65 67 69 6f 6e 28 48 44 PathToRegion(HD
18c50 43 29 3b 0a 0a 42 4f 4f 4c 20 50 69 65 28 48 44 C);..BOOL Pie(HD
18c60 43 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 69 6e 74 C, int, int, int
18c70 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 69 6e 74 2c , int, int, int,
18c80 20 69 6e 74 2c 20 69 6e 74 29 3b 0a 0a 42 4f 4f int, int);..BOO
18c90 4c 20 50 6c 61 79 45 6e 68 4d 65 74 61 46 69 6c L PlayEnhMetaFil
18ca0 65 28 48 44 43 2c 20 48 45 4e 48 4d 45 54 41 46 e(HDC, HENHMETAF
18cb0 49 4c 45 2c 20 4c 50 43 52 45 43 54 29 3b 0a 0a ILE, LPCRECT);..
18cc0 42 4f 4f 4c 20 50 6c 61 79 45 6e 68 4d 65 74 61 BOOL PlayEnhMeta
18cd0 46 69 6c 65 52 65 63 6f 72 64 28 48 44 43 2c 20 FileRecord(HDC,
18ce0 4c 50 48 41 4e 44 4c 45 54 41 42 4c 45 2c 20 43 LPHANDLETABLE, C
18cf0 50 74 72 21 28 45 4e 48 4d 45 54 41 52 45 43 4f Ptr!(ENHMETARECO
18d00 52 44 29 2c 20 55 49 4e 54 29 3b 0a 0a 42 4f 4f RD), UINT);..BOO
18d10 4c 20 50 6c 61 79 4d 65 74 61 46 69 6c 65 28 48 L PlayMetaFile(H
18d20 44 43 2c 20 48 4d 45 54 41 46 49 4c 45 29 3b 0a DC, HMETAFILE);.
18d30 0a 42 4f 4f 4c 20 50 6c 61 79 4d 65 74 61 46 69 .BOOL PlayMetaFi
18d40 6c 65 52 65 63 6f 72 64 28 48 44 43 2c 20 4c 50 leRecord(HDC, LP
18d50 48 41 4e 44 4c 45 54 41 42 4c 45 2c 20 4c 50 4d HANDLETABLE, LPM
18d60 45 54 41 52 45 43 4f 52 44 2c 20 55 49 4e 54 29 ETARECORD, UINT)
18d70 3b 0a 0a 42 4f 4f 4c 20 50 6c 67 42 6c 74 28 48 ;..BOOL PlgBlt(H
18d80 44 43 2c 20 43 50 74 72 21 28 50 4f 49 4e 54 29 DC, CPtr!(POINT)
18d90 2c 20 48 44 43 2c 20 69 6e 74 2c 20 69 6e 74 2c , HDC, int, int,
18da0 20 69 6e 74 2c 20 69 6e 74 2c 20 48 42 49 54 4d int, int, HBITM
18db0 41 50 2c 20 69 6e 74 2c 20 69 6e 74 29 3b 0a 0a AP, int, int);..
18dc0 42 4f 4f 4c 20 50 6f 6c 79 42 65 7a 69 65 72 28 BOOL PolyBezier(
18dd0 48 44 43 2c 20 43 50 74 72 21 28 50 4f 49 4e 54 HDC, CPtr!(POINT
18de0 29 2c 20 44 57 4f 52 44 29 3b 0a 0a 42 4f 4f 4c ), DWORD);..BOOL
18df0 20 50 6f 6c 79 42 65 7a 69 65 72 54 6f 28 48 44 PolyBezierTo(HD
18e00 43 2c 20 43 50 74 72 21 28 50 4f 49 4e 54 29 2c C, CPtr!(POINT),
18e10 20 44 57 4f 52 44 29 3b 0a 0a 42 4f 4f 4c 20 50 DWORD);..BOOL P
18e20 6f 6c 79 44 72 61 77 28 48 44 43 2c 20 43 50 74 olyDraw(HDC, CPt
18e30 72 21 28 50 4f 49 4e 54 29 2c 20 43 50 74 72 21 r!(POINT), CPtr!
18e40 28 42 59 54 45 29 2c 20 69 6e 74 29 3b 0a 0a 42 (BYTE), int);..B
18e50 4f 4f 4c 20 50 6f 6c 79 67 6f 6e 28 48 44 43 2c OOL Polygon(HDC,
18e60 20 43 50 74 72 21 28 50 4f 49 4e 54 29 2c 20 69 CPtr!(POINT), i
18e70 6e 74 29 3b 0a 0a 42 4f 4f 4c 20 50 6f 6c 79 6c nt);..BOOL Polyl
18e80 69 6e 65 28 48 44 43 2c 20 43 50 74 72 21 28 50 ine(HDC, CPtr!(P
18e90 4f 49 4e 54 29 2c 20 69 6e 74 29 3b 0a 0a 42 4f OINT), int);..BO
18ea0 4f 4c 20 50 6f 6c 79 6c 69 6e 65 54 6f 28 48 44 OL PolylineTo(HD
18eb0 43 2c 20 43 50 74 72 21 28 50 4f 49 4e 54 29 2c C, CPtr!(POINT),
18ec0 20 44 57 4f 52 44 29 3b 0a 0a 42 4f 4f 4c 20 50 DWORD);..BOOL P
18ed0 6f 6c 79 50 6f 6c 79 67 6f 6e 28 48 44 43 2c 20 olyPolygon(HDC,
18ee0 43 50 74 72 21 28 50 4f 49 4e 54 29 2c 20 43 50 CPtr!(POINT), CP
18ef0 74 72 21 28 49 4e 54 29 2c 20 69 6e 74 29 3b 0a tr!(INT), int);.
18f00 0a 42 4f 4f 4c 20 50 6f 6c 79 50 6f 6c 79 6c 69 .BOOL PolyPolyli
18f10 6e 65 28 48 44 43 2c 20 43 50 74 72 21 28 50 4f ne(HDC, CPtr!(PO
18f20 49 4e 54 29 2c 20 43 50 74 72 21 28 44 57 4f 52 INT), CPtr!(DWOR
18f30 44 29 2c 20 44 57 4f 52 44 29 3b 0a 0a 42 4f 4f D), DWORD);..BOO
18f40 4c 20 50 6f 6c 79 54 65 78 74 4f 75 74 41 28 48 L PolyTextOutA(H
18f50 44 43 2c 20 43 50 74 72 21 28 50 4f 4c 59 54 45 DC, CPtr!(POLYTE
18f60 58 54 41 29 2c 20 69 6e 74 29 3b 0a 0a 42 4f 4f XTA), int);..BOO
18f70 4c 20 50 6f 6c 79 54 65 78 74 4f 75 74 57 28 48 L PolyTextOutW(H
18f80 44 43 2c 20 43 50 74 72 21 28 50 4f 4c 59 54 45 DC, CPtr!(POLYTE
18f90 58 54 57 29 2c 20 69 6e 74 29 3b 0a 0a 42 4f 4f XTW), int);..BOO
18fa0 4c 20 50 74 49 6e 52 65 67 69 6f 6e 28 48 52 47 L PtInRegion(HRG
18fb0 4e 2c 20 69 6e 74 2c 20 69 6e 74 29 3b 0a 0a 42 N, int, int);..B
18fc0 4f 4f 4c 20 50 74 56 69 73 69 62 6c 65 28 48 44 OOL PtVisible(HD
18fd0 43 2c 20 69 6e 74 2c 20 69 6e 74 29 3b 0a 0a 55 C, int, int);..U
18fe0 49 4e 54 20 52 65 61 6c 69 7a 65 50 61 6c 65 74 INT RealizePalet
18ff0 74 65 28 48 44 43 29 3b 0a 0a 42 4f 4f 4c 20 52 te(HDC);..BOOL R
19000 65 63 74 61 6e 67 6c 65 28 48 44 43 2c 20 69 6e ectangle(HDC, in
19010 74 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 69 6e 74 t, int, int, int
19020 29 3b 0a 0a 42 4f 4f 4c 20 52 65 63 74 49 6e 52 );..BOOL RectInR
19030 65 67 69 6f 6e 28 48 52 47 4e 2c 20 4c 50 43 52 egion(HRGN, LPCR
19040 45 43 54 29 3b 0a 0a 42 4f 4f 4c 20 52 65 63 74 ECT);..BOOL Rect
19050 56 69 73 69 62 6c 65 28 48 44 43 2c 20 4c 50 43 Visible(HDC, LPC
19060 52 45 43 54 29 3b 0a 0a 42 4f 4f 4c 20 52 65 6d RECT);..BOOL Rem
19070 6f 76 65 46 6f 6e 74 52 65 73 6f 75 72 63 65 41 oveFontResourceA
19080 28 4c 50 43 53 54 52 29 3b 0a 0a 42 4f 4f 4c 20 (LPCSTR);..BOOL
19090 52 65 6d 6f 76 65 46 6f 6e 74 52 65 73 6f 75 72 RemoveFontResour
190a0 63 65 57 28 4c 50 43 57 53 54 52 29 3b 0a 0a 48 ceW(LPCWSTR);..H
190b0 44 43 20 52 65 73 65 74 44 43 41 28 48 44 43 2c DC ResetDCA(HDC,
190c0 20 43 50 74 72 21 28 44 45 56 4d 4f 44 45 41 29 CPtr!(DEVMODEA)
190d0 29 3b 0a 0a 48 44 43 20 52 65 73 65 74 44 43 57 );..HDC ResetDCW
190e0 28 48 44 43 2c 20 43 50 74 72 21 28 44 45 56 4d (HDC, CPtr!(DEVM
190f0 4f 44 45 57 29 29 3b 0a 0a 42 4f 4f 4c 20 52 65 ODEW));..BOOL Re
19100 73 69 7a 65 50 61 6c 65 74 74 65 28 48 50 41 4c sizePalette(HPAL
19110 45 54 54 45 2c 20 55 49 4e 54 29 3b 0a 0a 42 4f ETTE, UINT);..BO
19120 4f 4c 20 52 65 73 74 6f 72 65 44 43 28 48 44 43 OL RestoreDC(HDC
19130 2c 20 69 6e 74 29 3b 0a 0a 42 4f 4f 4c 20 52 6f , int);..BOOL Ro
19140 75 6e 64 52 65 63 74 28 48 44 43 2c 20 69 6e 74 undRect(HDC, int
19150 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 69 6e 74 2c , int, int, int,
19160 20 69 6e 74 2c 20 69 6e 74 29 3b 0a 0a 69 6e 74 int, int);..int
19170 20 53 61 76 65 44 43 28 48 44 43 29 3b 0a 0a 42 SaveDC(HDC);..B
19180 4f 4f 4c 20 53 63 61 6c 65 56 69 65 77 70 6f 72 OOL ScaleViewpor
19190 74 45 78 74 45 78 28 48 44 43 2c 20 69 6e 74 2c tExtEx(HDC, int,
191a0 20 69 6e 74 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 int, int, int,
191b0 4c 50 53 49 5a 45 29 3b 0a 0a 42 4f 4f 4c 20 53 LPSIZE);..BOOL S
191c0 63 61 6c 65 57 69 6e 64 6f 77 45 78 74 45 78 28 caleWindowExtEx(
191d0 48 44 43 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 69 HDC, int, int, i
191e0 6e 74 2c 20 69 6e 74 2c 20 4c 50 53 49 5a 45 29 nt, int, LPSIZE)
191f0 3b 0a 0a 42 4f 4f 4c 20 53 65 6c 65 63 74 43 6c ;..BOOL SelectCl
19200 69 70 50 61 74 68 28 48 44 43 2c 20 69 6e 74 29 ipPath(HDC, int)
19210 3b 0a 0a 69 6e 74 20 53 65 6c 65 63 74 43 6c 69 ;..int SelectCli
19220 70 52 67 6e 28 48 44 43 2c 20 48 52 47 4e 29 3b pRgn(HDC, HRGN);
19230 0a 0a 48 47 44 49 4f 42 4a 20 53 65 6c 65 63 74 ..HGDIOBJ Select
19240 4f 62 6a 65 63 74 28 48 44 43 2c 20 48 47 44 49 Object(HDC, HGDI
19250 4f 42 4a 29 3b 0a 0a 48 50 41 4c 45 54 54 45 20 OBJ);..HPALETTE
19260 53 65 6c 65 63 74 50 61 6c 65 74 74 65 28 48 44 SelectPalette(HD
19270 43 2c 20 48 50 41 4c 45 54 54 45 2c 20 42 4f 4f C, HPALETTE, BOO
19280 4c 29 3b 0a 0a 69 6e 74 20 53 65 74 41 62 6f 72 L);..int SetAbor
19290 74 50 72 6f 63 28 48 44 43 2c 20 41 42 4f 52 54 tProc(HDC, ABORT
192a0 50 52 4f 43 29 3b 0a 0a 69 6e 74 20 53 65 74 41 PROC);..int SetA
192b0 72 63 44 69 72 65 63 74 69 6f 6e 28 48 44 43 2c rcDirection(HDC,
192c0 20 69 6e 74 29 3b 0a 0a 4c 4f 4e 47 20 53 65 74 int);..LONG Set
192d0 42 69 74 6d 61 70 42 69 74 73 28 48 42 49 54 4d BitmapBits(HBITM
192e0 41 50 2c 20 44 57 4f 52 44 2c 20 50 43 56 4f 49 AP, DWORD, PCVOI
192f0 44 29 3b 0a 0a 42 4f 4f 4c 20 53 65 74 42 69 74 D);..BOOL SetBit
19300 6d 61 70 44 69 6d 65 6e 73 69 6f 6e 45 78 28 48 mapDimensionEx(H
19310 42 49 54 4d 41 50 2c 20 69 6e 74 2c 20 69 6e 74 BITMAP, int, int
19320 2c 20 4c 50 53 49 5a 45 29 3b 0a 0a 43 4f 4c 4f , LPSIZE);..COLO
19330 52 52 45 46 20 53 65 74 42 6b 43 6f 6c 6f 72 28 RREF SetBkColor(
19340 48 44 43 2c 20 43 4f 4c 4f 52 52 45 46 29 3b 0a HDC, COLORREF);.
19350 0a 69 6e 74 20 53 65 74 42 6b 4d 6f 64 65 28 48 .int SetBkMode(H
19360 44 43 2c 20 69 6e 74 29 3b 0a 0a 55 49 4e 54 20 DC, int);..UINT
19370 53 65 74 42 6f 75 6e 64 73 52 65 63 74 28 48 44 SetBoundsRect(HD
19380 43 2c 20 4c 50 43 52 45 43 54 2c 20 55 49 4e 54 C, LPCRECT, UINT
19390 29 3b 0a 0a 42 4f 4f 4c 20 53 65 74 42 72 75 73 );..BOOL SetBrus
193a0 68 4f 72 67 45 78 28 48 44 43 2c 20 69 6e 74 2c hOrgEx(HDC, int,
193b0 20 69 6e 74 2c 20 4c 50 50 4f 49 4e 54 29 3b 0a int, LPPOINT);.
193c0 0a 42 4f 4f 4c 20 53 65 74 43 6f 6c 6f 72 41 64 .BOOL SetColorAd
193d0 6a 75 73 74 6d 65 6e 74 28 48 44 43 2c 20 43 50 justment(HDC, CP
193e0 74 72 21 28 43 4f 4c 4f 52 41 44 4a 55 53 54 4d tr!(COLORADJUSTM
193f0 45 4e 54 29 29 3b 0a 0a 42 4f 4f 4c 20 53 65 74 ENT));..BOOL Set
19400 43 6f 6c 6f 72 53 70 61 63 65 28 48 44 43 2c 20 ColorSpace(HDC,
19410 48 43 4f 4c 4f 52 53 50 41 43 45 29 3b 0a 0a 42 HCOLORSPACE);..B
19420 4f 4f 4c 20 53 65 74 44 65 76 69 63 65 47 61 6d OOL SetDeviceGam
19430 6d 61 52 61 6d 70 28 48 44 43 2c 20 50 56 4f 49 maRamp(HDC, PVOI
19440 44 29 3b 0a 0a 55 49 4e 54 20 53 65 74 44 49 42 D);..UINT SetDIB
19450 43 6f 6c 6f 72 54 61 62 6c 65 28 48 44 43 2c 20 ColorTable(HDC,
19460 55 49 4e 54 2c 20 55 49 4e 54 2c 20 43 50 74 72 UINT, UINT, CPtr
19470 21 28 52 47 42 51 55 41 44 29 29 3b 0a 0a 69 6e !(RGBQUAD));..in
19480 74 20 53 65 74 44 49 42 69 74 73 28 48 44 43 2c t SetDIBits(HDC,
19490 20 48 42 49 54 4d 41 50 2c 20 55 49 4e 54 2c 20 HBITMAP, UINT,
194a0 55 49 4e 54 2c 20 50 43 56 4f 49 44 2c 20 43 50 UINT, PCVOID, CP
194b0 74 72 21 28 42 49 54 4d 41 50 49 4e 46 4f 29 2c tr!(BITMAPINFO),
194c0 20 55 49 4e 54 29 3b 0a 0a 69 6e 74 20 53 65 74 UINT);..int Set
194d0 44 49 42 69 74 73 54 6f 44 65 76 69 63 65 28 48 DIBitsToDevice(H
194e0 44 43 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 44 57 DC, int, int, DW
194f0 4f 52 44 2c 20 44 57 4f 52 44 2c 20 69 6e 74 2c ORD, DWORD, int,
19500 20 69 6e 74 2c 20 55 49 4e 54 2c 20 55 49 4e 54 int, UINT, UINT
19510 2c 20 50 43 56 4f 49 44 2c 20 43 50 74 72 21 28 , PCVOID, CPtr!(
19520 42 49 54 4d 41 50 49 4e 46 4f 29 2c 20 55 49 4e BITMAPINFO), UIN
19530 54 29 3b 0a 0a 48 45 4e 48 4d 45 54 41 46 49 4c T);..HENHMETAFIL
19540 45 20 53 65 74 45 6e 68 4d 65 74 61 46 69 6c 65 E SetEnhMetaFile
19550 42 69 74 73 28 55 49 4e 54 2c 20 43 50 74 72 21 Bits(UINT, CPtr!
19560 28 42 59 54 45 29 29 3b 0a 0a 69 6e 74 20 53 65 (BYTE));..int Se
19570 74 47 72 61 70 68 69 63 73 4d 6f 64 65 28 48 44 tGraphicsMode(HD
19580 43 2c 20 69 6e 74 29 3b 0a 0a 69 6e 74 20 53 65 C, int);..int Se
19590 74 49 43 4d 4d 6f 64 65 28 48 44 43 2c 20 69 6e tICMMode(HDC, in
195a0 74 29 3b 0a 0a 42 4f 4f 4c 20 53 65 74 49 43 4d t);..BOOL SetICM
195b0 50 72 6f 66 69 6c 65 41 28 48 44 43 2c 20 4c 50 ProfileA(HDC, LP
195c0 53 54 52 29 3b 0a 0a 42 4f 4f 4c 20 53 65 74 49 STR);..BOOL SetI
195d0 43 4d 50 72 6f 66 69 6c 65 57 28 48 44 43 2c 20 CMProfileW(HDC,
195e0 4c 50 57 53 54 52 29 3b 0a 0a 69 6e 74 20 53 65 LPWSTR);..int Se
195f0 74 4d 61 70 4d 6f 64 65 28 48 44 43 2c 20 69 6e tMapMode(HDC, in
19600 74 29 3b 0a 0a 73 74 61 74 69 63 0a 0a 69 66 20 t);..static..if
19610 28 57 49 4e 56 45 52 20 3e 3d 20 30 78 30 35 30 (WINVER >= 0x050
19620 30 29 0a 7b 0a 20 20 20 20 44 57 4f 52 44 20 53 0).{. DWORD S
19630 65 74 4c 61 79 6f 75 74 28 48 44 43 20 68 64 63 etLayout(HDC hdc
19640 2c 20 44 57 4f 52 44 20 6c 29 3b 0a 0a 20 20 20 , DWORD l);..
19650 20 44 57 4f 52 44 20 47 65 74 4c 61 79 6f 75 74 DWORD GetLayout
19660 28 48 44 43 20 68 64 63 29 3b 0a 7d 0a 0a 44 57 (HDC hdc);.}..DW
19670 4f 52 44 20 53 65 74 4d 61 70 70 65 72 46 6c 61 ORD SetMapperFla
19680 67 73 28 48 44 43 2c 20 44 57 4f 52 44 29 3b 0a gs(HDC, DWORD);.
19690 0a 48 4d 45 54 41 46 49 4c 45 20 53 65 74 4d 65 .HMETAFILE SetMe
196a0 74 61 46 69 6c 65 42 69 74 73 45 78 28 55 49 4e taFileBitsEx(UIN
196b0 54 2c 20 43 50 74 72 21 28 42 59 54 45 29 29 3b T, CPtr!(BYTE));
196c0 0a 0a 69 6e 74 20 53 65 74 4d 65 74 61 52 67 6e ..int SetMetaRgn
196d0 28 48 44 43 29 3b 0a 0a 42 4f 4f 4c 20 53 65 74 (HDC);..BOOL Set
196e0 4d 69 74 65 72 4c 69 6d 69 74 28 48 44 43 2c 20 MiterLimit(HDC,
196f0 46 4c 4f 41 54 2c 20 50 46 4c 4f 41 54 29 3b 0a FLOAT, PFLOAT);.
19700 0a 55 49 4e 54 20 53 65 74 50 61 6c 65 74 74 65 .UINT SetPalette
19710 45 6e 74 72 69 65 73 28 48 50 41 4c 45 54 54 45 Entries(HPALETTE
19720 2c 20 55 49 4e 54 2c 20 55 49 4e 54 2c 20 43 50 , UINT, UINT, CP
19730 74 72 21 28 50 41 4c 45 54 54 45 45 4e 54 52 59 tr!(PALETTEENTRY
19740 29 29 3b 0a 0a 43 4f 4c 4f 52 52 45 46 20 53 65 ));..COLORREF Se
19750 74 50 69 78 65 6c 28 48 44 43 2c 20 69 6e 74 2c tPixel(HDC, int,
19760 20 69 6e 74 2c 20 43 4f 4c 4f 52 52 45 46 29 3b int, COLORREF);
19770 0a 0a 42 4f 4f 4c 20 53 65 74 50 69 78 65 6c 46 ..BOOL SetPixelF
19780 6f 72 6d 61 74 28 48 44 43 2c 20 69 6e 74 2c 20 ormat(HDC, int,
19790 43 50 74 72 21 28 50 49 58 45 4c 46 4f 52 4d 41 CPtr!(PIXELFORMA
197a0 54 44 45 53 43 52 49 50 54 4f 52 29 29 3b 0a 0a TDESCRIPTOR));..
197b0 42 4f 4f 4c 20 53 65 74 50 69 78 65 6c 56 28 48 BOOL SetPixelV(H
197c0 44 43 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 43 4f DC, int, int, CO
197d0 4c 4f 52 52 45 46 29 3b 0a 0a 69 6e 74 20 53 65 LORREF);..int Se
197e0 74 50 6f 6c 79 46 69 6c 6c 4d 6f 64 65 28 48 44 tPolyFillMode(HD
197f0 43 2c 20 69 6e 74 29 3b 0a 0a 42 4f 4f 4c 20 53 C, int);..BOOL S
19800 65 74 52 65 63 74 52 67 6e 28 48 52 47 4e 2c 20 etRectRgn(HRGN,
19810 69 6e 74 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 69 int, int, int, i
19820 6e 74 29 3b 0a 0a 69 6e 74 20 53 65 74 52 4f 50 nt);..int SetROP
19830 32 28 48 44 43 2c 20 69 6e 74 29 3b 0a 0a 69 6e 2(HDC, int);..in
19840 74 20 53 65 74 53 74 72 65 74 63 68 42 6c 74 4d t SetStretchBltM
19850 6f 64 65 28 48 44 43 2c 20 69 6e 74 29 3b 0a 0a ode(HDC, int);..
19860 55 49 4e 54 20 53 65 74 53 79 73 74 65 6d 50 61 UINT SetSystemPa
19870 6c 65 74 74 65 55 73 65 28 48 44 43 2c 20 55 49 letteUse(HDC, UI
19880 4e 54 29 3b 0a 0a 55 49 4e 54 20 53 65 74 54 65 NT);..UINT SetTe
19890 78 74 41 6c 69 67 6e 28 48 44 43 2c 20 55 49 4e xtAlign(HDC, UIN
198a0 54 29 3b 0a 0a 69 6e 74 20 53 65 74 54 65 78 74 T);..int SetText
198b0 43 68 61 72 61 63 74 65 72 45 78 74 72 61 28 48 CharacterExtra(H
198c0 44 43 2c 20 69 6e 74 29 3b 0a 0a 43 4f 4c 4f 52 DC, int);..COLOR
198d0 52 45 46 20 53 65 74 54 65 78 74 43 6f 6c 6f 72 REF SetTextColor
198e0 28 48 44 43 2c 20 43 4f 4c 4f 52 52 45 46 29 3b (HDC, COLORREF);
198f0 0a 0a 42 4f 4f 4c 20 53 65 74 54 65 78 74 4a 75 ..BOOL SetTextJu
19900 73 74 69 66 69 63 61 74 69 6f 6e 28 48 44 43 2c stification(HDC,
19910 20 69 6e 74 2c 20 69 6e 74 29 3b 0a 0a 42 4f 4f int, int);..BOO
19920 4c 20 53 65 74 56 69 65 77 70 6f 72 74 45 78 74 L SetViewportExt
19930 45 78 28 48 44 43 2c 20 69 6e 74 2c 20 69 6e 74 Ex(HDC, int, int
19940 2c 20 4c 50 53 49 5a 45 29 3b 0a 0a 42 4f 4f 4c , LPSIZE);..BOOL
19950 20 53 65 74 56 69 65 77 70 6f 72 74 4f 72 67 45 SetViewportOrgE
19960 78 28 48 44 43 2c 20 69 6e 74 2c 20 69 6e 74 2c x(HDC, int, int,
19970 20 4c 50 50 4f 49 4e 54 29 3b 0a 0a 42 4f 4f 4c LPPOINT);..BOOL
19980 20 53 65 74 57 69 6e 64 6f 77 45 78 74 45 78 28 SetWindowExtEx(
19990 48 44 43 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 4c HDC, int, int, L
199a0 50 53 49 5a 45 29 3b 0a 0a 42 4f 4f 4c 20 53 65 PSIZE);..BOOL Se
199b0 74 57 69 6e 64 6f 77 4f 72 67 45 78 28 48 44 43 tWindowOrgEx(HDC
199c0 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 4c 50 50 4f , int, int, LPPO
199d0 49 4e 54 29 3b 0a 0a 48 45 4e 48 4d 45 54 41 46 INT);..HENHMETAF
199e0 49 4c 45 20 53 65 74 57 69 6e 4d 65 74 61 46 69 ILE SetWinMetaFi
199f0 6c 65 42 69 74 73 28 55 49 4e 54 2c 20 43 50 74 leBits(UINT, CPt
19a00 72 21 28 42 59 54 45 29 2c 20 48 44 43 2c 20 43 r!(BYTE), HDC, C
19a10 50 74 72 21 28 4d 45 54 41 46 49 4c 45 50 49 43 Ptr!(METAFILEPIC
19a20 54 29 29 3b 0a 0a 42 4f 4f 4c 20 53 65 74 57 6f T));..BOOL SetWo
19a30 72 6c 64 54 72 61 6e 73 66 6f 72 6d 28 48 44 43 rldTransform(HDC
19a40 2c 20 43 50 74 72 21 28 58 46 4f 52 4d 29 29 3b , CPtr!(XFORM));
19a50 0a 0a 69 6e 74 20 53 74 61 72 74 44 6f 63 41 28 ..int StartDocA(
19a60 48 44 43 2c 20 43 50 74 72 21 28 44 4f 43 49 4e HDC, CPtr!(DOCIN
19a70 46 4f 41 29 29 3b 0a 0a 69 6e 74 20 53 74 61 72 FOA));..int Star
19a80 74 44 6f 63 57 28 48 44 43 2c 20 43 50 74 72 21 tDocW(HDC, CPtr!
19a90 28 44 4f 43 49 4e 46 4f 57 29 29 3b 0a 0a 69 6e (DOCINFOW));..in
19aa0 74 20 53 74 61 72 74 50 61 67 65 28 48 44 43 29 t StartPage(HDC)
19ab0 3b 0a 0a 42 4f 4f 4c 20 53 74 72 65 74 63 68 42 ;..BOOL StretchB
19ac0 6c 74 28 48 44 43 2c 20 69 6e 74 2c 20 69 6e 74 lt(HDC, int, int
19ad0 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 48 44 43 2c , int, int, HDC,
19ae0 20 69 6e 74 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 int, int, int,
19af0 69 6e 74 2c 20 44 57 4f 52 44 29 3b 0a 0a 69 6e int, DWORD);..in
19b00 74 20 53 74 72 65 74 63 68 44 49 42 69 74 73 28 t StretchDIBits(
19b10 48 44 43 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 69 HDC, int, int, i
19b20 6e 74 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 69 6e nt, int, int, in
19b30 74 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 43 50 74 t, int, int, CPt
19b40 72 21 28 56 4f 49 44 29 2c 20 43 50 74 72 21 28 r!(VOID), CPtr!(
19b50 42 49 54 4d 41 50 49 4e 46 4f 29 2c 20 55 49 4e BITMAPINFO), UIN
19b60 54 2c 20 44 57 4f 52 44 29 3b 0a 0a 42 4f 4f 4c T, DWORD);..BOOL
19b70 20 53 74 72 6f 6b 65 41 6e 64 46 69 6c 6c 50 61 StrokeAndFillPa
19b80 74 68 28 48 44 43 29 3b 0a 0a 42 4f 4f 4c 20 53 th(HDC);..BOOL S
19b90 74 72 6f 6b 65 50 61 74 68 28 48 44 43 29 3b 0a trokePath(HDC);.
19ba0 0a 42 4f 4f 4c 20 53 77 61 70 42 75 66 66 65 72 .BOOL SwapBuffer
19bb0 73 28 48 44 43 29 3b 0a 0a 42 4f 4f 4c 20 54 65 s(HDC);..BOOL Te
19bc0 78 74 4f 75 74 41 28 48 44 43 2c 20 69 6e 74 2c xtOutA(HDC, int,
19bd0 20 69 6e 74 2c 20 4c 50 43 53 54 52 2c 20 69 6e int, LPCSTR, in
19be0 74 29 3b 0a 0a 42 4f 4f 4c 20 54 65 78 74 4f 75 t);..BOOL TextOu
19bf0 74 57 28 48 44 43 2c 20 69 6e 74 2c 20 69 6e 74 tW(HDC, int, int
19c00 2c 20 4c 50 43 57 53 54 52 2c 20 69 6e 74 29 3b , LPCWSTR, int);
19c10 0a 0a 42 4f 4f 4c 20 54 72 61 6e 73 6c 61 74 65 ..BOOL Translate
19c20 43 68 61 72 73 65 74 49 6e 66 6f 28 50 44 57 4f CharsetInfo(PDWO
19c30 52 44 2c 20 4c 50 43 48 41 52 53 45 54 49 4e 46 RD, LPCHARSETINF
19c40 4f 2c 20 44 57 4f 52 44 29 3b 0a 0a 42 4f 4f 4c O, DWORD);..BOOL
19c50 20 55 6e 72 65 61 6c 69 7a 65 4f 62 6a 65 63 74 UnrealizeObject
19c60 28 48 47 44 49 4f 42 4a 29 3b 0a 0a 42 4f 4f 4c (HGDIOBJ);..BOOL
19c70 20 55 70 64 61 74 65 43 6f 6c 6f 72 73 28 48 44 UpdateColors(HD
19c80 43 29 3b 0a 0a 42 4f 4f 4c 20 55 70 64 61 74 65 C);..BOOL Update
19c90 49 43 4d 52 65 67 4b 65 79 41 28 44 57 4f 52 44 ICMRegKeyA(DWORD
19ca0 2c 20 44 57 4f 52 44 2c 20 4c 50 53 54 52 2c 20 , DWORD, LPSTR,
19cb0 55 49 4e 54 29 3b 0a 0a 42 4f 4f 4c 20 55 70 64 UINT);..BOOL Upd
19cc0 61 74 65 49 43 4d 52 65 67 4b 65 79 57 28 44 57 ateICMRegKeyW(DW
19cd0 4f 52 44 2c 20 44 57 4f 52 44 2c 20 4c 50 57 53 ORD, DWORD, LPWS
19ce0 54 52 2c 20 55 49 4e 54 29 3b 0a 0a 42 4f 4f 4c TR, UINT);..BOOL
19cf0 20 57 69 64 65 6e 50 61 74 68 28 48 44 43 29 3b WidenPath(HDC);
19d00 0a 0a 42 4f 4f 4c 20 77 67 6c 43 6f 70 79 43 6f ..BOOL wglCopyCo
19d10 6e 74 65 78 74 28 48 47 4c 52 43 2c 20 48 47 4c ntext(HGLRC, HGL
19d20 52 43 2c 20 55 49 4e 54 29 3b 0a 0a 48 47 4c 52 RC, UINT);..HGLR
19d30 43 20 77 67 6c 43 72 65 61 74 65 43 6f 6e 74 65 C wglCreateConte
19d40 78 74 28 48 44 43 29 3b 0a 0a 48 47 4c 52 43 20 xt(HDC);..HGLRC
19d50 77 67 6c 43 72 65 61 74 65 4c 61 79 65 72 43 6f wglCreateLayerCo
19d60 6e 74 65 78 74 28 48 44 43 2c 20 69 6e 74 29 3b ntext(HDC, int);
19d70 0a 0a 42 4f 4f 4c 20 77 67 6c 44 65 6c 65 74 65 ..BOOL wglDelete
19d80 43 6f 6e 74 65 78 74 28 48 47 4c 52 43 29 3b 0a Context(HGLRC);.
19d90 0a 42 4f 4f 4c 20 77 67 6c 44 65 73 63 72 69 62 .BOOL wglDescrib
19da0 65 4c 61 79 65 72 50 6c 61 6e 65 28 48 44 43 2c eLayerPlane(HDC,
19db0 20 69 6e 74 2c 20 69 6e 74 2c 20 55 49 4e 54 2c int, int, UINT,
19dc0 20 4c 50 4c 41 59 45 52 50 4c 41 4e 45 44 45 53 LPLAYERPLANEDES
19dd0 43 52 49 50 54 4f 52 29 3b 0a 0a 48 47 4c 52 43 CRIPTOR);..HGLRC
19de0 20 77 67 6c 47 65 74 43 75 72 72 65 6e 74 43 6f wglGetCurrentCo
19df0 6e 74 65 78 74 28 29 3b 0a 0a 48 44 43 20 77 67 ntext();..HDC wg
19e00 6c 47 65 74 43 75 72 72 65 6e 74 44 43 28 29 3b lGetCurrentDC();
19e10 0a 0a 69 6e 74 20 77 67 6c 47 65 74 4c 61 79 65 ..int wglGetLaye
19e20 72 50 61 6c 65 74 74 65 45 6e 74 72 69 65 73 28 rPaletteEntries(
19e30 48 44 43 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 69 HDC, int, int, i
19e40 6e 74 2c 20 43 4f 4c 4f 52 52 45 46 2a 29 3b 0a nt, COLORREF*);.
19e50 0a 50 52 4f 43 20 77 67 6c 47 65 74 50 72 6f 63 .PROC wglGetProc
19e60 41 64 64 72 65 73 73 28 4c 50 43 53 54 52 29 3b Address(LPCSTR);
19e70 0a 0a 42 4f 4f 4c 20 77 67 6c 4d 61 6b 65 43 75 ..BOOL wglMakeCu
19e80 72 72 65 6e 74 28 48 44 43 2c 20 48 47 4c 52 43 rrent(HDC, HGLRC
19e90 29 3b 0a 0a 42 4f 4f 4c 20 77 67 6c 52 65 61 6c );..BOOL wglReal
19ea0 69 7a 65 4c 61 79 65 72 50 61 6c 65 74 74 65 28 izeLayerPalette(
19eb0 48 44 43 2c 20 69 6e 74 2c 20 42 4f 4f 4c 29 3b HDC, int, BOOL);
19ec0 0a 0a 69 6e 74 20 77 67 6c 53 65 74 4c 61 79 65 ..int wglSetLaye
19ed0 72 50 61 6c 65 74 74 65 45 6e 74 72 69 65 73 28 rPaletteEntries(
19ee0 48 44 43 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 69 HDC, int, int, i
19ef0 6e 74 2c 20 43 50 74 72 21 28 43 4f 4c 4f 52 52 nt, CPtr!(COLORR
19f00 45 46 29 29 3b 0a 0a 42 4f 4f 4c 20 77 67 6c 53 EF));..BOOL wglS
19f10 68 61 72 65 4c 69 73 74 73 28 48 47 4c 52 43 2c hareLists(HGLRC,
19f20 20 48 47 4c 52 43 29 3b 0a 0a 42 4f 4f 4c 20 77 HGLRC);..BOOL w
19f30 67 6c 53 77 61 70 4c 61 79 65 72 42 75 66 66 65 glSwapLayerBuffe
19f40 72 73 28 48 44 43 2c 20 55 49 4e 54 29 3b 0a 0a rs(HDC, UINT);..
19f50 42 4f 4f 4c 20 77 67 6c 55 73 65 46 6f 6e 74 42 BOOL wglUseFontB
19f60 69 74 6d 61 70 73 41 28 48 44 43 2c 20 44 57 4f itmapsA(HDC, DWO
19f70 52 44 2c 20 44 57 4f 52 44 2c 20 44 57 4f 52 44 RD, DWORD, DWORD
19f80 29 3b 0a 0a 42 4f 4f 4c 20 77 67 6c 55 73 65 46 );..BOOL wglUseF
19f90 6f 6e 74 42 69 74 6d 61 70 73 57 28 48 44 43 2c ontBitmapsW(HDC,
19fa0 20 44 57 4f 52 44 2c 20 44 57 4f 52 44 2c 20 44 DWORD, DWORD, D
19fb0 57 4f 52 44 29 3b 0a 0a 42 4f 4f 4c 20 77 67 6c WORD);..BOOL wgl
19fc0 55 73 65 46 6f 6e 74 4f 75 74 6c 69 6e 65 73 41 UseFontOutlinesA
19fd0 28 48 44 43 2c 20 44 57 4f 52 44 2c 20 44 57 4f (HDC, DWORD, DWO
19fe0 52 44 2c 20 44 57 4f 52 44 2c 20 46 4c 4f 41 54 RD, DWORD, FLOAT
19ff0 2c 20 46 4c 4f 41 54 2c 20 69 6e 74 2c 20 4c 50 , FLOAT, int, LP
1a000 47 4c 59 50 48 4d 45 54 52 49 43 53 46 4c 4f 41 GLYPHMETRICSFLOA
1a010 54 29 3b 0a 0a 42 4f 4f 4c 20 77 67 6c 55 73 65 T);..BOOL wglUse
1a020 46 6f 6e 74 4f 75 74 6c 69 6e 65 73 57 28 48 44 FontOutlinesW(HD
1a030 43 2c 20 44 57 4f 52 44 2c 20 44 57 4f 52 44 2c C, DWORD, DWORD,
1a040 20 44 57 4f 52 44 2c 20 46 4c 4f 41 54 2c 20 46 DWORD, FLOAT, F
1a050 4c 4f 41 54 2c 20 69 6e 74 2c 20 4c 50 47 4c 59 LOAT, int, LPGLY
1a060 50 48 4d 45 54 52 49 43 53 46 4c 4f 41 54 29 3b PHMETRICSFLOAT);
1a070 0a 0a 73 74 61 74 69 63 0a 0a 69 66 20 28 57 49 ..static..if (WI
1a080 4e 56 45 52 20 3e 3d 20 30 78 30 35 30 30 29 0a NVER >= 0x0500).
1a090 7b 0a 20 20 20 20 61 6c 69 61 73 20 57 47 4c 53 {. alias WGLS
1a0a0 57 41 50 2a 50 57 47 4c 53 57 41 50 3b 0a 20 20 WAP*PWGLSWAP;.
1a0b0 20 20 73 74 72 75 63 74 20 57 47 4c 53 57 41 50 struct WGLSWAP
1a0c0 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 48 . {. H
1a0d0 44 43 20 68 64 63 3b 0a 20 20 20 20 20 20 20 20 DC hdc;.
1a0e0 55 49 4e 54 20 75 69 46 6c 61 67 73 3b 0a 20 20 UINT uiFlags;.
1a0f0 20 20 7d 0a 20 20 20 20 63 6f 6e 73 74 20 57 47 }. const WG
1a100 4c 5f 53 57 41 50 4d 55 4c 54 49 50 4c 45 5f 4d L_SWAPMULTIPLE_M
1a110 41 58 20 3d 20 31 36 3b 0a 20 20 20 20 44 57 4f AX = 16;. DWO
1a120 52 44 20 20 77 67 6c 53 77 61 70 4d 75 6c 74 69 RD wglSwapMulti
1a130 70 6c 65 42 75 66 66 65 72 73 28 55 49 4e 54 2c pleBuffers(UINT,
1a140 20 57 47 4c 53 57 41 50 2a 29 3b 0a 7d 0a 0a 73 WGLSWAP*);.}..s
1a150 74 61 74 69 63 0a 0a 69 66 20 28 57 49 4e 56 45 tatic..if (WINVE
1a160 52 20 3e 3d 20 30 78 30 35 30 30 29 0a 7b 0a 20 R >= 0x0500).{.
1a170 20 20 20 42 4f 4f 4c 20 47 64 69 41 6c 70 68 61 BOOL GdiAlpha
1a180 42 6c 65 6e 64 28 48 44 43 2c 20 69 6e 74 2c 20 Blend(HDC, int,
1a190 69 6e 74 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 48 int, int, int, H
1a1a0 44 43 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 69 6e DC, int, int, in
1a1b0 74 2c 20 69 6e 74 2c 20 42 4c 45 4e 44 46 55 4e t, int, BLENDFUN
1a1c0 43 54 49 4f 4e 29 3b 0a 0a 20 20 20 20 42 4f 4f CTION);.. BOO
1a1d0 4c 20 47 72 61 64 69 65 6e 74 46 69 6c 6c 28 48 L GradientFill(H
1a1e0 44 43 2c 20 50 54 52 49 56 45 52 54 45 58 2c 20 DC, PTRIVERTEX,
1a1f0 55 4c 4f 4e 47 2c 20 50 56 4f 49 44 2c 20 55 4c ULONG, PVOID, UL
1a200 4f 4e 47 2c 20 55 4c 4f 4e 47 29 3b 0a 0a 20 20 ONG, ULONG);..
1a210 20 20 42 4f 4f 4c 20 54 72 61 6e 73 70 61 72 65 BOOL Transpare
1a220 6e 74 42 6c 74 28 48 44 43 2c 20 69 6e 74 2c 20 ntBlt(HDC, int,
1a230 69 6e 74 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 48 int, int, int, H
1a240 44 43 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 69 6e DC, int, int, in
1a250 74 2c 20 69 6e 74 2c 20 55 49 4e 54 29 3b 0a 7d t, int, UINT);.}
1a260 0a 0a 73 74 61 74 69 63 0a 0a 69 66 20 28 5f 57 ..static..if (_W
1a270 49 4e 33 32 5f 57 49 4e 4e 54 20 3e 3d 20 30 78 IN32_WINNT >= 0x
1a280 30 35 30 30 29 0a 7b 0a 20 20 20 20 43 4f 4c 4f 0500).{. COLO
1a290 52 52 45 46 20 53 65 74 44 43 42 72 75 73 68 43 RREF SetDCBrushC
1a2a0 6f 6c 6f 72 28 48 44 43 2c 20 43 4f 4c 4f 52 52 olor(HDC, COLORR
1a2b0 45 46 29 3b 0a 0a 20 20 20 20 43 4f 4c 4f 52 52 EF);.. COLORR
1a2c0 45 46 20 53 65 74 44 43 50 65 6e 43 6f 6c 6f 72 EF SetDCPenColor
1a2d0 28 48 44 43 2c 20 43 4f 4c 4f 52 52 45 46 29 3b (HDC, COLORREF);
1a2e0 0a 0a 20 20 20 20 48 41 4e 44 4c 45 20 41 64 64 .. HANDLE Add
1a2f0 46 6f 6e 74 4d 65 6d 52 65 73 6f 75 72 63 65 45 FontMemResourceE
1a300 78 28 50 56 4f 49 44 2c 20 44 57 4f 52 44 2c 20 x(PVOID, DWORD,
1a310 50 56 4f 49 44 2c 20 44 57 4f 52 44 2a 29 3b 0a PVOID, DWORD*);.
1a320 0a 20 20 20 20 69 6e 74 20 41 64 64 46 6f 6e 74 . int AddFont
1a330 52 65 73 6f 75 72 63 65 45 78 41 28 4c 50 43 53 ResourceExA(LPCS
1a340 54 52 2c 20 44 57 4f 52 44 2c 20 50 56 4f 49 44 TR, DWORD, PVOID
1a350 29 3b 0a 0a 20 20 20 20 69 6e 74 20 41 64 64 46 );.. int AddF
1a360 6f 6e 74 52 65 73 6f 75 72 63 65 45 78 57 28 4c ontResourceExW(L
1a370 50 43 57 53 54 52 2c 20 44 57 4f 52 44 2c 20 50 PCWSTR, DWORD, P
1a380 56 4f 49 44 29 3b 0a 0a 20 20 20 20 42 4f 4f 4c VOID);.. BOOL
1a390 20 52 65 6d 6f 76 65 46 6f 6e 74 4d 65 6d 52 65 RemoveFontMemRe
1a3a0 73 6f 75 72 63 65 45 78 28 48 41 4e 44 4c 45 29 sourceEx(HANDLE)
1a3b0 3b 0a 0a 20 20 20 20 42 4f 4f 4c 20 52 65 6d 6f ;.. BOOL Remo
1a3c0 76 65 46 6f 6e 74 52 65 73 6f 75 72 63 65 45 78 veFontResourceEx
1a3d0 41 28 4c 50 43 53 54 52 2c 20 44 57 4f 52 44 2c A(LPCSTR, DWORD,
1a3e0 20 50 56 4f 49 44 29 3b 0a 0a 20 20 20 20 42 4f PVOID);.. BO
1a3f0 4f 4c 20 52 65 6d 6f 76 65 46 6f 6e 74 52 65 73 OL RemoveFontRes
1a400 6f 75 72 63 65 45 78 57 28 4c 50 43 57 53 54 52 ourceExW(LPCWSTR
1a410 2c 20 44 57 4f 52 44 2c 20 50 56 4f 49 44 29 3b , DWORD, PVOID);
1a420 0a 0a 20 20 20 20 44 57 4f 52 44 20 47 65 74 46 .. DWORD GetF
1a430 6f 6e 74 55 6e 69 63 6f 64 65 52 61 6e 67 65 73 ontUnicodeRanges
1a440 28 48 44 43 2c 20 4c 50 47 4c 59 50 48 53 45 54 (HDC, LPGLYPHSET
1a450 29 3b 0a 0a 20 20 20 20 44 57 4f 52 44 20 47 65 );.. DWORD Ge
1a460 74 47 6c 79 70 68 49 6e 64 69 63 65 73 41 28 48 tGlyphIndicesA(H
1a470 44 43 2c 20 4c 50 43 53 54 52 2c 20 69 6e 74 2c DC, LPCSTR, int,
1a480 20 4c 50 57 4f 52 44 2c 20 44 57 4f 52 44 29 3b LPWORD, DWORD);
1a490 0a 0a 20 20 20 20 44 57 4f 52 44 20 47 65 74 47 .. DWORD GetG
1a4a0 6c 79 70 68 49 6e 64 69 63 65 73 57 28 48 44 43 lyphIndicesW(HDC
1a4b0 2c 20 4c 50 43 57 53 54 52 2c 20 69 6e 74 2c 20 , LPCWSTR, int,
1a4c0 4c 50 57 4f 52 44 2c 20 44 57 4f 52 44 29 3b 0a LPWORD, DWORD);.
1a4d0 0a 20 20 20 20 42 4f 4f 4c 20 47 65 74 54 65 78 . BOOL GetTex
1a4e0 74 45 78 74 65 6e 74 50 6f 69 6e 74 49 28 48 44 tExtentPointI(HD
1a4f0 43 2c 20 4c 50 57 4f 52 44 2c 20 69 6e 74 2c 20 C, LPWORD, int,
1a500 4c 50 53 49 5a 45 29 3b 0a 0a 20 20 20 20 42 4f LPSIZE);.. BO
1a510 4f 4c 20 47 65 74 54 65 78 74 45 78 74 65 6e 74 OL GetTextExtent
1a520 45 78 50 6f 69 6e 74 49 28 48 44 43 2c 20 4c 50 ExPointI(HDC, LP
1a530 57 4f 52 44 2c 20 69 6e 74 2c 20 69 6e 74 2c 20 WORD, int, int,
1a540 4c 50 49 4e 54 2c 20 4c 50 49 4e 54 2c 20 4c 50 LPINT, LPINT, LP
1a550 53 49 5a 45 29 3b 0a 0a 20 20 20 20 42 4f 4f 4c SIZE);.. BOOL
1a560 20 47 65 74 43 68 61 72 57 69 64 74 68 49 28 48 GetCharWidthI(H
1a570 44 43 2c 20 55 49 4e 54 2c 20 55 49 4e 54 2c 20 DC, UINT, UINT,
1a580 4c 50 57 4f 52 44 2c 20 4c 50 49 4e 54 29 3b 0a LPWORD, LPINT);.
1a590 0a 20 20 20 20 42 4f 4f 4c 20 47 65 74 43 68 61 . BOOL GetCha
1a5a0 72 41 42 43 57 69 64 74 68 73 49 28 48 44 43 2c rABCWidthsI(HDC,
1a5b0 20 55 49 4e 54 2c 20 55 49 4e 54 2c 20 4c 50 57 UINT, UINT, LPW
1a5c0 4f 52 44 2c 20 4c 50 41 42 43 29 3b 0a 7d 0a 7d ORD, LPABC);.}.}
1a5d0 20 2f 2f 20 65 78 74 65 72 6e 20 28 57 69 6e 64 // extern (Wind
1a5e0 6f 77 73 29 0a 0a 76 65 72 73 69 6f 6e 20 28 55 ows)..version (U
1a5f0 6e 69 63 6f 64 65 29 0a 7b 0a 20 20 20 20 61 6c nicode).{. al
1a600 69 61 73 20 57 43 48 41 52 20 42 43 48 41 52 3b ias WCHAR BCHAR;
1a610 0a 20 20 20 20 61 6c 69 61 73 20 44 4f 43 49 4e . alias DOCIN
1a620 46 4f 57 20 44 4f 43 49 4e 46 4f 3b 0a 20 20 20 FOW DOCINFO;.
1a630 20 61 6c 69 61 73 20 4c 4f 47 46 4f 4e 54 57 20 alias LOGFONTW
1a640 4c 4f 47 46 4f 4e 54 3b 0a 0a 20 20 20 20 61 6c LOGFONT;.. al
1a650 69 61 73 20 54 45 58 54 4d 45 54 52 49 43 57 20 ias TEXTMETRICW
1a660 54 45 58 54 4d 45 54 52 49 43 3b 0a 20 20 20 20 TEXTMETRIC;.
1a670 61 6c 69 61 73 20 4e 50 54 45 58 54 4d 45 54 52 alias NPTEXTMETR
1a680 49 43 57 20 4e 50 54 45 58 54 4d 45 54 52 49 43 ICW NPTEXTMETRIC
1a690 3b 0a 20 20 20 20 61 6c 69 61 73 20 49 43 4d 45 ;. alias ICME
1a6a0 4e 55 4d 50 52 4f 43 57 20 20 49 43 4d 45 4e 55 NUMPROCW ICMENU
1a6b0 4d 50 52 4f 43 3b 0a 20 20 20 20 61 6c 69 61 73 MPROC;. alias
1a6c0 20 46 4f 4e 54 45 4e 55 4d 50 52 4f 43 57 20 46 FONTENUMPROCW F
1a6d0 4f 4e 54 45 4e 55 4d 50 52 4f 43 3b 0a 20 20 20 ONTENUMPROC;.
1a6e0 20 61 6c 69 61 73 20 44 45 56 4d 4f 44 45 57 20 alias DEVMODEW
1a6f0 44 45 56 4d 4f 44 45 3b 0a 0a 20 20 20 20 61 6c DEVMODE;.. al
1a700 69 61 73 20 45 58 54 4c 4f 47 46 4f 4e 54 57 20 ias EXTLOGFONTW
1a710 20 45 58 54 4c 4f 47 46 4f 4e 54 3b 0a 20 20 20 EXTLOGFONT;.
1a720 20 61 6c 69 61 73 20 47 43 50 5f 52 45 53 55 4c alias GCP_RESUL
1a730 54 53 57 20 47 43 50 5f 52 45 53 55 4c 54 53 3b TSW GCP_RESULTS;
1a740 0a 20 20 20 20 61 6c 69 61 73 20 4f 55 54 4c 49 . alias OUTLI
1a750 4e 45 54 45 58 54 4d 45 54 52 49 43 57 20 4f 55 NETEXTMETRICW OU
1a760 54 4c 49 4e 45 54 45 58 54 4d 45 54 52 49 43 3b TLINETEXTMETRIC;
1a770 0a 20 20 20 20 61 6c 69 61 73 20 50 4f 4c 59 54 . alias POLYT
1a780 45 58 54 57 20 50 4f 4c 59 54 45 58 54 3b 0a 20 EXTW POLYTEXT;.
1a790 20 20 20 61 6c 69 61 73 20 4c 4f 47 43 4f 4c 4f alias LOGCOLO
1a7a0 52 53 50 41 43 45 57 20 4c 4f 47 43 4f 4c 4f 52 RSPACEW LOGCOLOR
1a7b0 53 50 41 43 45 3b 0a 20 20 20 20 61 6c 69 61 73 SPACE;. alias
1a7c0 20 4e 45 57 54 45 58 54 4d 45 54 52 49 43 57 20 NEWTEXTMETRICW
1a7d0 4e 45 57 54 45 58 54 4d 45 54 52 49 43 3b 0a 20 NEWTEXTMETRIC;.
1a7e0 20 20 20 61 6c 69 61 73 20 4e 45 57 54 45 58 54 alias NEWTEXT
1a7f0 4d 45 54 52 49 43 45 58 57 20 4e 45 57 54 45 58 METRICEXW NEWTEX
1a800 54 4d 45 54 52 49 43 45 58 3b 0a 20 20 20 20 61 TMETRICEX;. a
1a810 6c 69 61 73 20 45 4e 55 4d 4c 4f 47 46 4f 4e 54 lias ENUMLOGFONT
1a820 57 20 45 4e 55 4d 4c 4f 47 46 4f 4e 54 3b 0a 20 W ENUMLOGFONT;.
1a830 20 20 20 61 6c 69 61 73 20 45 4e 55 4d 4c 4f 47 alias ENUMLOG
1a840 46 4f 4e 54 45 58 57 20 20 20 45 4e 55 4d 4c 4f FONTEXW ENUMLO
1a850 47 46 4f 4e 54 45 58 3b 0a 20 20 20 20 61 6c 69 GFONTEX;. ali
1a860 61 73 20 44 49 53 50 4c 41 59 5f 44 45 56 49 43 as DISPLAY_DEVIC
1a870 45 57 20 20 44 49 53 50 4c 41 59 5f 44 45 56 49 EW DISPLAY_DEVI
1a880 43 45 3b 0a 20 20 20 20 61 6c 69 61 73 20 41 64 CE;. alias Ad
1a890 64 46 6f 6e 74 52 65 73 6f 75 72 63 65 57 20 41 dFontResourceW A
1a8a0 64 64 46 6f 6e 74 52 65 73 6f 75 72 63 65 3b 0a ddFontResource;.
1a8b0 0a 20 20 20 20 61 6c 69 61 73 20 43 6f 70 79 45 . alias CopyE
1a8c0 6e 68 4d 65 74 61 46 69 6c 65 57 20 43 6f 70 79 nhMetaFileW Copy
1a8d0 45 6e 68 4d 65 74 61 46 69 6c 65 3b 0a 20 20 20 EnhMetaFile;.
1a8e0 20 61 6c 69 61 73 20 43 6f 70 79 4d 65 74 61 46 alias CopyMetaF
1a8f0 69 6c 65 57 20 43 6f 70 79 4d 65 74 61 46 69 6c ileW CopyMetaFil
1a900 65 3b 0a 20 20 20 20 61 6c 69 61 73 20 43 72 65 e;. alias Cre
1a910 61 74 65 43 6f 6c 6f 72 53 70 61 63 65 57 20 43 ateColorSpaceW C
1a920 72 65 61 74 65 43 6f 6c 6f 72 53 70 61 63 65 3b reateColorSpace;
1a930 0a 20 20 20 20 61 6c 69 61 73 20 43 72 65 61 74 . alias Creat
1a940 65 44 43 57 20 43 72 65 61 74 65 44 43 3b 0a 20 eDCW CreateDC;.
1a950 20 20 20 61 6c 69 61 73 20 43 72 65 61 74 65 45 alias CreateE
1a960 6e 68 4d 65 74 61 46 69 6c 65 57 20 43 72 65 61 nhMetaFileW Crea
1a970 74 65 45 6e 68 4d 65 74 61 46 69 6c 65 3b 0a 20 teEnhMetaFile;.
1a980 20 20 20 61 6c 69 61 73 20 43 72 65 61 74 65 46 alias CreateF
1a990 6f 6e 74 57 20 43 72 65 61 74 65 46 6f 6e 74 3b ontW CreateFont;
1a9a0 0a 20 20 20 20 61 6c 69 61 73 20 43 72 65 61 74 . alias Creat
1a9b0 65 46 6f 6e 74 49 6e 64 69 72 65 63 74 57 20 43 eFontIndirectW C
1a9c0 72 65 61 74 65 46 6f 6e 74 49 6e 64 69 72 65 63 reateFontIndirec
1a9d0 74 3b 0a 20 20 20 20 61 6c 69 61 73 20 43 72 65 t;. alias Cre
1a9e0 61 74 65 49 43 57 20 43 72 65 61 74 65 49 43 3b ateICW CreateIC;
1a9f0 0a 20 20 20 20 61 6c 69 61 73 20 43 72 65 61 74 . alias Creat
1aa00 65 4d 65 74 61 46 69 6c 65 57 20 43 72 65 61 74 eMetaFileW Creat
1aa10 65 4d 65 74 61 46 69 6c 65 3b 0a 20 20 20 20 61 eMetaFile;. a
1aa20 6c 69 61 73 20 43 72 65 61 74 65 53 63 61 6c 61 lias CreateScala
1aa30 62 6c 65 46 6f 6e 74 52 65 73 6f 75 72 63 65 57 bleFontResourceW
1aa40 20 43 72 65 61 74 65 53 63 61 6c 61 62 6c 65 46 CreateScalableF
1aa50 6f 6e 74 52 65 73 6f 75 72 63 65 3b 0a 20 20 20 ontResource;.
1aa60 20 61 6c 69 61 73 20 44 65 76 69 63 65 43 61 70 alias DeviceCap
1aa70 61 62 69 6c 69 74 69 65 73 57 20 44 65 76 69 63 abilitiesW Devic
1aa80 65 43 61 70 61 62 69 6c 69 74 69 65 73 3b 0a 20 eCapabilities;.
1aa90 20 20 20 61 6c 69 61 73 20 45 6e 75 6d 46 6f 6e alias EnumFon
1aaa0 74 46 61 6d 69 6c 69 65 73 57 20 45 6e 75 6d 46 tFamiliesW EnumF
1aab0 6f 6e 74 46 61 6d 69 6c 69 65 73 3b 0a 20 20 20 ontFamilies;.
1aac0 20 61 6c 69 61 73 20 45 6e 75 6d 46 6f 6e 74 46 alias EnumFontF
1aad0 61 6d 69 6c 69 65 73 45 78 57 20 45 6e 75 6d 46 amiliesExW EnumF
1aae0 6f 6e 74 46 61 6d 69 6c 69 65 73 45 78 3b 0a 20 ontFamiliesEx;.
1aaf0 20 20 20 61 6c 69 61 73 20 45 6e 75 6d 46 6f 6e alias EnumFon
1ab00 74 73 57 20 45 6e 75 6d 46 6f 6e 74 73 3b 0a 20 tsW EnumFonts;.
1ab10 20 20 20 61 6c 69 61 73 20 45 6e 75 6d 49 43 4d alias EnumICM
1ab20 50 72 6f 66 69 6c 65 73 57 20 45 6e 75 6d 49 43 ProfilesW EnumIC
1ab30 4d 50 72 6f 66 69 6c 65 73 3b 0a 20 20 20 20 61 MProfiles;. a
1ab40 6c 69 61 73 20 45 78 74 54 65 78 74 4f 75 74 57 lias ExtTextOutW
1ab50 20 45 78 74 54 65 78 74 4f 75 74 3b 0a 20 20 20 ExtTextOut;.
1ab60 20 61 6c 69 61 73 20 47 65 74 43 68 61 72 41 42 alias GetCharAB
1ab70 43 57 69 64 74 68 73 46 6c 6f 61 74 57 20 47 65 CWidthsFloatW Ge
1ab80 74 43 68 61 72 41 42 43 57 69 64 74 68 73 46 6c tCharABCWidthsFl
1ab90 6f 61 74 3b 0a 20 20 20 20 61 6c 69 61 73 20 47 oat;. alias G
1aba0 65 74 43 68 61 72 41 42 43 57 69 64 74 68 73 57 etCharABCWidthsW
1abb0 20 47 65 74 43 68 61 72 41 42 43 57 69 64 74 68 GetCharABCWidth
1abc0 73 3b 0a 20 20 20 20 61 6c 69 61 73 20 47 65 74 s;. alias Get
1abd0 43 68 61 72 61 63 74 65 72 50 6c 61 63 65 6d 65 CharacterPlaceme
1abe0 6e 74 57 20 47 65 74 43 68 61 72 61 63 74 65 72 ntW GetCharacter
1abf0 50 6c 61 63 65 6d 65 6e 74 3b 0a 20 20 20 20 61 Placement;. a
1ac00 6c 69 61 73 20 47 65 74 43 68 61 72 57 69 64 74 lias GetCharWidt
1ac10 68 33 32 57 20 47 65 74 43 68 61 72 57 69 64 74 h32W GetCharWidt
1ac20 68 33 32 3b 0a 20 20 20 20 61 6c 69 61 73 20 47 h32;. alias G
1ac30 65 74 43 68 61 72 57 69 64 74 68 46 6c 6f 61 74 etCharWidthFloat
1ac40 57 20 47 65 74 43 68 61 72 57 69 64 74 68 46 6c W GetCharWidthFl
1ac50 6f 61 74 3b 0a 20 20 20 20 61 6c 69 61 73 20 47 oat;. alias G
1ac60 65 74 43 68 61 72 57 69 64 74 68 57 20 47 65 74 etCharWidthW Get
1ac70 43 68 61 72 57 69 64 74 68 3b 0a 20 20 20 20 61 CharWidth;. a
1ac80 6c 69 61 73 20 47 65 74 45 6e 68 4d 65 74 61 46 lias GetEnhMetaF
1ac90 69 6c 65 57 20 47 65 74 45 6e 68 4d 65 74 61 46 ileW GetEnhMetaF
1aca0 69 6c 65 3b 0a 20 20 20 20 61 6c 69 61 73 20 47 ile;. alias G
1acb0 65 74 45 6e 68 4d 65 74 61 46 69 6c 65 44 65 73 etEnhMetaFileDes
1acc0 63 72 69 70 74 69 6f 6e 57 20 47 65 74 45 6e 68 criptionW GetEnh
1acd0 4d 65 74 61 46 69 6c 65 44 65 73 63 72 69 70 74 MetaFileDescript
1ace0 69 6f 6e 3b 0a 20 20 20 20 61 6c 69 61 73 20 47 ion;. alias G
1acf0 65 74 47 6c 79 70 68 4f 75 74 6c 69 6e 65 57 20 etGlyphOutlineW
1ad00 47 65 74 47 6c 79 70 68 4f 75 74 6c 69 6e 65 3b GetGlyphOutline;
1ad10 0a 20 20 20 20 61 6c 69 61 73 20 47 65 74 49 43 . alias GetIC
1ad20 4d 50 72 6f 66 69 6c 65 57 20 47 65 74 49 43 4d MProfileW GetICM
1ad30 50 72 6f 66 69 6c 65 3b 0a 20 20 20 20 61 6c 69 Profile;. ali
1ad40 61 73 20 47 65 74 4b 65 72 6e 69 6e 67 50 61 69 as GetKerningPai
1ad50 72 73 57 20 20 47 65 74 4b 65 72 6e 69 6e 67 50 rsW GetKerningP
1ad60 61 69 72 73 3b 0a 20 20 20 20 61 6c 69 61 73 20 airs;. alias
1ad70 47 65 74 4c 6f 67 43 6f 6c 6f 72 53 70 61 63 65 GetLogColorSpace
1ad80 57 20 47 65 74 4c 6f 67 43 6f 6c 6f 72 53 70 61 W GetLogColorSpa
1ad90 63 65 3b 0a 20 20 20 20 61 6c 69 61 73 20 47 65 ce;. alias Ge
1ada0 74 4d 65 74 61 46 69 6c 65 57 20 47 65 74 4d 65 tMetaFileW GetMe
1adb0 74 61 46 69 6c 65 3b 0a 20 20 20 20 61 6c 69 61 taFile;. alia
1adc0 73 20 47 65 74 4f 62 6a 65 63 74 57 20 47 65 74 s GetObjectW Get
1add0 4f 62 6a 65 63 74 3b 0a 20 20 20 20 61 6c 69 61 Object;. alia
1ade0 73 20 47 65 74 4f 75 74 6c 69 6e 65 54 65 78 74 s GetOutlineText
1adf0 4d 65 74 72 69 63 73 57 20 47 65 74 4f 75 74 6c MetricsW GetOutl
1ae00 69 6e 65 54 65 78 74 4d 65 74 72 69 63 73 3b 0a ineTextMetrics;.
1ae10 20 20 20 20 61 6c 69 61 73 20 47 65 74 54 65 78 alias GetTex
1ae20 74 45 78 74 65 6e 74 50 6f 69 6e 74 57 20 47 65 tExtentPointW Ge
1ae30 74 54 65 78 74 45 78 74 65 6e 74 50 6f 69 6e 74 tTextExtentPoint
1ae40 3b 0a 20 20 20 20 61 6c 69 61 73 20 47 65 74 54 ;. alias GetT
1ae50 65 78 74 45 78 74 65 6e 74 45 78 50 6f 69 6e 74 extExtentExPoint
1ae60 57 20 47 65 74 54 65 78 74 45 78 74 65 6e 74 45 W GetTextExtentE
1ae70 78 50 6f 69 6e 74 3b 0a 20 20 20 20 61 6c 69 61 xPoint;. alia
1ae80 73 20 47 65 74 54 65 78 74 45 78 74 65 6e 74 50 s GetTextExtentP
1ae90 6f 69 6e 74 33 32 57 20 47 65 74 54 65 78 74 45 oint32W GetTextE
1aea0 78 74 65 6e 74 50 6f 69 6e 74 33 32 3b 0a 20 20 xtentPoint32;.
1aeb0 20 20 61 6c 69 61 73 20 47 65 74 54 65 78 74 46 alias GetTextF
1aec0 61 63 65 57 20 47 65 74 54 65 78 74 46 61 63 65 aceW GetTextFace
1aed0 3b 0a 20 20 20 20 61 6c 69 61 73 20 47 65 74 54 ;. alias GetT
1aee0 65 78 74 4d 65 74 72 69 63 73 57 20 47 65 74 54 extMetricsW GetT
1aef0 65 78 74 4d 65 74 72 69 63 73 3b 0a 20 20 20 20 extMetrics;.
1af00 61 6c 69 61 73 20 50 6f 6c 79 54 65 78 74 4f 75 alias PolyTextOu
1af10 74 57 20 50 6f 6c 79 54 65 78 74 4f 75 74 3b 0a tW PolyTextOut;.
1af20 20 20 20 20 61 6c 69 61 73 20 52 65 6d 6f 76 65 alias Remove
1af30 46 6f 6e 74 52 65 73 6f 75 72 63 65 57 20 52 65 FontResourceW Re
1af40 6d 6f 76 65 46 6f 6e 74 52 65 73 6f 75 72 63 65 moveFontResource
1af50 3b 0a 0a 20 20 20 20 61 6c 69 61 73 20 52 65 73 ;.. alias Res
1af60 65 74 44 43 57 20 52 65 73 65 74 44 43 3b 0a 20 etDCW ResetDC;.
1af70 20 20 20 61 6c 69 61 73 20 53 65 74 49 43 4d 50 alias SetICMP
1af80 72 6f 66 69 6c 65 57 20 53 65 74 49 43 4d 50 72 rofileW SetICMPr
1af90 6f 66 69 6c 65 3b 0a 20 20 20 20 61 6c 69 61 73 ofile;. alias
1afa0 20 53 74 61 72 74 44 6f 63 57 20 53 74 61 72 74 StartDocW Start
1afb0 44 6f 63 3b 0a 20 20 20 20 61 6c 69 61 73 20 54 Doc;. alias T
1afc0 65 78 74 4f 75 74 57 20 20 54 65 78 74 4f 75 74 extOutW TextOut
1afd0 3b 0a 20 20 20 20 61 6c 69 61 73 20 55 70 64 61 ;. alias Upda
1afe0 74 65 49 43 4d 52 65 67 4b 65 79 57 20 55 70 64 teICMRegKeyW Upd
1aff0 61 74 65 49 43 4d 52 65 67 4b 65 79 3b 0a 20 20 ateICMRegKey;.
1b000 20 20 61 6c 69 61 73 20 77 67 6c 55 73 65 46 6f alias wglUseFo
1b010 6e 74 42 69 74 6d 61 70 73 57 20 20 77 67 6c 55 ntBitmapsW wglU
1b020 73 65 46 6f 6e 74 42 69 74 6d 61 70 73 3b 0a 20 seFontBitmaps;.
1b030 20 20 20 61 6c 69 61 73 20 77 67 6c 55 73 65 46 alias wglUseF
1b040 6f 6e 74 4f 75 74 6c 69 6e 65 73 57 20 77 67 6c ontOutlinesW wgl
1b050 55 73 65 46 6f 6e 74 4f 75 74 6c 69 6e 65 73 3b UseFontOutlines;
1b060 0a 20 20 20 20 73 74 61 74 69 63 0a 0a 20 20 20 . static..
1b070 20 69 66 20 28 5f 57 49 4e 33 32 5f 57 49 4e 4e if (_WIN32_WINN
1b080 54 20 3e 3d 20 30 78 30 35 30 30 29 0a 20 20 20 T >= 0x0500).
1b090 20 7b 0a 20 20 20 20 20 20 20 20 61 6c 69 61 73 {. alias
1b0a0 20 45 4e 55 4d 4c 4f 47 46 4f 4e 54 45 58 44 56 ENUMLOGFONTEXDV
1b0b0 57 20 20 20 45 4e 55 4d 4c 4f 47 46 4f 4e 54 45 W ENUMLOGFONTE
1b0c0 58 44 56 3b 0a 20 20 20 20 20 20 20 20 61 6c 69 XDV;. ali
1b0d0 61 73 20 50 45 4e 55 4d 4c 4f 47 46 4f 4e 54 45 as PENUMLOGFONTE
1b0e0 58 44 56 57 20 20 50 45 4e 55 4d 4c 4f 47 46 4f XDVW PENUMLOGFO
1b0f0 4e 54 45 58 44 56 3b 0a 20 20 20 20 20 20 20 20 NTEXDV;.
1b100 61 6c 69 61 73 20 4c 50 45 4e 55 4d 4c 4f 47 46 alias LPENUMLOGF
1b110 4f 4e 54 45 58 44 56 57 20 4c 50 45 4e 55 4d 4c ONTEXDVW LPENUML
1b120 4f 47 46 4f 4e 54 45 58 44 56 3b 0a 20 20 20 20 OGFONTEXDV;.
1b130 20 20 20 20 61 6c 69 61 73 20 41 64 64 46 6f 6e alias AddFon
1b140 74 52 65 73 6f 75 72 63 65 45 78 57 20 41 64 64 tResourceExW Add
1b150 46 6f 6e 74 52 65 73 6f 75 72 63 65 45 78 3b 0a FontResourceEx;.
1b160 20 20 20 20 20 20 20 20 61 6c 69 61 73 20 52 65 alias Re
1b170 6d 6f 76 65 46 6f 6e 74 52 65 73 6f 75 72 63 65 moveFontResource
1b180 45 78 57 20 52 65 6d 6f 76 65 46 6f 6e 74 52 65 ExW RemoveFontRe
1b190 73 6f 75 72 63 65 45 78 3b 0a 20 20 20 20 20 20 sourceEx;.
1b1a0 20 20 61 6c 69 61 73 20 47 65 74 47 6c 79 70 68 alias GetGlyph
1b1b0 49 6e 64 69 63 65 73 57 20 47 65 74 47 6c 79 70 IndicesW GetGlyp
1b1c0 68 49 6e 64 69 63 65 73 3b 0a 20 20 20 20 7d 0a hIndices;. }.
1b1d0 7d 0a 65 6c 73 65 20 20 20 20 20 2f 2a 20 6e 6f }.else /* no
1b1e0 6e 2d 75 6e 69 63 6f 64 65 20 62 75 69 6c 64 20 n-unicode build
1b1f0 2a 2f 0a 7b 0a 20 20 20 20 61 6c 69 61 73 20 42 */.{. alias B
1b200 59 54 45 20 42 43 48 41 52 3b 0a 20 20 20 20 61 YTE BCHAR;. a
1b210 6c 69 61 73 20 44 4f 43 49 4e 46 4f 41 20 44 4f lias DOCINFOA DO
1b220 43 49 4e 46 4f 3b 0a 20 20 20 20 61 6c 69 61 73 CINFO;. alias
1b230 20 4c 4f 47 46 4f 4e 54 41 20 4c 4f 47 46 4f 4e LOGFONTA LOGFON
1b240 54 3b 0a 20 20 20 20 61 6c 69 61 73 20 54 45 58 T;. alias TEX
1b250 54 4d 45 54 52 49 43 41 20 54 45 58 54 4d 45 54 TMETRICA TEXTMET
1b260 52 49 43 3b 0a 20 20 20 20 61 6c 69 61 73 20 4e RIC;. alias N
1b270 50 54 45 58 54 4d 45 54 52 49 43 41 20 4e 50 54 PTEXTMETRICA NPT
1b280 45 58 54 4d 45 54 52 49 43 3b 0a 20 20 20 20 61 EXTMETRIC;. a
1b290 6c 69 61 73 20 49 43 4d 45 4e 55 4d 50 52 4f 43 lias ICMENUMPROC
1b2a0 41 20 20 49 43 4d 45 4e 55 4d 50 52 4f 43 3b 0a A ICMENUMPROC;.
1b2b0 20 20 20 20 61 6c 69 61 73 20 46 4f 4e 54 45 4e alias FONTEN
1b2c0 55 4d 50 52 4f 43 41 20 46 4f 4e 54 45 4e 55 4d UMPROCA FONTENUM
1b2d0 50 52 4f 43 3b 0a 20 20 20 20 61 6c 69 61 73 20 PROC;. alias
1b2e0 44 45 56 4d 4f 44 45 41 20 44 45 56 4d 4f 44 45 DEVMODEA DEVMODE
1b2f0 3b 0a 20 20 20 20 61 6c 69 61 73 20 45 58 54 4c ;. alias EXTL
1b300 4f 47 46 4f 4e 54 41 20 20 45 58 54 4c 4f 47 46 OGFONTA EXTLOGF
1b310 4f 4e 54 3b 0a 20 20 20 20 61 6c 69 61 73 20 47 ONT;. alias G
1b320 43 50 5f 52 45 53 55 4c 54 53 41 20 47 43 50 5f CP_RESULTSA GCP_
1b330 52 45 53 55 4c 54 53 3b 0a 20 20 20 20 61 6c 69 RESULTS;. ali
1b340 61 73 20 4f 55 54 4c 49 4e 45 54 45 58 54 4d 45 as OUTLINETEXTME
1b350 54 52 49 43 41 20 4f 55 54 4c 49 4e 45 54 45 58 TRICA OUTLINETEX
1b360 54 4d 45 54 52 49 43 3b 0a 20 20 20 20 61 6c 69 TMETRIC;. ali
1b370 61 73 20 50 4f 4c 59 54 45 58 54 41 20 50 4f 4c as POLYTEXTA POL
1b380 59 54 45 58 54 3b 0a 20 20 20 20 61 6c 69 61 73 YTEXT;. alias
1b390 20 4c 4f 47 43 4f 4c 4f 52 53 50 41 43 45 41 20 LOGCOLORSPACEA
1b3a0 4c 4f 47 43 4f 4c 4f 52 53 50 41 43 45 3b 0a 20 LOGCOLORSPACE;.
1b3b0 20 20 20 61 6c 69 61 73 20 4e 45 57 54 45 58 54 alias NEWTEXT
1b3c0 4d 45 54 52 49 43 41 20 4e 45 57 54 45 58 54 4d METRICA NEWTEXTM
1b3d0 45 54 52 49 43 3b 0a 20 20 20 20 61 6c 69 61 73 ETRIC;. alias
1b3e0 20 4e 45 57 54 45 58 54 4d 45 54 52 49 43 45 58 NEWTEXTMETRICEX
1b3f0 41 20 4e 45 57 54 45 58 54 4d 45 54 52 49 43 45 A NEWTEXTMETRICE
1b400 58 3b 0a 20 20 20 20 61 6c 69 61 73 20 45 4e 55 X;. alias ENU
1b410 4d 4c 4f 47 46 4f 4e 54 41 20 45 4e 55 4d 4c 4f MLOGFONTA ENUMLO
1b420 47 46 4f 4e 54 3b 0a 20 20 20 20 61 6c 69 61 73 GFONT;. alias
1b430 20 45 4e 55 4d 4c 4f 47 46 4f 4e 54 45 58 41 20 ENUMLOGFONTEXA
1b440 20 45 4e 55 4d 4c 4f 47 46 4f 4e 54 45 58 3b 0a ENUMLOGFONTEX;.
1b450 20 20 20 20 61 6c 69 61 73 20 44 49 53 50 4c 41 alias DISPLA
1b460 59 5f 44 45 56 49 43 45 41 20 44 49 53 50 4c 41 Y_DEVICEA DISPLA
1b470 59 5f 44 45 56 49 43 45 3b 0a 0a 20 20 20 20 61 Y_DEVICE;.. a
1b480 6c 69 61 73 20 41 64 64 46 6f 6e 74 52 65 73 6f lias AddFontReso
1b490 75 72 63 65 41 20 41 64 64 46 6f 6e 74 52 65 73 urceA AddFontRes
1b4a0 6f 75 72 63 65 3b 0a 20 20 20 20 61 6c 69 61 73 ource;. alias
1b4b0 20 43 6f 70 79 45 6e 68 4d 65 74 61 46 69 6c 65 CopyEnhMetaFile
1b4c0 41 20 43 6f 70 79 45 6e 68 4d 65 74 61 46 69 6c A CopyEnhMetaFil
1b4d0 65 3b 0a 20 20 20 20 61 6c 69 61 73 20 43 6f 70 e;. alias Cop
1b4e0 79 4d 65 74 61 46 69 6c 65 41 20 43 6f 70 79 4d yMetaFileA CopyM
1b4f0 65 74 61 46 69 6c 65 3b 0a 20 20 20 20 61 6c 69 etaFile;. ali
1b500 61 73 20 43 72 65 61 74 65 43 6f 6c 6f 72 53 70 as CreateColorSp
1b510 61 63 65 41 20 43 72 65 61 74 65 43 6f 6c 6f 72 aceA CreateColor
1b520 53 70 61 63 65 3b 0a 20 20 20 20 61 6c 69 61 73 Space;. alias
1b530 20 43 72 65 61 74 65 44 43 41 20 43 72 65 61 74 CreateDCA Creat
1b540 65 44 43 3b 0a 20 20 20 20 61 6c 69 61 73 20 43 eDC;. alias C
1b550 72 65 61 74 65 45 6e 68 4d 65 74 61 46 69 6c 65 reateEnhMetaFile
1b560 41 20 43 72 65 61 74 65 45 6e 68 4d 65 74 61 46 A CreateEnhMetaF
1b570 69 6c 65 3b 0a 20 20 20 20 61 6c 69 61 73 20 43 ile;. alias C
1b580 72 65 61 74 65 46 6f 6e 74 41 20 43 72 65 61 74 reateFontA Creat
1b590 65 46 6f 6e 74 3b 0a 20 20 20 20 61 6c 69 61 73 eFont;. alias
1b5a0 20 43 72 65 61 74 65 46 6f 6e 74 49 6e 64 69 72 CreateFontIndir
1b5b0 65 63 74 41 20 43 72 65 61 74 65 46 6f 6e 74 49 ectA CreateFontI
1b5c0 6e 64 69 72 65 63 74 3b 0a 20 20 20 20 61 6c 69 ndirect;. ali
1b5d0 61 73 20 43 72 65 61 74 65 49 43 41 20 43 72 65 as CreateICA Cre
1b5e0 61 74 65 49 43 3b 0a 20 20 20 20 61 6c 69 61 73 ateIC;. alias
1b5f0 20 43 72 65 61 74 65 4d 65 74 61 46 69 6c 65 41 CreateMetaFileA
1b600 20 43 72 65 61 74 65 4d 65 74 61 46 69 6c 65 3b CreateMetaFile;
1b610 0a 20 20 20 20 61 6c 69 61 73 20 43 72 65 61 74 . alias Creat
1b620 65 53 63 61 6c 61 62 6c 65 46 6f 6e 74 52 65 73 eScalableFontRes
1b630 6f 75 72 63 65 41 20 43 72 65 61 74 65 53 63 61 ourceA CreateSca
1b640 6c 61 62 6c 65 46 6f 6e 74 52 65 73 6f 75 72 63 lableFontResourc
1b650 65 3b 0a 20 20 20 20 61 6c 69 61 73 20 44 65 76 e;. alias Dev
1b660 69 63 65 43 61 70 61 62 69 6c 69 74 69 65 73 41 iceCapabilitiesA
1b670 20 44 65 76 69 63 65 43 61 70 61 62 69 6c 69 74 DeviceCapabilit
1b680 69 65 73 3b 0a 20 20 20 20 61 6c 69 61 73 20 45 ies;. alias E
1b690 6e 75 6d 46 6f 6e 74 46 61 6d 69 6c 69 65 73 41 numFontFamiliesA
1b6a0 20 45 6e 75 6d 46 6f 6e 74 46 61 6d 69 6c 69 65 EnumFontFamilie
1b6b0 73 3b 0a 20 20 20 20 61 6c 69 61 73 20 45 6e 75 s;. alias Enu
1b6c0 6d 46 6f 6e 74 46 61 6d 69 6c 69 65 73 45 78 41 mFontFamiliesExA
1b6d0 20 45 6e 75 6d 46 6f 6e 74 46 61 6d 69 6c 69 65 EnumFontFamilie
1b6e0 73 45 78 3b 0a 20 20 20 20 61 6c 69 61 73 20 45 sEx;. alias E
1b6f0 6e 75 6d 46 6f 6e 74 73 41 20 45 6e 75 6d 46 6f numFontsA EnumFo
1b700 6e 74 73 3b 0a 20 20 20 20 61 6c 69 61 73 20 45 nts;. alias E
1b710 6e 75 6d 49 43 4d 50 72 6f 66 69 6c 65 73 41 20 numICMProfilesA
1b720 45 6e 75 6d 49 43 4d 50 72 6f 66 69 6c 65 73 3b EnumICMProfiles;
1b730 0a 20 20 20 20 61 6c 69 61 73 20 45 78 74 54 65 . alias ExtTe
1b740 78 74 4f 75 74 41 20 45 78 74 54 65 78 74 4f 75 xtOutA ExtTextOu
1b750 74 3b 0a 20 20 20 20 61 6c 69 61 73 20 47 65 74 t;. alias Get
1b760 43 68 61 72 57 69 64 74 68 46 6c 6f 61 74 41 20 CharWidthFloatA
1b770 47 65 74 43 68 61 72 57 69 64 74 68 46 6c 6f 61 GetCharWidthFloa
1b780 74 3b 0a 20 20 20 20 61 6c 69 61 73 20 47 65 74 t;. alias Get
1b790 43 68 61 72 57 69 64 74 68 41 20 47 65 74 43 68 CharWidthA GetCh
1b7a0 61 72 57 69 64 74 68 3b 0a 20 20 20 20 61 6c 69 arWidth;. ali
1b7b0 61 73 20 47 65 74 43 68 61 72 61 63 74 65 72 50 as GetCharacterP
1b7c0 6c 61 63 65 6d 65 6e 74 41 20 47 65 74 43 68 61 lacementA GetCha
1b7d0 72 61 63 74 65 72 50 6c 61 63 65 6d 65 6e 74 3b racterPlacement;
1b7e0 0a 20 20 20 20 61 6c 69 61 73 20 47 65 74 43 68 . alias GetCh
1b7f0 61 72 41 42 43 57 69 64 74 68 73 41 20 47 65 74 arABCWidthsA Get
1b800 43 68 61 72 41 42 43 57 69 64 74 68 73 3b 0a 20 CharABCWidths;.
1b810 20 20 20 61 6c 69 61 73 20 47 65 74 43 68 61 72 alias GetChar
1b820 41 42 43 57 69 64 74 68 73 46 6c 6f 61 74 41 20 ABCWidthsFloatA
1b830 47 65 74 43 68 61 72 41 42 43 57 69 64 74 68 73 GetCharABCWidths
1b840 46 6c 6f 61 74 3b 0a 20 20 20 20 61 6c 69 61 73 Float;. alias
1b850 20 47 65 74 43 68 61 72 57 69 64 74 68 33 32 41 GetCharWidth32A
1b860 20 47 65 74 43 68 61 72 57 69 64 74 68 33 32 3b GetCharWidth32;
1b870 0a 20 20 20 20 61 6c 69 61 73 20 47 65 74 45 6e . alias GetEn
1b880 68 4d 65 74 61 46 69 6c 65 41 20 47 65 74 45 6e hMetaFileA GetEn
1b890 68 4d 65 74 61 46 69 6c 65 3b 0a 20 20 20 20 61 hMetaFile;. a
1b8a0 6c 69 61 73 20 47 65 74 45 6e 68 4d 65 74 61 46 lias GetEnhMetaF
1b8b0 69 6c 65 44 65 73 63 72 69 70 74 69 6f 6e 41 20 ileDescriptionA
1b8c0 47 65 74 45 6e 68 4d 65 74 61 46 69 6c 65 44 65 GetEnhMetaFileDe
1b8d0 73 63 72 69 70 74 69 6f 6e 3b 0a 20 20 20 20 61 scription;. a
1b8e0 6c 69 61 73 20 47 65 74 47 6c 79 70 68 4f 75 74 lias GetGlyphOut
1b8f0 6c 69 6e 65 41 20 47 65 74 47 6c 79 70 68 4f 75 lineA GetGlyphOu
1b900 74 6c 69 6e 65 3b 0a 20 20 20 20 61 6c 69 61 73 tline;. alias
1b910 20 47 65 74 49 43 4d 50 72 6f 66 69 6c 65 41 20 GetICMProfileA
1b920 47 65 74 49 43 4d 50 72 6f 66 69 6c 65 3b 0a 20 GetICMProfile;.
1b930 20 20 20 61 6c 69 61 73 20 47 65 74 4b 65 72 6e alias GetKern
1b940 69 6e 67 50 61 69 72 73 41 20 20 47 65 74 4b 65 ingPairsA GetKe
1b950 72 6e 69 6e 67 50 61 69 72 73 3b 0a 20 20 20 20 rningPairs;.
1b960 61 6c 69 61 73 20 47 65 74 4c 6f 67 43 6f 6c 6f alias GetLogColo
1b970 72 53 70 61 63 65 41 20 47 65 74 4c 6f 67 43 6f rSpaceA GetLogCo
1b980 6c 6f 72 53 70 61 63 65 3b 0a 20 20 20 20 61 6c lorSpace;. al
1b990 69 61 73 20 47 65 74 4d 65 74 61 46 69 6c 65 41 ias GetMetaFileA
1b9a0 20 47 65 74 4d 65 74 61 46 69 6c 65 3b 0a 20 20 GetMetaFile;.
1b9b0 20 20 61 6c 69 61 73 20 47 65 74 4f 62 6a 65 63 alias GetObjec
1b9c0 74 41 20 47 65 74 4f 62 6a 65 63 74 3b 0a 20 20 tA GetObject;.
1b9d0 20 20 61 6c 69 61 73 20 47 65 74 4f 75 74 6c 69 alias GetOutli
1b9e0 6e 65 54 65 78 74 4d 65 74 72 69 63 73 41 20 47 neTextMetricsA G
1b9f0 65 74 4f 75 74 6c 69 6e 65 54 65 78 74 4d 65 74 etOutlineTextMet
1ba00 72 69 63 73 3b 0a 20 20 20 20 61 6c 69 61 73 20 rics;. alias
1ba10 47 65 74 54 65 78 74 45 78 74 65 6e 74 50 6f 69 GetTextExtentPoi
1ba20 6e 74 41 20 47 65 74 54 65 78 74 45 78 74 65 6e ntA GetTextExten
1ba30 74 50 6f 69 6e 74 3b 0a 20 20 20 20 61 6c 69 61 tPoint;. alia
1ba40 73 20 47 65 74 54 65 78 74 45 78 74 65 6e 74 45 s GetTextExtentE
1ba50 78 50 6f 69 6e 74 41 20 47 65 74 54 65 78 74 45 xPointA GetTextE
1ba60 78 74 65 6e 74 45 78 50 6f 69 6e 74 3b 0a 20 20 xtentExPoint;.
1ba70 20 20 61 6c 69 61 73 20 47 65 74 54 65 78 74 45 alias GetTextE
1ba80 78 74 65 6e 74 50 6f 69 6e 74 33 32 41 20 47 65 xtentPoint32A Ge
1ba90 74 54 65 78 74 45 78 74 65 6e 74 50 6f 69 6e 74 tTextExtentPoint
1baa0 33 32 3b 0a 20 20 20 20 61 6c 69 61 73 20 47 65 32;. alias Ge
1bab0 74 54 65 78 74 46 61 63 65 41 20 47 65 74 54 65 tTextFaceA GetTe
1bac0 78 74 46 61 63 65 3b 0a 20 20 20 20 61 6c 69 61 xtFace;. alia
1bad0 73 20 47 65 74 54 65 78 74 4d 65 74 72 69 63 73 s GetTextMetrics
1bae0 41 20 47 65 74 54 65 78 74 4d 65 74 72 69 63 73 A GetTextMetrics
1baf0 3b 0a 20 20 20 20 61 6c 69 61 73 20 50 6f 6c 79 ;. alias Poly
1bb00 54 65 78 74 4f 75 74 41 20 50 6f 6c 79 54 65 78 TextOutA PolyTex
1bb10 74 4f 75 74 3b 0a 20 20 20 20 61 6c 69 61 73 20 tOut;. alias
1bb20 52 65 6d 6f 76 65 46 6f 6e 74 52 65 73 6f 75 72 RemoveFontResour
1bb30 63 65 41 20 52 65 6d 6f 76 65 46 6f 6e 74 52 65 ceA RemoveFontRe
1bb40 73 6f 75 72 63 65 3b 0a 20 20 20 20 61 6c 69 61 source;. alia
1bb50 73 20 52 65 73 65 74 44 43 41 20 52 65 73 65 74 s ResetDCA Reset
1bb60 44 43 3b 0a 20 20 20 20 61 6c 69 61 73 20 53 65 DC;. alias Se
1bb70 74 49 43 4d 50 72 6f 66 69 6c 65 41 20 53 65 74 tICMProfileA Set
1bb80 49 43 4d 50 72 6f 66 69 6c 65 3b 0a 20 20 20 20 ICMProfile;.
1bb90 61 6c 69 61 73 20 53 74 61 72 74 44 6f 63 41 20 alias StartDocA
1bba0 53 74 61 72 74 44 6f 63 3b 0a 20 20 20 20 61 6c StartDoc;. al
1bbb0 69 61 73 20 54 65 78 74 4f 75 74 41 20 20 54 65 ias TextOutA Te
1bbc0 78 74 4f 75 74 3b 0a 20 20 20 20 61 6c 69 61 73 xtOut;. alias
1bbd0 20 55 70 64 61 74 65 49 43 4d 52 65 67 4b 65 79 UpdateICMRegKey
1bbe0 41 20 55 70 64 61 74 65 49 43 4d 52 65 67 4b 65 A UpdateICMRegKe
1bbf0 79 3b 0a 20 20 20 20 61 6c 69 61 73 20 77 67 6c y;. alias wgl
1bc00 55 73 65 46 6f 6e 74 42 69 74 6d 61 70 73 41 20 UseFontBitmapsA
1bc10 20 77 67 6c 55 73 65 46 6f 6e 74 42 69 74 6d 61 wglUseFontBitma
1bc20 70 73 3b 0a 20 20 20 20 61 6c 69 61 73 20 77 67 ps;. alias wg
1bc30 6c 55 73 65 46 6f 6e 74 4f 75 74 6c 69 6e 65 73 lUseFontOutlines
1bc40 41 20 77 67 6c 55 73 65 46 6f 6e 74 4f 75 74 6c A wglUseFontOutl
1bc50 69 6e 65 73 3b 0a 20 20 20 20 73 74 61 74 69 63 ines;. static
1bc60 0a 0a 20 20 20 20 69 66 20 28 5f 57 49 4e 33 32 .. if (_WIN32
1bc70 5f 57 49 4e 4e 54 20 3e 3d 20 30 78 30 35 30 30 _WINNT >= 0x0500
1bc80 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 ). {.
1bc90 61 6c 69 61 73 20 45 4e 55 4d 4c 4f 47 46 4f 4e alias ENUMLOGFON
1bca0 54 45 58 44 56 41 20 20 20 45 4e 55 4d 4c 4f 47 TEXDVA ENUMLOG
1bcb0 46 4f 4e 54 45 58 44 56 3b 0a 20 20 20 20 20 20 FONTEXDV;.
1bcc0 20 20 61 6c 69 61 73 20 50 45 4e 55 4d 4c 4f 47 alias PENUMLOG
1bcd0 46 4f 4e 54 45 58 44 56 41 20 20 50 45 4e 55 4d FONTEXDVA PENUM
1bce0 4c 4f 47 46 4f 4e 54 45 58 44 56 3b 0a 20 20 20 LOGFONTEXDV;.
1bcf0 20 20 20 20 20 61 6c 69 61 73 20 4c 50 45 4e 55 alias LPENU
1bd00 4d 4c 4f 47 46 4f 4e 54 45 58 44 56 41 20 4c 50 MLOGFONTEXDVA LP
1bd10 45 4e 55 4d 4c 4f 47 46 4f 4e 54 45 58 44 56 3b ENUMLOGFONTEXDV;
1bd20 0a 20 20 20 20 20 20 20 20 61 6c 69 61 73 20 41 . alias A
1bd30 64 64 46 6f 6e 74 52 65 73 6f 75 72 63 65 45 78 ddFontResourceEx
1bd40 41 20 41 64 64 46 6f 6e 74 52 65 73 6f 75 72 63 A AddFontResourc
1bd50 65 45 78 3b 0a 20 20 20 20 20 20 20 20 61 6c 69 eEx;. ali
1bd60 61 73 20 52 65 6d 6f 76 65 46 6f 6e 74 52 65 73 as RemoveFontRes
1bd70 6f 75 72 63 65 45 78 41 20 52 65 6d 6f 76 65 46 ourceExA RemoveF
1bd80 6f 6e 74 52 65 73 6f 75 72 63 65 45 78 3b 0a 20 ontResourceEx;.
1bd90 20 20 20 20 20 20 20 61 6c 69 61 73 20 47 65 74 alias Get
1bda0 47 6c 79 70 68 49 6e 64 69 63 65 73 41 20 47 65 GlyphIndicesA Ge
1bdb0 74 47 6c 79 70 68 49 6e 64 69 63 65 73 3b 0a 20 tGlyphIndices;.
1bdc0 20 20 20 7d 0a 7d 0a 0a 2f 2f 20 43 6f 6d 6d 6f }.}..// Commo
1bdd0 6e 20 74 6f 20 62 6f 74 68 20 41 53 43 49 49 20 n to both ASCII
1bde0 26 20 55 4e 49 43 4f 44 45 0a 61 6c 69 61 73 20 & UNICODE.alias
1bdf0 44 4f 43 49 4e 46 4f 2a 4c 50 44 4f 43 49 4e 46 DOCINFO*LPDOCINF
1be00 4f 3b 0a 61 6c 69 61 73 20 4c 4f 47 46 4f 4e 54 O;.alias LOGFONT
1be10 2a 50 4c 4f 47 46 4f 4e 54 2c 20 4e 50 4c 4f 47 *PLOGFONT, NPLOG
1be20 46 4f 4e 54 2c 20 4c 50 4c 4f 47 46 4f 4e 54 3b FONT, LPLOGFONT;
1be30 0a 61 6c 69 61 73 20 54 45 58 54 4d 45 54 52 49 .alias TEXTMETRI
1be40 43 2a 50 54 45 58 54 4d 45 54 52 49 43 2c 20 4c C*PTEXTMETRIC, L
1be50 50 54 45 58 54 4d 45 54 52 49 43 3b 0a 61 6c 69 PTEXTMETRIC;.ali
1be60 61 73 20 44 45 56 4d 4f 44 45 2a 50 44 45 56 4d as DEVMODE*PDEVM
1be70 4f 44 45 2c 20 4e 50 44 45 56 4d 4f 44 45 2c 20 ODE, NPDEVMODE,
1be80 4c 50 44 45 56 4d 4f 44 45 3b 0a 61 6c 69 61 73 LPDEVMODE;.alias
1be90 20 45 58 54 4c 4f 47 46 4f 4e 54 20 2a 50 45 58 EXTLOGFONT *PEX
1bea0 54 4c 4f 47 46 4f 4e 54 2c 20 4e 50 45 58 54 4c TLOGFONT, NPEXTL
1beb0 4f 47 46 4f 4e 54 2c 20 4c 50 45 58 54 4c 4f 47 OGFONT, LPEXTLOG
1bec0 46 4f 4e 54 3b 0a 61 6c 69 61 73 20 47 43 50 5f FONT;.alias GCP_
1bed0 52 45 53 55 4c 54 53 2a 4c 50 47 43 50 5f 52 45 RESULTS*LPGCP_RE
1bee0 53 55 4c 54 53 3b 0a 61 6c 69 61 73 20 4f 55 54 SULTS;.alias OUT
1bef0 4c 49 4e 45 54 45 58 54 4d 45 54 52 49 43 2a 50 LINETEXTMETRIC*P
1bf00 4f 55 54 4c 49 4e 45 54 45 58 54 4d 45 54 52 49 OUTLINETEXTMETRI
1bf10 43 2c 20 4e 50 4f 55 54 4c 49 4e 45 54 45 58 54 C, NPOUTLINETEXT
1bf20 4d 45 54 52 49 43 2c 20 4c 50 4f 55 54 4c 49 4e METRIC, LPOUTLIN
1bf30 45 54 45 58 54 4d 45 54 52 49 43 3b 0a 61 6c 69 ETEXTMETRIC;.ali
1bf40 61 73 20 50 4f 4c 59 54 45 58 54 2a 50 50 4f 4c as POLYTEXT*PPOL
1bf50 59 54 45 58 54 2c 20 4e 50 50 4f 4c 59 54 45 58 YTEXT, NPPOLYTEX
1bf60 54 2c 20 4c 50 50 4f 4c 59 54 45 58 54 3b 0a 61 T, LPPOLYTEXT;.a
1bf70 6c 69 61 73 20 4c 4f 47 43 4f 4c 4f 52 53 50 41 lias LOGCOLORSPA
1bf80 43 45 2a 4c 50 4c 4f 47 43 4f 4c 4f 52 53 50 41 CE*LPLOGCOLORSPA
1bf90 43 45 3b 0a 61 6c 69 61 73 20 4e 45 57 54 45 58 CE;.alias NEWTEX
1bfa0 54 4d 45 54 52 49 43 2a 50 4e 45 57 54 45 58 54 TMETRIC*PNEWTEXT
1bfb0 4d 45 54 52 49 43 2c 20 4e 50 4e 45 57 54 45 58 METRIC, NPNEWTEX
1bfc0 54 4d 45 54 52 49 43 2c 20 4c 50 4e 45 57 54 45 TMETRIC, LPNEWTE
1bfd0 58 54 4d 45 54 52 49 43 3b 0a 61 6c 69 61 73 20 XTMETRIC;.alias
1bfe0 45 4e 55 4d 4c 4f 47 46 4f 4e 54 2a 4c 50 45 4e ENUMLOGFONT*LPEN
1bff0 55 4d 4c 4f 47 46 4f 4e 54 3b 0a 61 6c 69 61 73 UMLOGFONT;.alias
1c000 20 45 4e 55 4d 4c 4f 47 46 4f 4e 54 45 58 20 2a ENUMLOGFONTEX *
1c010 4c 50 45 4e 55 4d 4c 4f 47 46 4f 4e 54 45 58 3b LPENUMLOGFONTEX;
1c020 0a 61 6c 69 61 73 20 44 49 53 50 4c 41 59 5f 44 .alias DISPLAY_D
1c030 45 56 49 43 45 2a 50 44 49 53 50 4c 41 59 5f 44 EVICE*PDISPLAY_D
1c040 45 56 49 43 45 2c 20 4c 50 44 49 53 50 4c 41 59 EVICE, LPDISPLAY
1c050 5f 44 45 56 49 43 45 3b 0a _DEVICE;.