Merge branch 'master' of http://repo.or.cz/r/msysgit into devel
[msysgit/historical-msysgit.git] / mingw / include / wingdi.h
blob6bb2fd620e75c82dfb4dc044deca3503a7ef9f68
1 #ifndef _WINGDI_H
2 #define _WINGDI_H
3 #define _WINGDI_
4 #if __GNUC__ >= 3
5 #pragma GCC system_header
6 #endif
8 #ifdef __cplusplus
9 extern "C" {
10 #endif
12 #ifndef WINGDIAPI
13 #ifdef __W32API_USE_DLLIMPORT__
14 #define WINGDIAPI DECLSPEC_IMPORT
15 #else
16 #define WINGDIAPI
17 #endif
18 #endif
20 #define BI_RGB 0
21 #define BI_RLE8 1
22 #define BI_RLE4 2
23 #define BI_BITFIELDS 3
24 #define BI_JPEG 4
25 #define BI_PNG 5
26 #define LF_FACESIZE 32
27 #define LF_FULLFACESIZE 64
28 #define CA_NEGATIVE 1
29 #define CA_LOG_FILTER 2
30 #define ILLUMINANT_DEVICE_DEFAULT 0
31 #define ILLUMINANT_A 1
32 #define ILLUMINANT_B 2
33 #define ILLUMINANT_C 3
34 #define ILLUMINANT_D50 4
35 #define ILLUMINANT_D55 5
36 #define ILLUMINANT_D65 6
37 #define ILLUMINANT_D75 7
38 #define ILLUMINANT_F2 8
39 #define ILLUMINANT_MAX_INDEX ILLUMINANT_F2
40 #define ILLUMINANT_TUNGSTEN ILLUMINANT_A
41 #define ILLUMINANT_DAYLIGHT ILLUMINANT_C
42 #define ILLUMINANT_FLUORESCENT ILLUMINANT_F2
43 #define ILLUMINANT_NTSC ILLUMINANT_C
44 #define RGB_GAMMA_MIN 2500
45 #define RGB_GAMMA_MAX 65000
46 #define REFERENCE_WHITE_MIN 6000
47 #define REFERENCE_WHITE_MAX 10000
48 #define REFERENCE_BLACK_MIN 0
49 #define REFERENCE_BLACK_MAX 4000
50 #define COLOR_ADJ_MIN (-100)
51 #define COLOR_ADJ_MAX 100
52 #define CCHDEVICENAME 32
53 #define CCHFORMNAME 32
54 #define DI_COMPAT 4
55 #define DI_DEFAULTSIZE 8
56 #define DI_IMAGE 2
57 #define DI_MASK 1
58 #define DI_NORMAL 3
59 #define DI_APPBANDING 1
60 #define EMR_HEADER 1
61 #define EMR_POLYBEZIER 2
62 #define EMR_POLYGON 3
63 #define EMR_POLYLINE 4
64 #define EMR_POLYBEZIERTO 5
65 #define EMR_POLYLINETO 6
66 #define EMR_POLYPOLYLINE 7
67 #define EMR_POLYPOLYGON 8
68 #define EMR_SETWINDOWEXTEX 9
69 #define EMR_SETWINDOWORGEX 10
70 #define EMR_SETVIEWPORTEXTEX 11
71 #define EMR_SETVIEWPORTORGEX 12
72 #define EMR_SETBRUSHORGEX 13
73 #define EMR_EOF 14
74 #define EMR_SETPIXELV 15
75 #define EMR_SETMAPPERFLAGS 16
76 #define EMR_SETMAPMODE 17
77 #define EMR_SETBKMODE 18
78 #define EMR_SETPOLYFILLMODE 19
79 #define EMR_SETROP2 20
80 #define EMR_SETSTRETCHBLTMODE 21
81 #define EMR_SETTEXTALIGN 22
82 #define EMR_SETCOLORADJUSTMENT 23
83 #define EMR_SETTEXTCOLOR 24
84 #define EMR_SETBKCOLOR 25
85 #define EMR_OFFSETCLIPRGN 26
86 #define EMR_MOVETOEX 27
87 #define EMR_SETMETARGN 28
88 #define EMR_EXCLUDECLIPRECT 29
89 #define EMR_INTERSECTCLIPRECT 30
90 #define EMR_SCALEVIEWPORTEXTEX 31
91 #define EMR_SCALEWINDOWEXTEX 32
92 #define EMR_SAVEDC 33
93 #define EMR_RESTOREDC 34
94 #define EMR_SETWORLDTRANSFORM 35
95 #define EMR_MODIFYWORLDTRANSFORM 36
96 #define EMR_SELECTOBJECT 37
97 #define EMR_CREATEPEN 38
98 #define EMR_CREATEBRUSHINDIRECT 39
99 #define EMR_DELETEOBJECT 40
100 #define EMR_ANGLEARC 41
101 #define EMR_ELLIPSE 42
102 #define EMR_RECTANGLE 43
103 #define EMR_ROUNDRECT 44
104 #define EMR_ARC 45
105 #define EMR_CHORD 46
106 #define EMR_PIE 47
107 #define EMR_SELECTPALETTE 48
108 #define EMR_CREATEPALETTE 49
109 #define EMR_SETPALETTEENTRIES 50
110 #define EMR_RESIZEPALETTE 51
111 #define EMR_REALIZEPALETTE 52
112 #define EMR_EXTFLOODFILL 53
113 #define EMR_LINETO 54
114 #define EMR_ARCTO 55
115 #define EMR_POLYDRAW 56
116 #define EMR_SETARCDIRECTION 57
117 #define EMR_SETMITERLIMIT 58
118 #define EMR_BEGINPATH 59
119 #define EMR_ENDPATH 60
120 #define EMR_CLOSEFIGURE 61
121 #define EMR_FILLPATH 62
122 #define EMR_STROKEANDFILLPATH 63
123 #define EMR_STROKEPATH 64
124 #define EMR_FLATTENPATH 65
125 #define EMR_WIDENPATH 66
126 #define EMR_SELECTCLIPPATH 67
127 #define EMR_ABORTPATH 68
128 #define EMR_GDICOMMENT 70
129 #define EMR_FILLRGN 71
130 #define EMR_FRAMERGN 72
131 #define EMR_INVERTRGN 73
132 #define EMR_PAINTRGN 74
133 #define EMR_EXTSELECTCLIPRGN 75
134 #define EMR_BITBLT 76
135 #define EMR_STRETCHBLT 77
136 #define EMR_MASKBLT 78
137 #define EMR_PLGBLT 79
138 #define EMR_SETDIBITSTODEVICE 80
139 #define EMR_STRETCHDIBITS 81
140 #define EMR_EXTCREATEFONTINDIRECTW 82
141 #define EMR_EXTTEXTOUTA 83
142 #define EMR_EXTTEXTOUTW 84
143 #define EMR_POLYBEZIER16 85
144 #define EMR_POLYGON16 86
145 #define EMR_POLYLINE16 87
146 #define EMR_POLYBEZIERTO16 88
147 #define EMR_POLYLINETO16 89
148 #define EMR_POLYPOLYLINE16 90
149 #define EMR_POLYPOLYGON16 91
150 #define EMR_POLYDRAW16 92
151 #define EMR_CREATEMONOBRUSH 93
152 #define EMR_CREATEDIBPATTERNBRUSHPT 94
153 #define EMR_EXTCREATEPEN 95
154 #define EMR_POLYTEXTOUTA 96
155 #define EMR_POLYTEXTOUTW 97
156 #define EMR_SETICMMODE 98
157 #define EMR_CREATECOLORSPACE 99
158 #define EMR_SETCOLORSPACE 100
159 #define EMR_DELETECOLORSPACE 101
160 #define EMR_GLSRECORD 102
161 #define EMR_GLSBOUNDEDRECORD 103
162 #define EMR_PIXELFORMAT 104
163 #define ENHMETA_SIGNATURE 1179469088
164 #define EPS_SIGNATURE 0x46535045
165 #if (_WIN32_WINNT >= 0x0500)
166 #define FR_PRIVATE 0x10
167 #define FR_NOT_ENUM 0x20
168 #endif
169 #define META_SETBKCOLOR 0x201
170 #define META_SETBKMODE 0x102
171 #define META_SETMAPMODE 0x103
172 #define META_SETROP2 0x104
173 #define META_SETRELABS 0x105
174 #define META_SETPOLYFILLMODE 0x106
175 #define META_SETSTRETCHBLTMODE 0x107
176 #define META_SETTEXTCHAREXTRA 0x108
177 #define META_SETTEXTCOLOR 0x209
178 #define META_SETTEXTJUSTIFICATION 0x20A
179 #define META_SETWINDOWORG 0x20B
180 #define META_SETWINDOWEXT 0x20C
181 #define META_SETVIEWPORTORG 0x20D
182 #define META_SETVIEWPORTEXT 0x20E
183 #define META_OFFSETWINDOWORG 0x20F
184 #define META_SCALEWINDOWEXT 0x410
185 #define META_OFFSETVIEWPORTORG 0x211
186 #define META_SCALEVIEWPORTEXT 0x412
187 #define META_LINETO 0x213
188 #define META_MOVETO 0x214
189 #define META_EXCLUDECLIPRECT 0x415
190 #define META_INTERSECTCLIPRECT 0x416
191 #define META_ARC 0x817
192 #define META_ELLIPSE 0x418
193 #define META_FLOODFILL 0x419
194 #define META_PIE 0x81A
195 #define META_RECTANGLE 0x41B
196 #define META_ROUNDRECT 0x61C
197 #define META_PATBLT 0x61D
198 #define META_SAVEDC 0x1E
199 #define META_SETPIXEL 0x41F
200 #define META_OFFSETCLIPRGN 0x220
201 #define META_TEXTOUT 0x521
202 #define META_BITBLT 0x922
203 #define META_STRETCHBLT 0xB23
204 #define META_POLYGON 0x324
205 #define META_POLYLINE 0x325
206 #define META_ESCAPE 0x626
207 #define META_RESTOREDC 0x127
208 #define META_FILLREGION 0x228
209 #define META_FRAMEREGION 0x429
210 #define META_INVERTREGION 0x12A
211 #define META_PAINTREGION 0x12B
212 #define META_SELECTCLIPREGION 0x12C
213 #define META_SELECTOBJECT 0x12D
214 #define META_SETTEXTALIGN 0x12E
215 #define META_CHORD 0x830
216 #define META_SETMAPPERFLAGS 0x231
217 #define META_EXTTEXTOUT 0xa32
218 #define META_SETDIBTODEV 0xd33
219 #define META_SELECTPALETTE 0x234
220 #define META_REALIZEPALETTE 0x35
221 #define META_ANIMATEPALETTE 0x436
222 #define META_SETPALENTRIES 0x37
223 #define META_POLYPOLYGON 0x538
224 #define META_RESIZEPALETTE 0x139
225 #define META_DIBBITBLT 0x940
226 #define META_DIBSTRETCHBLT 0xb41
227 #define META_DIBCREATEPATTERNBRUSH 0x142
228 #define META_STRETCHDIB 0xf43
229 #define META_EXTFLOODFILL 0x548
230 #define META_DELETEOBJECT 0x1f0
231 #define META_CREATEPALETTE 0xf7
232 #define META_CREATEPATTERNBRUSH 0x1F9
233 #define META_CREATEPENINDIRECT 0x2FA
234 #define META_CREATEFONTINDIRECT 0x2FB
235 #define META_CREATEBRUSHINDIRECT 0x2FC
236 #define META_CREATEREGION 0x6FF
237 #define PT_MOVETO 6
238 #define PT_LINETO 2
239 #define PT_BEZIERTO 4
240 #define PT_CLOSEFIGURE 1
241 #define ELF_VENDOR_SIZE 4
242 #define ELF_VERSION 0
243 #define ELF_CULTURE_LATIN 0
244 #define PFD_TYPE_RGBA 0
245 #define PFD_TYPE_COLORINDEX 1
246 #define PFD_MAIN_PLANE 0
247 #define PFD_OVERLAY_PLANE 1
248 #define PFD_UNDERLAY_PLANE (-1)
249 #define PFD_DOUBLEBUFFER 1
250 #define PFD_STEREO 2
251 #define PFD_DRAW_TO_WINDOW 4
252 #define PFD_DRAW_TO_BITMAP 8
253 #define PFD_SUPPORT_GDI 16
254 #define PFD_SUPPORT_OPENGL 32
255 #define PFD_GENERIC_FORMAT 64
256 #define PFD_NEED_PALETTE 128
257 #define PFD_NEED_SYSTEM_PALETTE 0x00000100
258 #define PFD_SWAP_EXCHANGE 0x00000200
259 #define PFD_SWAP_COPY 0x00000400
260 #define PFD_SWAP_LAYER_BUFFERS 0x00000800
261 #define PFD_GENERIC_ACCELERATED 0x00001000
262 #define PFD_DEPTH_DONTCARE 0x20000000
263 #define PFD_DOUBLEBUFFER_DONTCARE 0x40000000
264 #define PFD_STEREO_DONTCARE 0x80000000
265 #define SP_ERROR (-1)
266 #define SP_OUTOFDISK (-4)
267 #define SP_OUTOFMEMORY (-5)
268 #define SP_USERABORT (-3)
269 #define SP_APPABORT (-2)
270 #define BLACKNESS 0x00000042
271 #define NOTSRCERASE 0x001100A6
272 #define NOTSRCCOPY 0x00330008
273 #define SRCERASE 0x00440328
274 #define DSTINVERT 0x00550009
275 #define PATINVERT 0x005A0049
276 #define SRCINVERT 0x00660046
277 #define SRCAND 0x008800C6
278 #define MERGEPAINT 0x00BB0226
279 #define MERGECOPY 0x00C000CA
280 #define SRCCOPY 0x00CC0020
281 #define SRCPAINT 0x00EE0086
282 #define PATCOPY 0x00F00021
283 #define PATPAINT 0x00FB0A09
284 #define WHITENESS 0x00FF0062
285 #define CAPTUREBLT 0x40000000
286 #define NOMIRRORBITMAP 0x80000000
287 #define R2_BLACK 1
288 #define R2_COPYPEN 13
289 #define R2_MASKNOTPEN 3
290 #define R2_MASKPEN 9
291 #define R2_MASKPENNOT 5
292 #define R2_MERGENOTPEN 12
293 #define R2_MERGEPEN 15
294 #define R2_MERGEPENNOT 14
295 #define R2_NOP 11
296 #define R2_NOT 6
297 #define R2_NOTCOPYPEN 4
298 #define R2_NOTMASKPEN 8
299 #define R2_NOTMERGEPEN 2
300 #define R2_NOTXORPEN 10
301 #define R2_WHITE 16
302 #define R2_XORPEN 7
303 #define CM_OUT_OF_GAMUT 255
304 #define CM_IN_GAMUT 0
305 #define RGN_AND 1
306 #define RGN_COPY 5
307 #define RGN_DIFF 4
308 #define RGN_OR 2
309 #define RGN_XOR 3
310 #define NULLREGION 1
311 #define SIMPLEREGION 2
312 #define COMPLEXREGION 3
313 #define ERROR 0
314 #define CBM_INIT 4
315 #define DIB_PAL_COLORS 1
316 #define DIB_RGB_COLORS 0
317 #define FW_DONTCARE 0
318 #define FW_THIN 100
319 #define FW_EXTRALIGHT 200
320 #define FW_ULTRALIGHT FW_EXTRALIGHT
321 #define FW_LIGHT 300
322 #define FW_NORMAL 400
323 #define FW_REGULAR 400
324 #define FW_MEDIUM 500
325 #define FW_SEMIBOLD 600
326 #define FW_DEMIBOLD FW_SEMIBOLD
327 #define FW_BOLD 700
328 #define FW_EXTRABOLD 800
329 #define FW_ULTRABOLD FW_EXTRABOLD
330 #define FW_HEAVY 900
331 #define FW_BLACK FW_HEAVY
332 #define ANSI_CHARSET 0
333 #define DEFAULT_CHARSET 1
334 #define SYMBOL_CHARSET 2
335 #define SHIFTJIS_CHARSET 128
336 #define HANGEUL_CHARSET 129
337 #define HANGUL_CHARSET 129
338 #define GB2312_CHARSET 134
339 #define CHINESEBIG5_CHARSET 136
340 #define GREEK_CHARSET 161
341 #define TURKISH_CHARSET 162
342 #define HEBREW_CHARSET 177
343 #define ARABIC_CHARSET 178
344 #define BALTIC_CHARSET 186
345 #define RUSSIAN_CHARSET 204
346 #define THAI_CHARSET 222
347 #define EASTEUROPE_CHARSET 238
348 #define OEM_CHARSET 255
349 #define JOHAB_CHARSET 130
350 #define VIETNAMESE_CHARSET 163
351 #define MAC_CHARSET 77
352 #define OUT_DEFAULT_PRECIS 0
353 #define OUT_STRING_PRECIS 1
354 #define OUT_CHARACTER_PRECIS 2
355 #define OUT_STROKE_PRECIS 3
356 #define OUT_TT_PRECIS 4
357 #define OUT_DEVICE_PRECIS 5
358 #define OUT_RASTER_PRECIS 6
359 #define OUT_TT_ONLY_PRECIS 7
360 #define OUT_OUTLINE_PRECIS 8
361 #define CLIP_DEFAULT_PRECIS 0
362 #define CLIP_CHARACTER_PRECIS 1
363 #define CLIP_STROKE_PRECIS 2
364 #define CLIP_MASK 15
365 #define CLIP_LH_ANGLES 16
366 #define CLIP_TT_ALWAYS 32
367 #define CLIP_EMBEDDED 128
368 #define DEFAULT_QUALITY 0
369 #define DRAFT_QUALITY 1
370 #define PROOF_QUALITY 2
371 #define NONANTIALIASED_QUALITY 3
372 #define ANTIALIASED_QUALITY 4
373 #define DEFAULT_PITCH 0
374 #define FIXED_PITCH 1
375 #define VARIABLE_PITCH 2
376 #define MONO_FONT 8
377 #define FF_DECORATIVE 80
378 #define FF_DONTCARE 0
379 #define FF_MODERN 48
380 #define FF_ROMAN 16
381 #define FF_SCRIPT 64
382 #define FF_SWISS 32
383 #define PANOSE_COUNT 10
384 #define PAN_FAMILYTYPE_INDEX 0
385 #define PAN_SERIFSTYLE_INDEX 1
386 #define PAN_WEIGHT_INDEX 2
387 #define PAN_PROPORTION_INDEX 3
388 #define PAN_CONTRAST_INDEX 4
389 #define PAN_STROKEVARIATION_INDEX 5
390 #define PAN_ARMSTYLE_INDEX 6
391 #define PAN_LETTERFORM_INDEX 7
392 #define PAN_MIDLINE_INDEX 8
393 #define PAN_XHEIGHT_INDEX 9
394 #define PAN_CULTURE_LATIN 0
395 #define PAN_ANY 0
396 #define PAN_NO_FIT 1
397 #define PAN_FAMILY_TEXT_DISPLAY 2
398 #define PAN_FAMILY_SCRIPT 3
399 #define PAN_FAMILY_DECORATIVE 4
400 #define PAN_FAMILY_PICTORIAL 5
401 #define PAN_SERIF_COVE 2
402 #define PAN_SERIF_OBTUSE_COVE 3
403 #define PAN_SERIF_SQUARE_COVE 4
404 #define PAN_SERIF_OBTUSE_SQUARE_COVE 5
405 #define PAN_SERIF_SQUARE 6
406 #define PAN_SERIF_THIN 7
407 #define PAN_SERIF_BONE 8
408 #define PAN_SERIF_EXAGGERATED 9
409 #define PAN_SERIF_TRIANGLE 10
410 #define PAN_SERIF_NORMAL_SANS 11
411 #define PAN_SERIF_OBTUSE_SANS 12
412 #define PAN_SERIF_PERP_SANS 13
413 #define PAN_SERIF_FLARED 14
414 #define PAN_SERIF_ROUNDED 15
415 #define PAN_WEIGHT_VERY_LIGHT 2
416 #define PAN_WEIGHT_LIGHT 3
417 #define PAN_WEIGHT_THIN 4
418 #define PAN_WEIGHT_BOOK 5
419 #define PAN_WEIGHT_MEDIUM 6
420 #define PAN_WEIGHT_DEMI 7
421 #define PAN_WEIGHT_BOLD 8
422 #define PAN_WEIGHT_HEAVY 9
423 #define PAN_WEIGHT_BLACK 10
424 #define PAN_WEIGHT_NORD 11
425 #define PAN_PROP_OLD_STYLE 2
426 #define PAN_PROP_MODERN 3
427 #define PAN_PROP_EVEN_WIDTH 4
428 #define PAN_PROP_EXPANDED 5
429 #define PAN_PROP_CONDENSED 6
430 #define PAN_PROP_VERY_EXPANDED 7
431 #define PAN_PROP_VERY_CONDENSED 8
432 #define PAN_PROP_MONOSPACED 9
433 #define PAN_CONTRAST_NONE 2
434 #define PAN_CONTRAST_VERY_LOW 3
435 #define PAN_CONTRAST_LOW 4
436 #define PAN_CONTRAST_MEDIUM_LOW 5
437 #define PAN_CONTRAST_MEDIUM 6
438 #define PAN_CONTRAST_MEDIUM_HIGH 7
439 #define PAN_CONTRAST_HIGH 8
440 #define PAN_CONTRAST_VERY_HIGH 9
441 #define PAN_STROKE_GRADUAL_DIAG 2
442 #define PAN_STROKE_GRADUAL_TRAN 3
443 #define PAN_STROKE_GRADUAL_VERT 4
444 #define PAN_STROKE_GRADUAL_HORZ 5
445 #define PAN_STROKE_RAPID_VERT 6
446 #define PAN_STROKE_RAPID_HORZ 7
447 #define PAN_STROKE_INSTANT_VERT 8
448 #define PAN_STRAIGHT_ARMS_HORZ 2
449 #define PAN_STRAIGHT_ARMS_WEDGE 3
450 #define PAN_STRAIGHT_ARMS_VERT 4
451 #define PAN_STRAIGHT_ARMS_SINGLE_SERIF 5
452 #define PAN_STRAIGHT_ARMS_DOUBLE_SERIF 6
453 #define PAN_BENT_ARMS_HORZ 7
454 #define PAN_BENT_ARMS_WEDGE 8
455 #define PAN_BENT_ARMS_VERT 9
456 #define PAN_BENT_ARMS_SINGLE_SERIF 10
457 #define PAN_BENT_ARMS_DOUBLE_SERIF 11
458 #define PAN_LETT_NORMAL_CONTACT 2
459 #define PAN_LETT_NORMAL_WEIGHTED 3
460 #define PAN_LETT_NORMAL_BOXED 4
461 #define PAN_LETT_NORMAL_FLATTENED 5
462 #define PAN_LETT_NORMAL_ROUNDED 6
463 #define PAN_LETT_NORMAL_OFF_CENTER 7
464 #define PAN_LETT_NORMAL_SQUARE 8
465 #define PAN_LETT_OBLIQUE_CONTACT 9
466 #define PAN_LETT_OBLIQUE_WEIGHTED 10
467 #define PAN_LETT_OBLIQUE_BOXED 11
468 #define PAN_LETT_OBLIQUE_FLATTENED 12
469 #define PAN_LETT_OBLIQUE_ROUNDED 13
470 #define PAN_LETT_OBLIQUE_OFF_CENTER 14
471 #define PAN_LETT_OBLIQUE_SQUARE 15
472 #define PAN_MIDLINE_STANDARD_TRIMMED 2
473 #define PAN_MIDLINE_STANDARD_POINTED 3
474 #define PAN_MIDLINE_STANDARD_SERIFED 4
475 #define PAN_MIDLINE_HIGH_TRIMMED 5
476 #define PAN_MIDLINE_HIGH_POINTED 6
477 #define PAN_MIDLINE_HIGH_SERIFED 7
478 #define PAN_MIDLINE_CONSTANT_TRIMMED 8
479 #define PAN_MIDLINE_CONSTANT_POINTED 9
480 #define PAN_MIDLINE_CONSTANT_SERIFED 10
481 #define PAN_MIDLINE_LOW_TRIMMED 11
482 #define PAN_MIDLINE_LOW_POINTED 12
483 #define PAN_MIDLINE_LOW_SERIFED 13
484 #define PAN_XHEIGHT_CONSTANT_SMALL 2
485 #define PAN_XHEIGHT_CONSTANT_STD 3
486 #define PAN_XHEIGHT_CONSTANT_LARGE 4
487 #define PAN_XHEIGHT_DUCKING_SMALL 5
488 #define PAN_XHEIGHT_DUCKING_STD 6
489 #define PAN_XHEIGHT_DUCKING_LARGE 7
490 #define FS_LATIN1 1
491 #define FS_LATIN2 2
492 #define FS_CYRILLIC 4
493 #define FS_GREEK 8
494 #define FS_TURKISH 16
495 #define FS_HEBREW 32
496 #define FS_ARABIC 64
497 #define FS_BALTIC 128
498 #define FS_THAI 0x10000
499 #define FS_JISJAPAN 0x20000
500 #define FS_CHINESESIMP 0x40000
501 #define FS_WANSUNG 0x80000
502 #define FS_CHINESETRAD 0x100000
503 #define FS_JOHAB 0x200000
504 #define FS_SYMBOL 0x80000000
505 #define HS_BDIAGONAL 3
506 #define HS_CROSS 4
507 #define HS_DIAGCROSS 5
508 #define HS_FDIAGONAL 2
509 #define HS_HORIZONTAL 0
510 #define HS_VERTICAL 1
511 #define PS_GEOMETRIC 65536
512 #define PS_COSMETIC 0
513 #define PS_ALTERNATE 8
514 #define PS_SOLID 0
515 #define PS_DASH 1
516 #define PS_DOT 2
517 #define PS_DASHDOT 3
518 #define PS_DASHDOTDOT 4
519 #define PS_NULL 5
520 #define PS_USERSTYLE 7
521 #define PS_INSIDEFRAME 6
522 #define PS_ENDCAP_ROUND 0
523 #define PS_ENDCAP_SQUARE 256
524 #define PS_ENDCAP_FLAT 512
525 #define PS_JOIN_BEVEL 4096
526 #define PS_JOIN_MITER 8192
527 #define PS_JOIN_ROUND 0
528 #define PS_STYLE_MASK 15
529 #define PS_ENDCAP_MASK 3840
530 #define PS_TYPE_MASK 983040
531 #define ALTERNATE 1
532 #define WINDING 2
533 #define DC_BINNAMES 12
534 #define DC_BINS 6
535 #define DC_COPIES 18
536 #define DC_DRIVER 11
537 #define DC_DATATYPE_PRODUCED 21
538 #define DC_DUPLEX 7
539 #define DC_EMF_COMPLIANT 20
540 #define DC_ENUMRESOLUTIONS 13
541 #define DC_EXTRA 9
542 #define DC_FIELDS 1
543 #define DC_FILEDEPENDENCIES 14
544 #define DC_MAXEXTENT 5
545 #define DC_MINEXTENT 4
546 #define DC_ORIENTATION 17
547 #define DC_PAPERNAMES 16
548 #define DC_PAPERS 2
549 #define DC_PAPERSIZE 3
550 #define DC_SIZE 8
551 #define DC_TRUETYPE 15
552 #define DCTT_BITMAP 1
553 #define DCTT_DOWNLOAD 2
554 #define DCTT_SUBDEV 4
555 #define DCTT_DOWNLOAD_OUTLINE 8
556 #define DC_VERSION 10
557 #define DC_BINADJUST 19
558 #define DC_EMF_COMPLIANT 20
559 #define DC_DATATYPE_PRODUCED 21
560 #define DC_MANUFACTURER 23
561 #define DC_MODEL 24
562 #if (WINVER >= 0x0500)
563 #define DC_PERSONALITY 25
564 #define DC_PRINTRATE 26
565 #define DC_PRINTRATEUNIT 27
566 #define DC_PRINTERMEM 28
567 #define DC_MEDIAREADY 29
568 #define DC_STAPLE 30
569 #define DC_PRINTRATEPPM 31
570 #define DC_COLORDEVICE 32
571 #define DC_NUP 33
572 #endif
573 #if (WINVER >= 0x0501)
574 #define DC_MEDIATYPENAMES 34
575 #define DC_MEDIATYPES 35
576 #endif
577 #define DCBA_FACEUPNONE 0
578 #define DCBA_FACEUPCENTER 1
579 #define DCBA_FACEUPLEFT 2
580 #define DCBA_FACEUPRIGHT 3
581 #define DCBA_FACEDOWNNONE 256
582 #define DCBA_FACEDOWNCENTER 257
583 #define DCBA_FACEDOWNLEFT 258
584 #define DCBA_FACEDOWNRIGHT 259
585 #define FLOODFILLBORDER 0
586 #define FLOODFILLSURFACE 1
587 #define ETO_CLIPPED 0x0004
588 #define ETO_GLYPH_INDEX 0x0010
589 #define ETO_OPAQUE 0x0002
590 #define ETO_NUMERICSLATIN 0x0800
591 #define ETO_NUMERICSLOCAL 0x0400
592 #define ETO_RTLREADING 0x0080
593 #if (_WIN32_WINNT >= 0x0400)
594 #define ETO_IGNORELANGUAGE 0x1000
595 #endif
596 #if (_WIN32_WINNT >= 0x0500)
597 #define ETO_PDY 0x2000
598 #endif
599 #define GDICOMMENT_WINDOWS_METAFILE (-2147483647)
600 #define GDICOMMENT_BEGINGROUP 2
601 #define GDICOMMENT_ENDGROUP 3
602 #define GDICOMMENT_MULTIFORMATS 1073741828
603 #define GDICOMMENT_IDENTIFIER 1128875079
604 #define AD_COUNTERCLOCKWISE 1
605 #define AD_CLOCKWISE 2
606 #define RDH_RECTANGLES 1
607 #define GCPCLASS_LATIN 1
608 #define GCPCLASS_HEBREW 2
609 #define GCPCLASS_ARABIC 2
610 #define GCPCLASS_NEUTRAL 3
611 #define GCPCLASS_LOCALNUMBER 4
612 #define GCPCLASS_LATINNUMBER 5
613 #define GCPCLASS_LATINNUMERICTERMINATOR 6
614 #define GCPCLASS_LATINNUMERICSEPARATOR 7
615 #define GCPCLASS_NUMERICSEPARATOR 8
616 #define GCPCLASS_PREBOUNDLTR 128
617 #define GCPCLASS_PREBOUNDRTL 64
618 #define GCPCLASS_POSTBOUNDLTR 32
619 #define GCPCLASS_POSTBOUNDRTL 16
620 #define GCPGLYPH_LINKBEFORE 0x8000
621 #define GCPGLYPH_LINKAFTER 0x4000
622 #define DCB_DISABLE 8
623 #define DCB_ENABLE 4
624 #define DCB_RESET 1
625 #define DCB_SET 3
626 #define DCB_ACCUMULATE 2
627 #define DCB_DIRTY 2
628 #define OBJ_BRUSH 2
629 #define OBJ_PEN 1
630 #define OBJ_PAL 5
631 #define OBJ_FONT 6
632 #define OBJ_BITMAP 7
633 #define OBJ_EXTPEN 11
634 #define OBJ_REGION 8
635 #define OBJ_DC 3
636 #define OBJ_MEMDC 10
637 #define OBJ_METAFILE 9
638 #define OBJ_METADC 4
639 #define OBJ_ENHMETAFILE 13
640 #define OBJ_ENHMETADC 12
641 #define DRIVERVERSION 0
642 #define TECHNOLOGY 2
643 #define DT_PLOTTER 0
644 #define DT_RASDISPLAY 1
645 #define DT_RASPRINTER 2
646 #define DT_RASCAMERA 3
647 #define DT_CHARSTREAM 4
648 #define DT_METAFILE 5
649 #define DT_DISPFILE 6
650 #define HORZSIZE 4
651 #define VERTSIZE 6
652 #define HORZRES 8
653 #define VERTRES 10
654 #define LOGPIXELSX 88
655 #define LOGPIXELSY 90
656 #define BITSPIXEL 12
657 #define PLANES 14
658 #define NUMBRUSHES 16
659 #define NUMPENS 18
660 #define NUMFONTS 22
661 #define NUMCOLORS 24
662 #define NUMMARKERS 20
663 #define ASPECTX 40
664 #define ASPECTY 42
665 #define ASPECTXY 44
666 #define PDEVICESIZE 26
667 #define CLIPCAPS 36
668 #define SIZEPALETTE 104
669 #define NUMRESERVED 106
670 #define COLORRES 108
671 #define PHYSICALWIDTH 110
672 #define PHYSICALHEIGHT 111
673 #define PHYSICALOFFSETX 112
674 #define PHYSICALOFFSETY 113
675 #define SCALINGFACTORX 114
676 #define SCALINGFACTORY 115
677 #define VREFRESH 116
678 #define DESKTOPHORZRES 118
679 #define DESKTOPVERTRES 117
680 #define BLTALIGNMENT 119
681 #if(WINVER >= 0x0500)
682 #define SHADEBLENDCAPS 120
683 #define SB_NONE 0x00
684 #define SB_CONST_ALPHA 0x01
685 #define SB_PIXEL_ALPHA 0x02
686 #define SB_PREMULT_ALPHA 0x04
687 #define SB_GRAD_RECT 0x10
688 #define SB_GRAD_TRI 0x20
689 #define COLORMGMTCAPS 121
690 #define CM_NONE 0x00
691 #define CM_DEVICE_ICM 0x01
692 #define CM_GAMMA_RAMP 0x02
693 #define CM_CMYK_COLOR 0x04
694 #endif
695 #define RASTERCAPS 38
696 #define RC_BANDING 2
697 #define RC_BITBLT 1
698 #define RC_BITMAP64 8
699 #define RC_DI_BITMAP 128
700 #define RC_DIBTODEV 512
701 #define RC_FLOODFILL 4096
702 #define RC_GDI20_OUTPUT 16
703 #define RC_PALETTE 256
704 #define RC_SCALING 4
705 #define RC_STRETCHBLT 2048
706 #define RC_STRETCHDIB 8192
707 #define RC_DEVBITS 0x8000
708 #define RC_OP_DX_OUTPUT 0x4000
709 #define CURVECAPS 28
710 #define CC_NONE 0
711 #define CC_CIRCLES 1
712 #define CC_PIE 2
713 #define CC_CHORD 4
714 #define CC_ELLIPSES 8
715 #define CC_WIDE 16
716 #define CC_STYLED 32
717 #define CC_WIDESTYLED 64
718 #define CC_INTERIORS 128
719 #define CC_ROUNDRECT 256
720 #define LINECAPS 30
721 #define LC_NONE 0
722 #define LC_POLYLINE 2
723 #define LC_MARKER 4
724 #define LC_POLYMARKER 8
725 #define LC_WIDE 16
726 #define LC_STYLED 32
727 #define LC_WIDESTYLED 64
728 #define LC_INTERIORS 128
729 #define POLYGONALCAPS 32
730 #define RC_BANDING 2
731 #define RC_BIGFONT 1024
732 #define RC_BITBLT 1
733 #define RC_BITMAP64 8
734 #define RC_DEVBITS 0x8000
735 #define RC_DI_BITMAP 128
736 #define RC_GDI20_OUTPUT 16
737 #define RC_GDI20_STATE 32
738 #define RC_NONE 0
739 #define RC_OP_DX_OUTPUT 0x4000
740 #define RC_PALETTE 256
741 #define RC_SAVEBITMAP 64
742 #define RC_SCALING 4
743 #define PC_NONE 0
744 #define PC_POLYGON 1
745 #define PC_POLYPOLYGON 256
746 #define PC_PATHS 512
747 #define PC_RECTANGLE 2
748 #define PC_WINDPOLYGON 4
749 #define PC_SCANLINE 8
750 #define PC_TRAPEZOID 4
751 #define PC_WIDE 16
752 #define PC_STYLED 32
753 #define PC_WIDESTYLED 64
754 #define PC_INTERIORS 128
755 #define PC_PATHS 512
756 #define TEXTCAPS 34
757 #define TC_OP_CHARACTER 1
758 #define TC_OP_STROKE 2
759 #define TC_CP_STROKE 4
760 #define TC_CR_90 8
761 #define TC_CR_ANY 16
762 #define TC_SF_X_YINDEP 32
763 #define TC_SA_DOUBLE 64
764 #define TC_SA_INTEGER 128
765 #define TC_SA_CONTIN 256
766 #define TC_EA_DOUBLE 512
767 #define TC_IA_ABLE 1024
768 #define TC_UA_ABLE 2048
769 #define TC_SO_ABLE 4096
770 #define TC_RA_ABLE 8192
771 #define TC_VA_ABLE 16384
772 #define TC_RESERVED 32768
773 #define TC_SCROLLBLT 65536
774 #define GCP_DBCS 1
775 #define GCP_ERROR 0x8000
776 #define GCP_CLASSIN 0x80000
777 #define GCP_DIACRITIC 256
778 #define GCP_DISPLAYZWG 0x400000
779 #define GCP_GLYPHSHAPE 16
780 #define GCP_JUSTIFY 0x10000
781 #define GCP_JUSTIFYIN 0x200000
782 #define GCP_KASHIDA 1024
783 #define GCP_LIGATE 32
784 #define GCP_MAXEXTENT 0x100000
785 #define GCP_NEUTRALOVERRIDE 0x2000000
786 #define GCP_NUMERICOVERRIDE 0x1000000
787 #define GCP_NUMERICSLATIN 0x4000000
788 #define GCP_NUMERICSLOCAL 0x8000000
789 #define GCP_REORDER 2
790 #define GCP_SYMSWAPOFF 0x800000
791 #define GCP_USEKERNING 8
792 #define FLI_GLYPHS 0x40000
793 #define FLI_MASK 0x103b
794 #define GGO_METRICS 0
795 #define GGO_BITMAP 1
796 #define GGO_NATIVE 2
797 #define GGO_BEZIER 3
798 #define GGO_GRAY2_BITMAP 4
799 #define GGO_GRAY4_BITMAP 5
800 #define GGO_GRAY8_BITMAP 6
801 #define GGO_GLYPH_INDEX 128
802 #if (WINVER >= 0x0500)
803 #define GGO_UNHINTED 256
804 #endif
805 #define GM_COMPATIBLE 1
806 #define GM_ADVANCED 2
807 #define MM_ANISOTROPIC 8
808 #define MM_HIENGLISH 5
809 #define MM_HIMETRIC 3
810 #define MM_ISOTROPIC 7
811 #define MM_LOENGLISH 4
812 #define MM_LOMETRIC 2
813 #define MM_TEXT 1
814 #define MM_TWIPS 6
815 #define MM_MAX_FIXEDSCALE MM_TWIPS
816 #define ABSOLUTE 1
817 #define RELATIVE 2
818 #define PC_EXPLICIT 2
819 #define PC_NOCOLLAPSE 4
820 #define PC_RESERVED 1
821 #define CLR_NONE 0xffffffff
822 #define CLR_INVALID CLR_NONE
823 #define CLR_DEFAULT 0xff000000
824 #define PT_MOVETO 6
825 #define PT_LINETO 2
826 #define PT_BEZIERTO 4
827 #define PT_CLOSEFIGURE 1
828 #define TT_AVAILABLE 1
829 #define TT_ENABLED 2
830 #define BLACK_BRUSH 4
831 #define DKGRAY_BRUSH 3
832 #define GRAY_BRUSH 2
833 #define HOLLOW_BRUSH 5
834 #define LTGRAY_BRUSH 1
835 #define NULL_BRUSH 5
836 #define WHITE_BRUSH 0
837 #define BLACK_PEN 7
838 #define NULL_PEN 8
839 #define WHITE_PEN 6
840 #define ANSI_FIXED_FONT 11
841 #define ANSI_VAR_FONT 12
842 #define DEVICE_DEFAULT_FONT 14
843 #define DEFAULT_GUI_FONT 17
844 #define OEM_FIXED_FONT 10
845 #define SYSTEM_FONT 13
846 #define SYSTEM_FIXED_FONT 16
847 #define DEFAULT_PALETTE 15
848 #if (_WIN32_WINNT >= 0x0500)
849 #define DC_BRUSH 18
850 #define DC_PEN 19
851 #endif
852 #define SYSPAL_ERROR 0
853 #define SYSPAL_STATIC 1
854 #define SYSPAL_NOSTATIC 2
855 #define SYSPAL_NOSTATIC256 3
856 #define TA_BASELINE 24
857 #define TA_BOTTOM 8
858 #define TA_TOP 0
859 #define TA_CENTER 6
860 #define TA_LEFT 0
861 #define TA_RIGHT 2
862 #define TA_RTLREADING 256
863 #define TA_NOUPDATECP 0
864 #define TA_UPDATECP 1
865 #define TA_MASK (TA_BASELINE+TA_CENTER+TA_UPDATECP+TA_RTLREADING)
866 #define VTA_BASELINE 24
867 #define VTA_CENTER 6
868 #define VTA_LEFT TA_BOTTOM
869 #define VTA_RIGHT TA_TOP
870 #define VTA_BOTTOM TA_RIGHT
871 #define VTA_TOP TA_LEFT
872 #define MWT_IDENTITY 1
873 #define MWT_LEFTMULTIPLY 2
874 #define MWT_RIGHTMULTIPLY 3
875 #define OPAQUE 2
876 #define TRANSPARENT 1
877 #define BLACKONWHITE 1
878 #define WHITEONBLACK 2
879 #define COLORONCOLOR 3
880 #define HALFTONE 4
881 #define MAXSTRETCHBLTMODE 4
882 #define STRETCH_ANDSCANS 1
883 #define STRETCH_DELETESCANS 3
884 #define STRETCH_HALFTONE 4
885 #define STRETCH_ORSCANS 2
886 #define TCI_SRCCHARSET 1
887 #define TCI_SRCCODEPAGE 2
888 #define TCI_SRCFONTSIG 3
889 #define ICM_ON 2
890 #define ICM_OFF 1
891 #define ICM_QUERY 3
892 #define NEWFRAME 1
893 #define ABORTDOC 2
894 #define NEXTBAND 3
895 #define SETCOLORTABLE 4
896 #define GETCOLORTABLE 5
897 #define FLUSHOUTPUT 6
898 #define DRAFTMODE 7
899 #define QUERYESCSUPPORT 8
900 #define SETABORTPROC 9
901 #define STARTDOC 10
902 #define ENDDOC 11
903 #define GETPHYSPAGESIZE 12
904 #define GETPRINTINGOFFSET 13
905 #define GETSCALINGFACTOR 14
906 #define MFCOMMENT 15
907 #define GETPENWIDTH 16
908 #define SETCOPYCOUNT 17
909 #define SELECTPAPERSOURCE 18
910 #define DEVICEDATA 19
911 #define PASSTHROUGH 19
912 #define GETTECHNOLGY 20
913 #define GETTECHNOLOGY 20
914 #define SETLINECAP 21
915 #define SETLINEJOIN 22
916 #define SETMITERLIMIT 23
917 #define BANDINFO 24
918 #define DRAWPATTERNRECT 25
919 #define GETVECTORPENSIZE 26
920 #define GETVECTORBRUSHSIZE 27
921 #define ENABLEDUPLEX 28
922 #define GETSETPAPERBINS 29
923 #define GETSETPRINTORIENT 30
924 #define ENUMPAPERBINS 31
925 #define SETDIBSCALING 32
926 #define EPSPRINTING 33
927 #define ENUMPAPERMETRICS 34
928 #define GETSETPAPERMETRICS 35
929 #define POSTSCRIPT_DATA 37
930 #define POSTSCRIPT_IGNORE 38
931 #define MOUSETRAILS 39
932 #define GETDEVICEUNITS 42
933 #define GETEXTENDEDTEXTMETRICS 256
934 #define GETEXTENTTABLE 257
935 #define GETPAIRKERNTABLE 258
936 #define GETTRACKKERNTABLE 259
937 #define EXTTEXTOUT 512
938 #define GETFACENAME 513
939 #define DOWNLOADFACE 514
940 #define ENABLERELATIVEWIDTHS 768
941 #define ENABLEPAIRKERNING 769
942 #define SETKERNTRACK 770
943 #define SETALLJUSTVALUES 771
944 #define SETCHARSET 772
945 #define STRETCHBLT 2048
946 #define GETSETSCREENPARAMS 3072
947 #define QUERYDIBSUPPORT 3073
948 #define BEGIN_PATH 4096
949 #define CLIP_TO_PATH 4097
950 #define END_PATH 4098
951 #define EXT_DEVICE_CAPS 4099
952 #define RESTORE_CTM 4100
953 #define SAVE_CTM 4101
954 #define SET_ARC_DIRECTION 4102
955 #define SET_BACKGROUND_COLOR 4103
956 #define SET_POLY_MODE 4104
957 #define SET_SCREEN_ANGLE 4105
958 #define SET_SPREAD 4106
959 #define TRANSFORM_CTM 4107
960 #define SET_CLIP_BOX 4108
961 #define SET_BOUNDS 4109
962 #define SET_MIRROR_MODE 4110
963 #define OPENCHANNEL 4110
964 #define DOWNLOADHEADER 4111
965 #define CLOSECHANNEL 4112
966 #define POSTSCRIPT_PASSTHROUGH 4115
967 #define ENCAPSULATED_POSTSCRIPT 4116
968 #define QDI_SETDIBITS 1
969 #define QDI_GETDIBITS 2
970 #define QDI_DIBTOSCREEN 4
971 #define QDI_STRETCHDIB 8
972 #define SP_NOTREPORTED 0x4000
973 #define PR_JOBSTATUS 0
974 #define ASPECT_FILTERING 1
975 #define BS_SOLID 0
976 #define BS_NULL 1
977 #define BS_HOLLOW 1
978 #define BS_HATCHED 2
979 #define BS_PATTERN 3
980 #define BS_INDEXED 4
981 #define BS_DIBPATTERN 5
982 #define BS_DIBPATTERNPT 6
983 #define BS_PATTERN8X8 7
984 #define BS_DIBPATTERN8X8 8
985 #define LCS_CALIBRATED_RGB 0
986 #define LCS_DEVICE_RGB 1
987 #define LCS_DEVICE_CMYK 2
988 #define LCS_GM_BUSINESS 1
989 #define LCS_GM_GRAPHICS 2
990 #define LCS_GM_IMAGES 4
991 #define RASTER_FONTTYPE 1
992 #define DEVICE_FONTTYPE 2
993 #define TRUETYPE_FONTTYPE 4
994 #define DMORIENT_PORTRAIT 1
995 #define DMORIENT_LANDSCAPE 2
996 #define DMPAPER_FIRST 1
997 #define DMPAPER_LETTER 1
998 #define DMPAPER_LETTERSMALL 2
999 #define DMPAPER_TABLOID 3
1000 #define DMPAPER_LEDGER 4
1001 #define DMPAPER_LEGAL 5
1002 #define DMPAPER_STATEMENT 6
1003 #define DMPAPER_EXECUTIVE 7
1004 #define DMPAPER_A3 8
1005 #define DMPAPER_A4 9
1006 #define DMPAPER_A4SMALL 10
1007 #define DMPAPER_A5 11
1008 #define DMPAPER_B4 12
1009 #define DMPAPER_B5 13
1010 #define DMPAPER_FOLIO 14
1011 #define DMPAPER_QUARTO 15
1012 #define DMPAPER_10X14 16
1013 #define DMPAPER_11X17 17
1014 #define DMPAPER_NOTE 18
1015 #define DMPAPER_ENV_9 19
1016 #define DMPAPER_ENV_10 20
1017 #define DMPAPER_ENV_11 21
1018 #define DMPAPER_ENV_12 22
1019 #define DMPAPER_ENV_14 23
1020 #define DMPAPER_CSHEET 24
1021 #define DMPAPER_DSHEET 25
1022 #define DMPAPER_ESHEET 26
1023 #define DMPAPER_ENV_DL 27
1024 #define DMPAPER_ENV_C5 28
1025 #define DMPAPER_ENV_C3 29
1026 #define DMPAPER_ENV_C4 30
1027 #define DMPAPER_ENV_C6 31
1028 #define DMPAPER_ENV_C65 32
1029 #define DMPAPER_ENV_B4 33
1030 #define DMPAPER_ENV_B5 34
1031 #define DMPAPER_ENV_B6 35
1032 #define DMPAPER_ENV_ITALY 36
1033 #define DMPAPER_ENV_MONARCH 37
1034 #define DMPAPER_ENV_PERSONAL 38
1035 #define DMPAPER_FANFOLD_US 39
1036 #define DMPAPER_FANFOLD_STD_GERMAN 40
1037 #define DMPAPER_FANFOLD_LGL_GERMAN 41
1038 #define DMPAPER_ISO_B4 42
1039 #define DMPAPER_JAPANESE_POSTCARD 43
1040 #define DMPAPER_9X11 44
1041 #define DMPAPER_10X11 45
1042 #define DMPAPER_15X11 46
1043 #define DMPAPER_ENV_INVITE 47
1044 #define DMPAPER_RESERVED_48 48
1045 #define DMPAPER_RESERVED_49 49
1046 #define DMPAPER_LETTER_EXTRA 50
1047 #define DMPAPER_LEGAL_EXTRA 51
1048 #define DMPAPER_TABLOID_EXTRA 52
1049 #define DMPAPER_A4_EXTRA 53
1050 #define DMPAPER_LETTER_TRANSVERSE 54
1051 #define DMPAPER_A4_TRANSVERSE 55
1052 #define DMPAPER_LETTER_EXTRA_TRANSVERSE 56
1053 #define DMPAPER_A_PLUS 57
1054 #define DMPAPER_B_PLUS 58
1055 #define DMPAPER_LETTER_PLUS 59
1056 #define DMPAPER_A4_PLUS 60
1057 #define DMPAPER_A5_TRANSVERSE 61
1058 #define DMPAPER_B5_TRANSVERSE 62
1059 #define DMPAPER_A3_EXTRA 63
1060 #define DMPAPER_A5_EXTRA 64
1061 #define DMPAPER_B5_EXTRA 65
1062 #define DMPAPER_A2 66
1063 #define DMPAPER_A3_TRANSVERSE 67
1064 #define DMPAPER_A3_EXTRA_TRANSVERSE 68
1065 #if (WINVER >= 0x0500)
1066 #define DMPAPER_DBL_JAPANESE_POSTCARD 69
1067 #define DMPAPER_A6 70
1068 #define DMPAPER_JENV_KAKU2 71
1069 #define DMPAPER_JENV_KAKU3 72
1070 #define DMPAPER_JENV_CHOU3 73
1071 #define DMPAPER_JENV_CHOU4 74
1072 #define DMPAPER_LETTER_ROTATED 75
1073 #define DMPAPER_A3_ROTATED 76
1074 #define DMPAPER_A4_ROTATED 77
1075 #define DMPAPER_A5_ROTATED 78
1076 #define DMPAPER_B4_JIS_ROTATED 79
1077 #define DMPAPER_B5_JIS_ROTATED 80
1078 #define DMPAPER_JAPANESE_POSTCARD_ROTATED 81
1079 #define DMPAPER_DBL_JAPANESE_POSTCARD_ROTATED 82
1080 #define DMPAPER_A6_ROTATED 83
1081 #define DMPAPER_JENV_KAKU2_ROTATED 84
1082 #define DMPAPER_JENV_KAKU3_ROTATED 85
1083 #define DMPAPER_JENV_CHOU3_ROTATED 86
1084 #define DMPAPER_JENV_CHOU4_ROTATED 87
1085 #define DMPAPER_B6_JIS 88
1086 #define DMPAPER_B6_JIS_ROTATED 89
1087 #define DMPAPER_12X11 90
1088 #define DMPAPER_JENV_YOU4 91
1089 #define DMPAPER_JENV_YOU4_ROTATED 92
1090 #define DMPAPER_P16K 93
1091 #define DMPAPER_P32K 94
1092 #define DMPAPER_P32KBIG 95
1093 #define DMPAPER_PENV_1 96
1094 #define DMPAPER_PENV_2 97
1095 #define DMPAPER_PENV_3 98
1096 #define DMPAPER_PENV_4 99
1097 #define DMPAPER_PENV_5 100
1098 #define DMPAPER_PENV_6 101
1099 #define DMPAPER_PENV_7 102
1100 #define DMPAPER_PENV_8 103
1101 #define DMPAPER_PENV_9 104
1102 #define DMPAPER_PENV_10 105
1103 #define DMPAPER_P16K_ROTATED 106
1104 #define DMPAPER_P32K_ROTATED 107
1105 #define DMPAPER_P32KBIG_ROTATED 108
1106 #define DMPAPER_PENV_1_ROTATED 109
1107 #define DMPAPER_PENV_2_ROTATED 110
1108 #define DMPAPER_PENV_3_ROTATED 111
1109 #define DMPAPER_PENV_4_ROTATED 112
1110 #define DMPAPER_PENV_5_ROTATED 113
1111 #define DMPAPER_PENV_6_ROTATED 114
1112 #define DMPAPER_PENV_7_ROTATED 115
1113 #define DMPAPER_PENV_8_ROTATED 116
1114 #define DMPAPER_PENV_9_ROTATED 117
1115 #define DMPAPER_PENV_10_ROTATED 118
1116 #define DMPAPER_LAST 118
1117 #else
1118 #define DMPAPER_LAST 68
1119 #endif
1120 #define DMPAPER_USER 256
1121 #define DMBIN_FIRST 1
1122 #define DMBIN_UPPER 1
1123 #define DMBIN_ONLYONE 1
1124 #define DMBIN_LOWER 2
1125 #define DMBIN_MIDDLE 3
1126 #define DMBIN_MANUAL 4
1127 #define DMBIN_ENVELOPE 5
1128 #define DMBIN_ENVMANUAL 6
1129 #define DMBIN_AUTO 7
1130 #define DMBIN_TRACTOR 8
1131 #define DMBIN_SMALLFMT 9
1132 #define DMBIN_LARGEFMT 10
1133 #define DMBIN_LARGECAPACITY 11
1134 #define DMBIN_CASSETTE 14
1135 #define DMBIN_FORMSOURCE 15
1136 #define DMBIN_LAST 15
1137 #define DMBIN_USER 256
1138 #define DMRES_DRAFT (-1)
1139 #define DMRES_LOW (-2)
1140 #define DMRES_MEDIUM (-3)
1141 #define DMRES_HIGH (-4)
1142 #define DMCOLOR_MONOCHROME 1
1143 #define DMCOLOR_COLOR 2
1144 #define DMDUP_SIMPLEX 1
1145 #define DMDUP_VERTICAL 2
1146 #define DMDUP_HORIZONTAL 3
1147 #define DMTT_BITMAP 1
1148 #define DMTT_DOWNLOAD 2
1149 #define DMTT_SUBDEV 3
1150 #define DMTT_DOWNLOAD_OUTLINE 4
1151 #define DMCOLLATE_FALSE 0
1152 #define DMCOLLATE_TRUE 1
1153 #define DM_SPECVERSION 800
1154 #define DM_GRAYSCALE 1
1155 #define DM_INTERLACED 2
1156 #define DM_UPDATE 1
1157 #define DM_COPY 2
1158 #define DM_PROMPT 4
1159 #define DM_MODIFY 8
1160 #define DM_IN_BUFFER DM_MODIFY
1161 #define DM_IN_PROMPT DM_PROMPT
1162 #define DM_OUT_BUFFER DM_COPY
1163 #define DM_OUT_DEFAULT DM_UPDATE
1164 #define DM_ORIENTATION 0x00000001
1165 #define DM_PAPERSIZE 0x00000002
1166 #define DM_PAPERLENGTH 0x00000004
1167 #define DM_PAPERWIDTH 0x00000008
1168 #define DM_SCALE 0x00000010
1169 #define DM_POSITION 0x00000020
1170 #define DM_COPIES 0x00000100
1171 #define DM_DEFAULTSOURCE 0x00000200
1172 #define DM_PRINTQUALITY 0x00000400
1173 #define DM_COLOR 0x00000800
1174 #define DM_DUPLEX 0x00001000
1175 #define DM_YRESOLUTION 0x00002000
1176 #define DM_TTOPTION 0x00004000
1177 #define DM_COLLATE 0x00008000
1178 #define DM_FORMNAME 0x00010000
1179 #define DM_LOGPIXELS 0x00020000
1180 #define DM_BITSPERPEL 0x00040000
1181 #define DM_PELSWIDTH 0x00080000
1182 #define DM_PELSHEIGHT 0x00100000
1183 #define DM_DISPLAYFLAGS 0x00200000
1184 #define DM_DISPLAYFREQUENCY 0x00400000
1185 #define DM_ICMMETHOD 0x00800000
1186 #define DM_ICMINTENT 0x01000000
1187 #define DM_MEDIATYPE 0x02000000
1188 #define DM_DITHERTYPE 0x04000000
1189 #if(WINVER >= 0x0500)
1190 #define DM_PANNINGWIDTH 0x08000000
1191 #define DM_PANNINGHEIGHT 0x10000000
1192 #endif
1193 #if(WINVER >= 0x0501)
1194 #define DM_DISPLAYFIXEDOUTPUT 0x20000000
1195 #define DM_DISPLAYORIENTATION 0x00000080
1196 #define DMDO_DEFAULT 0x00000000
1197 #define DMDO_90 0x00000001
1198 #define DMDO_180 0x00000002
1199 #define DMDO_270 0x00000003
1200 #define DMDFO_DEFAULT 0x00000000
1201 #define DMDFO_STRETCH 0x00000001
1202 #define DMDFO_CENTER 0x00000002
1203 #endif
1204 #define DMICMMETHOD_NONE 1
1205 #define DMICMMETHOD_SYSTEM 2
1206 #define DMICMMETHOD_DRIVER 3
1207 #define DMICMMETHOD_DEVICE 4
1208 #define DMICMMETHOD_USER 256
1209 #define DMICM_SATURATE 1
1210 #define DMICM_CONTRAST 2
1211 #define DMICM_COLORMETRIC 3
1212 #define DMICM_USER 256
1213 #define DMMEDIA_STANDARD 1
1214 #define DMMEDIA_TRANSPARENCY 2
1215 #define DMMEDIA_GLOSSY 3
1216 #define DMMEDIA_USER 256
1217 #define DMDITHER_NONE 1
1218 #define DMDITHER_COARSE 2
1219 #define DMDITHER_FINE 3
1220 #define DMDITHER_LINEART 4
1221 #define DMDITHER_ERRORDIFFUSION 5
1222 #define DMDITHER_RESERVED6 6
1223 #define DMDITHER_RESERVED7 7
1224 #define DMDITHER_RESERVED8 8
1225 #define DMDITHER_RESERVED9 9
1226 #define DMDITHER_GRAYSCALE 10
1227 #define DMDITHER_USER 256
1228 #define GDI_ERROR 0xFFFFFFFF
1229 #define HGDI_ERROR ((HANDLE)GDI_ERROR)
1230 #define TMPF_FIXED_PITCH 1
1231 #define TMPF_VECTOR 2
1232 #define TMPF_TRUETYPE 4
1233 #define TMPF_DEVICE 8
1234 #define NTM_ITALIC 1
1235 #define NTM_BOLD 32
1236 #define NTM_REGULAR 64
1237 #define TT_POLYGON_TYPE 24
1238 #define TT_PRIM_LINE 1
1239 #define TT_PRIM_QSPLINE 2
1240 #define TT_PRIM_CSPLINE 3
1241 #define FONTMAPPER_MAX 10
1242 #define ENHMETA_STOCK_OBJECT 0x80000000
1243 #define WGL_FONT_LINES 0
1244 #define WGL_FONT_POLYGONS 1
1245 #define LPD_DOUBLEBUFFER 1
1246 #define LPD_STEREO 2
1247 #define LPD_SUPPORT_GDI 16
1248 #define LPD_SUPPORT_OPENGL 32
1249 #define LPD_SHARE_DEPTH 64
1250 #define LPD_SHARE_STENCIL 128
1251 #define LPD_SHARE_ACCUM 256
1252 #define LPD_SWAP_EXCHANGE 512
1253 #define LPD_SWAP_COPY 1024
1254 #define LPD_TRANSPARENT 4096
1255 #define LPD_TYPE_RGBA 0
1256 #define LPD_TYPE_COLORINDEX 1
1257 #define WGL_SWAP_MAIN_PLANE 1
1258 #define WGL_SWAP_OVERLAY1 2
1259 #define WGL_SWAP_OVERLAY2 4
1260 #define WGL_SWAP_OVERLAY3 8
1261 #define WGL_SWAP_OVERLAY4 16
1262 #define WGL_SWAP_OVERLAY5 32
1263 #define WGL_SWAP_OVERLAY6 64
1264 #define WGL_SWAP_OVERLAY7 128
1265 #define WGL_SWAP_OVERLAY8 256
1266 #define WGL_SWAP_OVERLAY9 512
1267 #define WGL_SWAP_OVERLAY10 1024
1268 #define WGL_SWAP_OVERLAY11 2048
1269 #define WGL_SWAP_OVERLAY12 4096
1270 #define WGL_SWAP_OVERLAY13 8192
1271 #define WGL_SWAP_OVERLAY14 16384
1272 #define WGL_SWAP_OVERLAY15 32768
1273 #define WGL_SWAP_UNDERLAY1 65536
1274 #define WGL_SWAP_UNDERLAY2 0x20000
1275 #define WGL_SWAP_UNDERLAY3 0x40000
1276 #define WGL_SWAP_UNDERLAY4 0x80000
1277 #define WGL_SWAP_UNDERLAY5 0x100000
1278 #define WGL_SWAP_UNDERLAY6 0x200000
1279 #define WGL_SWAP_UNDERLAY7 0x400000
1280 #define WGL_SWAP_UNDERLAY8 0x800000
1281 #define WGL_SWAP_UNDERLAY9 0x1000000
1282 #define WGL_SWAP_UNDERLAY10 0x2000000
1283 #define WGL_SWAP_UNDERLAY11 0x4000000
1284 #define WGL_SWAP_UNDERLAY12 0x8000000
1285 #define WGL_SWAP_UNDERLAY13 0x10000000
1286 #define WGL_SWAP_UNDERLAY14 0x20000000
1287 #define WGL_SWAP_UNDERLAY15 0x40000000
1288 #define AC_SRC_OVER 0x00
1289 #define AC_SRC_ALPHA 0x01
1290 #define AC_SRC_NO_PREMULT_ALPHA 0x01
1291 #define AC_SRC_NO_ALPHA 0x02
1292 #define AC_DST_NO_PREMULT_ALPHA 0x10
1293 #define AC_DST_NO_ALPHA 0x20
1294 #define LAYOUT_RTL 1
1295 #define LAYOUT_BITMAPORIENTATIONPRESERVED 8
1296 #if (WINVER >= 0x0400)
1297 #define CS_ENABLE 0x00000001
1298 #define CS_DISABLE 0x00000002
1299 #define CS_DELETE_TRANSFORM 0x00000003
1300 #endif
1301 #if (WINVER >= 0x0500)
1302 #define GRADIENT_FILL_RECT_H 0x00
1303 #define GRADIENT_FILL_RECT_V 0x01
1304 #define GRADIENT_FILL_TRIANGLE 0x02
1305 #define GRADIENT_FILL_OP_FLAG 0xff
1306 #define COLORMATCHTOTARGET_EMBEDED 0x00000001
1307 #define CREATECOLORSPACE_EMBEDED 0x00000001
1308 #define SETICMPROFILE_EMBEDED 0x00000001
1309 #endif
1311 #define DISPLAY_DEVICE_ATTACHED_TO_DESKTOP 0x00000001
1312 #define DISPLAY_DEVICE_MULTI_DRIVER 0x00000002
1313 #define DISPLAY_DEVICE_PRIMARY_DEVICE 0x00000004
1314 #define DISPLAY_DEVICE_MIRRORING_DRIVER 0x00000008
1315 #define DISPLAY_DEVICE_VGA_COMPATIBLE 0x00000010
1316 #define DISPLAY_DEVICE_REMOVABLE 0x00000020
1317 #define DISPLAY_DEVICE_MODESPRUNED 0x08000000
1319 #if (_WIN32_WINNT >= 0x0500)
1320 #define GGI_MARK_NONEXISTING_GLYPHS 1
1321 #endif
1323 #ifndef RC_INVOKED
1324 typedef struct _ABC {
1325 int abcA;
1326 UINT abcB;
1327 int abcC;
1328 } ABC,*LPABC;
1329 typedef struct _ABCFLOAT {
1330 FLOAT abcfA;
1331 FLOAT abcfB;
1332 FLOAT abcfC;
1333 } ABCFLOAT,*LPABCFLOAT;
1334 typedef struct tagBITMAP {
1335 LONG bmType;
1336 LONG bmWidth;
1337 LONG bmHeight;
1338 LONG bmWidthBytes;
1339 WORD bmPlanes;
1340 WORD bmBitsPixel;
1341 LPVOID bmBits;
1342 } BITMAP,*PBITMAP,*LPBITMAP;
1343 typedef struct tagBITMAPCOREHEADER {
1344 DWORD bcSize;
1345 WORD bcWidth;
1346 WORD bcHeight;
1347 WORD bcPlanes;
1348 WORD bcBitCount;
1349 } BITMAPCOREHEADER,*LPBITMAPCOREHEADER,*PBITMAPCOREHEADER;
1350 #pragma pack(push,1)
1351 typedef struct tagRGBTRIPLE {
1352 BYTE rgbtBlue;
1353 BYTE rgbtGreen;
1354 BYTE rgbtRed;
1355 } RGBTRIPLE,*LPRGBTRIPLE;
1356 #pragma pack(pop)
1357 #pragma pack(push,2)
1358 typedef struct tagBITMAPFILEHEADER {
1359 WORD bfType;
1360 DWORD bfSize;
1361 WORD bfReserved1;
1362 WORD bfReserved2;
1363 DWORD bfOffBits;
1364 } BITMAPFILEHEADER,*LPBITMAPFILEHEADER,*PBITMAPFILEHEADER;
1365 #pragma pack(pop)
1366 typedef struct _BITMAPCOREINFO {
1367 BITMAPCOREHEADER bmciHeader;
1368 RGBTRIPLE bmciColors[1];
1369 } BITMAPCOREINFO,*LPBITMAPCOREINFO,*PBITMAPCOREINFO;
1370 typedef struct tagBITMAPINFOHEADER{
1371 DWORD biSize;
1372 LONG biWidth;
1373 LONG biHeight;
1374 WORD biPlanes;
1375 WORD biBitCount;
1376 DWORD biCompression;
1377 DWORD biSizeImage;
1378 LONG biXPelsPerMeter;
1379 LONG biYPelsPerMeter;
1380 DWORD biClrUsed;
1381 DWORD biClrImportant;
1382 } BITMAPINFOHEADER,*LPBITMAPINFOHEADER,*PBITMAPINFOHEADER;
1383 typedef struct tagRGBQUAD {
1384 BYTE rgbBlue;
1385 BYTE rgbGreen;
1386 BYTE rgbRed;
1387 BYTE rgbReserved;
1388 } RGBQUAD,*LPRGBQUAD;
1389 typedef struct tagBITMAPINFO {
1390 BITMAPINFOHEADER bmiHeader;
1391 RGBQUAD bmiColors[1];
1392 } BITMAPINFO,*LPBITMAPINFO,*PBITMAPINFO;
1393 typedef long FXPT16DOT16,*LPFXPT16DOT16;
1394 typedef long FXPT2DOT30,*LPFXPT2DOT30;
1395 typedef struct tagCIEXYZ {
1396 FXPT2DOT30 ciexyzX;
1397 FXPT2DOT30 ciexyzY;
1398 FXPT2DOT30 ciexyzZ;
1399 } CIEXYZ,*LPCIEXYZ;
1400 typedef struct tagCIEXYZTRIPLE {
1401 CIEXYZ ciexyzRed;
1402 CIEXYZ ciexyzGreen;
1403 CIEXYZ ciexyzBlue;
1404 } CIEXYZTRIPLE,*LPCIEXYZTRIPLE;
1405 typedef struct {
1406 DWORD bV4Size;
1407 LONG bV4Width;
1408 LONG bV4Height;
1409 WORD bV4Planes;
1410 WORD bV4BitCount;
1411 DWORD bV4V4Compression;
1412 DWORD bV4SizeImage;
1413 LONG bV4XPelsPerMeter;
1414 LONG bV4YPelsPerMeter;
1415 DWORD bV4ClrUsed;
1416 DWORD bV4ClrImportant;
1417 DWORD bV4RedMask;
1418 DWORD bV4GreenMask;
1419 DWORD bV4BlueMask;
1420 DWORD bV4AlphaMask;
1421 DWORD bV4CSType;
1422 CIEXYZTRIPLE bV4Endpoints;
1423 DWORD bV4GammaRed;
1424 DWORD bV4GammaGreen;
1425 DWORD bV4GammaBlue;
1426 } BITMAPV4HEADER,*LPBITMAPV4HEADER,*PBITMAPV4HEADER;
1427 typedef struct {
1428 DWORD bV5Size;
1429 LONG bV5Width;
1430 LONG bV5Height;
1431 WORD bV5Planes;
1432 WORD bV5BitCount;
1433 DWORD bV5Compression;
1434 DWORD bV5SizeImage;
1435 LONG bV5XPelsPerMeter;
1436 LONG bV5YPelsPerMeter;
1437 DWORD bV5ClrUsed;
1438 DWORD bV5ClrImportant;
1439 DWORD bV5RedMask;
1440 DWORD bV5GreenMask;
1441 DWORD bV5BlueMask;
1442 DWORD bV5AlphaMask;
1443 DWORD bV5CSType;
1444 CIEXYZTRIPLE bV5Endpoints;
1445 DWORD bV5GammaRed;
1446 DWORD bV5GammaGreen;
1447 DWORD bV5GammaBlue;
1448 DWORD bV5Intent;
1449 DWORD bV5ProfileData;
1450 DWORD bV5ProfileSize;
1451 DWORD bV5Reserved;
1452 } BITMAPV5HEADER,*LPBITMAPV5HEADER,*PBITMAPV5HEADER;
1453 typedef struct tagFONTSIGNATURE {
1454 DWORD fsUsb[4];
1455 DWORD fsCsb[2];
1456 } FONTSIGNATURE,*LPFONTSIGNATURE;
1457 typedef struct {
1458 UINT ciCharset;
1459 UINT ciACP;
1460 FONTSIGNATURE fs;
1461 } CHARSETINFO,*LPCHARSETINFO;
1462 typedef struct tagCOLORADJUSTMENT {
1463 WORD caSize;
1464 WORD caFlags;
1465 WORD caIlluminantIndex;
1466 WORD caRedGamma;
1467 WORD caGreenGamma;
1468 WORD caBlueGamma;
1469 WORD caReferenceBlack;
1470 WORD caReferenceWhite;
1471 SHORT caContrast;
1472 SHORT caBrightness;
1473 SHORT caColorfulness;
1474 SHORT caRedGreenTint;
1475 } COLORADJUSTMENT,*LPCOLORADJUSTMENT;
1476 typedef struct _devicemodeA {
1477 BYTE dmDeviceName[CCHDEVICENAME];
1478 WORD dmSpecVersion;
1479 WORD dmDriverVersion;
1480 WORD dmSize;
1481 WORD dmDriverExtra;
1482 DWORD dmFields;
1483 _ANONYMOUS_UNION union {
1484 _ANONYMOUS_STRUCT struct {
1485 short dmOrientation;
1486 short dmPaperSize;
1487 short dmPaperLength;
1488 short dmPaperWidth;
1489 short dmScale;
1490 short dmCopies;
1491 short dmDefaultSource;
1492 short dmPrintQuality;
1493 } DUMMYSTRUCTNAME;
1494 POINTL dmPosition;
1495 DWORD dmDisplayOrientation;
1496 DWORD dmDisplayFixedOutput;
1497 } DUMMYUNIONNAME;
1499 short dmColor;
1500 short dmDuplex;
1501 short dmYResolution;
1502 short dmTTOption;
1503 short dmCollate;
1504 BYTE dmFormName[CCHFORMNAME];
1505 WORD dmLogPixels;
1506 DWORD dmBitsPerPel;
1507 DWORD dmPelsWidth;
1508 DWORD dmPelsHeight;
1509 _ANONYMOUS_UNION union {
1510 DWORD dmDisplayFlags;
1511 DWORD dmNup;
1512 } DUMMYUNIONNAME2;
1513 DWORD dmDisplayFrequency;
1514 #if(WINVER >= 0x0400)
1515 DWORD dmICMMethod;
1516 DWORD dmICMIntent;
1517 DWORD dmMediaType;
1518 DWORD dmDitherType;
1519 DWORD dmReserved1;
1520 DWORD dmReserved2;
1521 #if (WINVER >= 0x0500) || (_WIN32_WINNT >= 0x0400)
1522 DWORD dmPanningWidth;
1523 DWORD dmPanningHeight;
1524 #endif
1525 #endif /* WINVER >= 0x0400 */
1526 } DEVMODEA,*LPDEVMODEA,*PDEVMODEA;
1527 typedef struct _devicemodeW {
1528 WCHAR dmDeviceName[CCHDEVICENAME];
1529 WORD dmSpecVersion;
1530 WORD dmDriverVersion;
1531 WORD dmSize;
1532 WORD dmDriverExtra;
1533 DWORD dmFields;
1534 _ANONYMOUS_UNION union {
1535 _ANONYMOUS_STRUCT struct {
1536 short dmOrientation;
1537 short dmPaperSize;
1538 short dmPaperLength;
1539 short dmPaperWidth;
1540 short dmScale;
1541 short dmCopies;
1542 short dmDefaultSource;
1543 short dmPrintQuality;
1544 } DUMMYSTRUCTNAME;
1545 POINTL dmPosition;
1546 DWORD dmDisplayOrientation;
1547 DWORD dmDisplayFixedOutput;
1548 } DUMMYUNIONNAME;
1550 short dmColor;
1551 short dmDuplex;
1552 short dmYResolution;
1553 short dmTTOption;
1554 short dmCollate;
1555 WCHAR dmFormName[CCHFORMNAME];
1556 WORD dmLogPixels;
1557 DWORD dmBitsPerPel;
1558 DWORD dmPelsWidth;
1559 DWORD dmPelsHeight;
1560 _ANONYMOUS_UNION union {
1561 DWORD dmDisplayFlags;
1562 DWORD dmNup;
1563 } DUMMYUNIONNAME2;
1564 DWORD dmDisplayFrequency;
1565 #if(WINVER >= 0x0400)
1566 DWORD dmICMMethod;
1567 DWORD dmICMIntent;
1568 DWORD dmMediaType;
1569 DWORD dmDitherType;
1570 DWORD dmReserved1;
1571 DWORD dmReserved2;
1572 #if (WINVER >= 0x0500) || (_WIN32_WINNT >= 0x0400)
1573 DWORD dmPanningWidth;
1574 DWORD dmPanningHeight;
1575 #endif
1576 #endif /* WINVER >= 0x0400 */
1577 } DEVMODEW,*LPDEVMODEW,*PDEVMODEW;
1578 typedef struct tagDIBSECTION {
1579 BITMAP dsBm;
1580 BITMAPINFOHEADER dsBmih;
1581 DWORD dsBitfields[3];
1582 HANDLE dshSection;
1583 DWORD dsOffset;
1584 } DIBSECTION;
1585 typedef struct _DOCINFOA {
1586 int cbSize;
1587 LPCSTR lpszDocName;
1588 LPCSTR lpszOutput;
1589 LPCSTR lpszDatatype;
1590 DWORD fwType;
1591 } DOCINFOA,*LPDOCINFOA;
1592 typedef struct _DOCINFOW {
1593 int cbSize;
1594 LPCWSTR lpszDocName;
1595 LPCWSTR lpszOutput;
1596 LPCWSTR lpszDatatype;
1597 DWORD fwType;
1598 } DOCINFOW,*LPDOCINFOW;
1599 typedef struct tagEMR {
1600 DWORD iType;
1601 DWORD nSize;
1602 } EMR,*PEMR;
1603 typedef struct tagEMRANGLEARC {
1604 EMR emr;
1605 POINTL ptlCenter;
1606 DWORD nRadius;
1607 FLOAT eStartAngle;
1608 FLOAT eSweepAngle;
1609 } EMRANGLEARC,*PEMRANGLEARC;
1610 typedef struct tagEMRARC {
1611 EMR emr;
1612 RECTL rclBox;
1613 POINTL ptlStart;
1614 POINTL ptlEnd;
1615 } EMRARC,*PEMRARC,EMRARCTO,*PEMRARCTO,EMRCHORD,*PEMRCHORD,EMRPIE,*PEMRPIE;
1616 typedef struct _XFORM {
1617 FLOAT eM11;
1618 FLOAT eM12;
1619 FLOAT eM21;
1620 FLOAT eM22;
1621 FLOAT eDx;
1622 FLOAT eDy;
1623 } XFORM,*PXFORM,*LPXFORM;
1624 typedef struct tagEMRBITBLT {
1625 EMR emr;
1626 RECTL rclBounds;
1627 LONG xDest;
1628 LONG yDest;
1629 LONG cxDest;
1630 LONG cyDest;
1631 DWORD dwRop;
1632 LONG xSrc;
1633 LONG ySrc;
1634 XFORM xformSrc;
1635 COLORREF crBkColorSrc;
1636 DWORD iUsageSrc;
1637 DWORD offBmiSrc;
1638 DWORD offBitsSrc;
1639 DWORD cbBitsSrc;
1640 } EMRBITBLT,*PEMRBITBLT;
1641 typedef struct tagLOGBRUSH {
1642 UINT lbStyle;
1643 COLORREF lbColor;
1644 LONG lbHatch;
1645 } LOGBRUSH,*PLOGBRUSH,*LPLOGBRUSH;
1646 typedef LOGBRUSH PATTERN,*PPATTERN,*LPPATTERN;
1647 typedef struct tagEMRCREATEBRUSHINDIRECT {
1648 EMR emr;
1649 DWORD ihBrush;
1650 LOGBRUSH lb;
1651 } EMRCREATEBRUSHINDIRECT,*PEMRCREATEBRUSHINDIRECT;
1652 typedef LONG LCSCSTYPE;
1653 typedef LONG LCSGAMUTMATCH;
1654 typedef struct tagLOGCOLORSPACEA {
1655 DWORD lcsSignature;
1656 DWORD lcsVersion;
1657 DWORD lcsSize;
1658 LCSCSTYPE lcsCSType;
1659 LCSGAMUTMATCH lcsIntent;
1660 CIEXYZTRIPLE lcsEndpoints;
1661 DWORD lcsGammaRed;
1662 DWORD lcsGammaGreen;
1663 DWORD lcsGammaBlue;
1664 CHAR lcsFilename[MAX_PATH];
1665 } LOGCOLORSPACEA,*LPLOGCOLORSPACEA;
1666 typedef struct tagLOGCOLORSPACEW {
1667 DWORD lcsSignature;
1668 DWORD lcsVersion;
1669 DWORD lcsSize;
1670 LCSCSTYPE lcsCSType;
1671 LCSGAMUTMATCH lcsIntent;
1672 CIEXYZTRIPLE lcsEndpoints;
1673 DWORD lcsGammaRed;
1674 DWORD lcsGammaGreen;
1675 DWORD lcsGammaBlue;
1676 WCHAR lcsFilename[MAX_PATH];
1677 } LOGCOLORSPACEW,*LPLOGCOLORSPACEW;
1678 typedef struct tagEMRCREATECOLORSPACE {
1679 EMR emr;
1680 DWORD ihCS;
1681 LOGCOLORSPACEW lcs;
1682 } EMRCREATECOLORSPACE,*PEMRCREATECOLORSPACE;
1683 typedef struct tagEMRCREATEDIBPATTERNBRUSHPT {
1684 EMR emr;
1685 DWORD ihBrush;
1686 DWORD iUsage;
1687 DWORD offBmi;
1688 DWORD cbBmi;
1689 DWORD offBits;
1690 DWORD cbBits;
1691 } EMRCREATEDIBPATTERNBRUSHPT,*PEMRCREATEDIBPATTERNBRUSHPT;
1692 typedef struct tagEMRCREATEMONOBRUSH {
1693 EMR emr;
1694 DWORD ihBrush;
1695 DWORD iUsage;
1696 DWORD offBmi;
1697 DWORD cbBmi;
1698 DWORD offBits;
1699 DWORD cbBits;
1700 } EMRCREATEMONOBRUSH,*PEMRCREATEMONOBRUSH;
1701 typedef struct tagPALETTEENTRY {
1702 BYTE peRed;
1703 BYTE peGreen;
1704 BYTE peBlue;
1705 BYTE peFlags;
1706 } PALETTEENTRY,*LPPALETTEENTRY,*PPALETTEENTRY;
1707 typedef struct tagLOGPALETTE {
1708 WORD palVersion;
1709 WORD palNumEntries;
1710 PALETTEENTRY palPalEntry[1];
1711 } LOGPALETTE,*NPLOGPALETTE,*PLOGPALETTE,*LPLOGPALETTE;
1712 typedef struct tagEMRCREATEPALETTE {
1713 EMR emr;
1714 DWORD ihPal;
1715 LOGPALETTE lgpl;
1716 } EMRCREATEPALETTE,*PEMRCREATEPALETTE;
1717 typedef struct tagLOGPEN {
1718 UINT lopnStyle;
1719 POINT lopnWidth;
1720 COLORREF lopnColor;
1721 } LOGPEN,*PLOGPEN,*LPLOGPEN;
1722 typedef struct tagEMRCREATEPEN {
1723 EMR emr;
1724 DWORD ihPen;
1725 LOGPEN lopn;
1726 } EMRCREATEPEN,*PEMRCREATEPEN;
1727 typedef struct tagEMRELLIPSE {
1728 EMR emr;
1729 RECTL rclBox;
1730 } EMRELLIPSE,*PEMRELLIPSE,EMRRECTANGLE,*PEMRRECTANGLE;
1731 typedef struct tagEMREOF {
1732 EMR emr;
1733 DWORD nPalEntries;
1734 DWORD offPalEntries;
1735 DWORD nSizeLast;
1736 } EMREOF,*PEMREOF;
1737 typedef struct tagEMREXCLUDECLIPRECT {
1738 EMR emr;
1739 RECTL rclClip;
1740 } EMREXCLUDECLIPRECT,*PEMREXCLUDECLIPRECT,EMRINTERSECTCLIPRECT,*PEMRINTERSECTCLIPRECT;
1741 typedef struct tagPANOSE {
1742 BYTE bFamilyType;
1743 BYTE bSerifStyle;
1744 BYTE bWeight;
1745 BYTE bProportion;
1746 BYTE bContrast;
1747 BYTE bStrokeVariation;
1748 BYTE bArmStyle;
1749 BYTE bLetterform;
1750 BYTE bMidline;
1751 BYTE bXHeight;
1752 } PANOSE;
1753 typedef struct tagLOGFONTA {
1754 LONG lfHeight;
1755 LONG lfWidth;
1756 LONG lfEscapement;
1757 LONG lfOrientation;
1758 LONG lfWeight;
1759 BYTE lfItalic;
1760 BYTE lfUnderline;
1761 BYTE lfStrikeOut;
1762 BYTE lfCharSet;
1763 BYTE lfOutPrecision;
1764 BYTE lfClipPrecision;
1765 BYTE lfQuality;
1766 BYTE lfPitchAndFamily;
1767 CHAR lfFaceName[LF_FACESIZE];
1768 } LOGFONTA,*PLOGFONTA,*LPLOGFONTA;
1769 typedef struct tagLOGFONTW {
1770 LONG lfHeight;
1771 LONG lfWidth;
1772 LONG lfEscapement;
1773 LONG lfOrientation;
1774 LONG lfWeight;
1775 BYTE lfItalic;
1776 BYTE lfUnderline;
1777 BYTE lfStrikeOut;
1778 BYTE lfCharSet;
1779 BYTE lfOutPrecision;
1780 BYTE lfClipPrecision;
1781 BYTE lfQuality;
1782 BYTE lfPitchAndFamily;
1783 WCHAR lfFaceName[LF_FACESIZE];
1784 } LOGFONTW,*PLOGFONTW,*LPLOGFONTW;
1785 typedef struct tagEXTLOGFONTA {
1786 LOGFONTA elfLogFont;
1787 BYTE elfFullName[LF_FULLFACESIZE];
1788 BYTE elfStyle[LF_FACESIZE];
1789 DWORD elfVersion;
1790 DWORD elfStyleSize;
1791 DWORD elfMatch;
1792 DWORD elfReserved;
1793 BYTE elfVendorId[ELF_VENDOR_SIZE];
1794 DWORD elfCulture;
1795 PANOSE elfPanose;
1796 } EXTLOGFONTA,*PEXTLOGFONTA,*LPEXTLOGFONTA;
1797 typedef struct tagEXTLOGFONTW {
1798 LOGFONTW elfLogFont;
1799 WCHAR elfFullName[LF_FULLFACESIZE];
1800 WCHAR elfStyle[LF_FACESIZE];
1801 DWORD elfVersion;
1802 DWORD elfStyleSize;
1803 DWORD elfMatch;
1804 DWORD elfReserved;
1805 BYTE elfVendorId[ELF_VENDOR_SIZE];
1806 DWORD elfCulture;
1807 PANOSE elfPanose;
1808 } EXTLOGFONTW,*PEXTLOGFONTW,*LPEXTLOGFONTW;
1809 typedef struct tagEMREXTCREATEFONTINDIRECTW {
1810 EMR emr;
1811 DWORD ihFont;
1812 EXTLOGFONTW elfw;
1813 } EMREXTCREATEFONTINDIRECTW,*PEMREXTCREATEFONTINDIRECTW;
1814 typedef struct tagEXTLOGPEN {
1815 UINT elpPenStyle;
1816 UINT elpWidth;
1817 UINT elpBrushStyle;
1818 COLORREF elpColor;
1819 LONG elpHatch;
1820 DWORD elpNumEntries;
1821 DWORD elpStyleEntry[1];
1822 } EXTLOGPEN,*PEXTLOGPEN,*LPEXTLOGPEN;
1823 typedef struct tagEMREXTCREATEPEN {
1824 EMR emr;
1825 DWORD ihPen;
1826 DWORD offBmi;
1827 DWORD cbBmi;
1828 DWORD offBits;
1829 DWORD cbBits;
1830 EXTLOGPEN elp;
1831 } EMREXTCREATEPEN,*PEMREXTCREATEPEN;
1832 typedef struct tagEMREXTFLOODFILL {
1833 EMR emr;
1834 POINTL ptlStart;
1835 COLORREF crColor;
1836 DWORD iMode;
1837 } EMREXTFLOODFILL,*PEMREXTFLOODFILL;
1838 typedef struct tagEMREXTSELECTCLIPRGN {
1839 EMR emr;
1840 DWORD cbRgnData;
1841 DWORD iMode;
1842 BYTE RgnData[1];
1843 } EMREXTSELECTCLIPRGN,*PEMREXTSELECTCLIPRGN;
1844 typedef struct tagEMRTEXT {
1845 POINTL ptlReference;
1846 DWORD nChars;
1847 DWORD offString;
1848 DWORD fOptions;
1849 RECTL rcl;
1850 DWORD offDx;
1851 } EMRTEXT,*PEMRTEXT;
1852 typedef struct tagEMREXTTEXTOUTA {
1853 EMR emr;
1854 RECTL rclBounds;
1855 DWORD iGraphicsMode;
1856 FLOAT exScale;
1857 FLOAT eyScale;
1858 EMRTEXT emrtext;
1859 } EMREXTTEXTOUTA,*PEMREXTTEXTOUTA,EMREXTTEXTOUTW,*PEMREXTTEXTOUTW;
1860 typedef struct tagEMRFILLPATH {
1861 EMR emr;
1862 RECTL rclBounds;
1863 } EMRFILLPATH,*PEMRFILLPATH,EMRSTROKEANDFILLPATH,*PEMRSTROKEANDFILLPATH,EMRSTROKEPATH,*PEMRSTROKEPATH;
1864 typedef struct tagEMRFILLRGN {
1865 EMR emr;
1866 RECTL rclBounds;
1867 DWORD cbRgnData;
1868 DWORD ihBrush;
1869 BYTE RgnData[1];
1870 } EMRFILLRGN,*PEMRFILLRGN;
1871 typedef struct tagEMRFORMAT {
1872 DWORD dSignature;
1873 DWORD nVersion;
1874 DWORD cbData;
1875 DWORD offData;
1876 } EMRFORMAT;
1877 typedef struct tagEMRFRAMERGN {
1878 EMR emr;
1879 RECTL rclBounds;
1880 DWORD cbRgnData;
1881 DWORD ihBrush;
1882 SIZEL szlStroke;
1883 BYTE RgnData[1];
1884 } EMRFRAMERGN,*PEMRFRAMERGN;
1885 typedef struct tagEMRGDICOMMENT {
1886 EMR emr;
1887 DWORD cbData;
1888 BYTE Data[1];
1889 } EMRGDICOMMENT,*PEMRGDICOMMENT;
1890 typedef struct tagEMRINVERTRGN {
1891 EMR emr;
1892 RECTL rclBounds;
1893 DWORD cbRgnData;
1894 BYTE RgnData[1];
1895 } EMRINVERTRGN,*PEMRINVERTRGN,EMRPAINTRGN,*PEMRPAINTRGN;
1896 typedef struct tagEMRLINETO {
1897 EMR emr;
1898 POINTL ptl;
1899 } EMRLINETO,*PEMRLINETO,EMRMOVETOEX,*PEMRMOVETOEX;
1900 typedef struct tagEMRMASKBLT {
1901 EMR emr;
1902 RECTL rclBounds;
1903 LONG xDest;
1904 LONG yDest;
1905 LONG cxDest;
1906 LONG cyDest;
1907 DWORD dwRop;
1908 LONG xSrc;
1909 LONG ySrc;
1910 XFORM xformSrc;
1911 COLORREF crBkColorSrc;
1912 DWORD iUsageSrc;
1913 DWORD offBmiSrc;
1914 DWORD cbBmiSrc;
1915 DWORD offBitsSrc;
1916 DWORD cbBitsSrc;
1917 LONG xMask;
1918 LONG yMask;
1919 DWORD iUsageMask;
1920 DWORD offBmiMask;
1921 DWORD cbBmiMask;
1922 DWORD offBitsMask;
1923 DWORD cbBitsMask;
1924 } EMRMASKBLT,*PEMRMASKBLT;
1925 typedef struct tagEMRMODIFYWORLDTRANSFORM {
1926 EMR emr;
1927 XFORM xform;
1928 DWORD iMode;
1929 } EMRMODIFYWORLDTRANSFORM,*PEMRMODIFYWORLDTRANSFORM;
1930 typedef struct tagEMROFFSETCLIPRGN {
1931 EMR emr;
1932 POINTL ptlOffset;
1933 } EMROFFSETCLIPRGN,*PEMROFFSETCLIPRGN;
1934 typedef struct tagEMRPLGBLT {
1935 EMR emr;
1936 RECTL rclBounds;
1937 POINTL aptlDest[3];
1938 LONG xSrc;
1939 LONG ySrc;
1940 LONG cxSrc;
1941 LONG cySrc;
1942 XFORM xformSrc;
1943 COLORREF crBkColorSrc;
1944 DWORD iUsageSrc;
1945 DWORD offBmiSrc;
1946 DWORD cbBmiSrc;
1947 DWORD offBitsSrc;
1948 DWORD cbBitsSrc;
1949 LONG xMask;
1950 LONG yMask;
1951 DWORD iUsageMask;
1952 DWORD offBmiMask;
1953 DWORD cbBmiMask;
1954 DWORD offBitsMask;
1955 DWORD cbBitsMask;
1956 } EMRPLGBLT,*PEMRPLGBLT;
1957 typedef struct tagEMRPOLYDRAW {
1958 EMR emr;
1959 RECTL rclBounds;
1960 DWORD cptl;
1961 POINTL aptl[1];
1962 BYTE abTypes[1];
1963 } EMRPOLYDRAW,*PEMRPOLYDRAW;
1964 typedef struct tagEMRPOLYDRAW16 {
1965 EMR emr;
1966 RECTL rclBounds;
1967 DWORD cpts;
1968 POINTS apts[1];
1969 BYTE abTypes[1];
1970 } EMRPOLYDRAW16,*PEMRPOLYDRAW16;
1971 typedef struct tagEMRPOLYLINE {
1972 EMR emr;
1973 RECTL rclBounds;
1974 DWORD cptl;
1975 POINTL aptl[1];
1976 } EMRPOLYLINE,*PEMRPOLYLINE,EMRPOLYBEZIER,*PEMRPOLYBEZIER,EMRPOLYGON,*PEMRPOLYGON,EMRPOLYBEZIERTO,*PEMRPOLYBEZIERTO,EMRPOLYLINETO,*PEMRPOLYLINETO;
1977 typedef struct tagEMRPOLYLINE16 {
1978 EMR emr;
1979 RECTL rclBounds;
1980 DWORD cpts;
1981 POINTL apts[1];
1982 } EMRPOLYLINE16,*PEMRPOLYLINE16,EMRPOLYBEZIER16,*PEMRPOLYBEZIER16,EMRPOLYGON16,*PEMRPOLYGON16,EMRPOLYBEZIERTO16,*PEMRPOLYBEZIERTO16,EMRPOLYLINETO16,*PEMRPOLYLINETO16;
1983 typedef struct tagEMRPOLYPOLYLINE {
1984 EMR emr;
1985 RECTL rclBounds;
1986 DWORD nPolys;
1987 DWORD cptl;
1988 DWORD aPolyCounts[1];
1989 POINTL aptl[1];
1990 } EMRPOLYPOLYLINE,*PEMRPOLYPOLYLINE,EMRPOLYPOLYGON,*PEMRPOLYPOLYGON;
1991 typedef struct tagEMRPOLYPOLYLINE16 {
1992 EMR emr;
1993 RECTL rclBounds;
1994 DWORD nPolys;
1995 DWORD cpts;
1996 DWORD aPolyCounts[1];
1997 POINTS apts[1];
1998 } EMRPOLYPOLYLINE16,*PEMRPOLYPOLYLINE16,EMRPOLYPOLYGON16,*PEMRPOLYPOLYGON16;
1999 typedef struct tagEMRPOLYTEXTOUTA {
2000 EMR emr;
2001 RECTL rclBounds;
2002 DWORD iGraphicsMode;
2003 FLOAT exScale;
2004 FLOAT eyScale;
2005 LONG cStrings;
2006 EMRTEXT aemrtext[1];
2007 } EMRPOLYTEXTOUTA,*PEMRPOLYTEXTOUTA,EMRPOLYTEXTOUTW,*PEMRPOLYTEXTOUTW;
2008 typedef struct tagEMRRESIZEPALETTE {
2009 EMR emr;
2010 DWORD ihPal;
2011 DWORD cEntries;
2012 } EMRRESIZEPALETTE,*PEMRRESIZEPALETTE;
2013 typedef struct tagEMRRESTOREDC {
2014 EMR emr;
2015 LONG iRelative;
2016 } EMRRESTOREDC,*PEMRRESTOREDC;
2017 typedef struct tagEMRROUNDRECT {
2018 EMR emr;
2019 RECTL rclBox;
2020 SIZEL szlCorner;
2021 } EMRROUNDRECT,*PEMRROUNDRECT;
2022 typedef struct tagEMRSCALEVIEWPORTEXTEX {
2023 EMR emr;
2024 LONG xNum;
2025 LONG xDenom;
2026 LONG yNum;
2027 LONG yDenom;
2028 } EMRSCALEVIEWPORTEXTEX,*PEMRSCALEVIEWPORTEXTEX,EMRSCALEWINDOWEXTEX,*PEMRSCALEWINDOWEXTEX;
2029 typedef struct tagEMRSELECTCOLORSPACE {
2030 EMR emr;
2031 DWORD ihCS;
2032 } EMRSELECTCOLORSPACE,*PEMRSELECTCOLORSPACE,EMRDELETECOLORSPACE,*PEMRDELETECOLORSPACE;
2033 typedef struct tagEMRSELECTOBJECT {
2034 EMR emr;
2035 DWORD ihObject;
2036 } EMRSELECTOBJECT,*PEMRSELECTOBJECT,EMRDELETEOBJECT,*PEMRDELETEOBJECT;
2037 typedef struct tagEMRSELECTPALETTE {
2038 EMR emr;
2039 DWORD ihPal;
2040 } EMRSELECTPALETTE,*PEMRSELECTPALETTE;
2041 typedef struct tagEMRSETARCDIRECTION {
2042 EMR emr;
2043 DWORD iArcDirection;
2044 } EMRSETARCDIRECTION,*PEMRSETARCDIRECTION;
2045 typedef struct tagEMRSETTEXTCOLOR {
2046 EMR emr;
2047 COLORREF crColor;
2048 } EMRSETBKCOLOR,*PEMRSETBKCOLOR,EMRSETTEXTCOLOR,*PEMRSETTEXTCOLOR;
2049 typedef struct tagEMRSETCOLORADJUSTMENT {
2050 EMR emr;
2051 COLORADJUSTMENT ColorAdjustment;
2052 } EMRSETCOLORADJUSTMENT,*PEMRSETCOLORADJUSTMENT;
2053 typedef struct tagEMRSETDIBITSTODEVICE {
2054 EMR emr;
2055 RECTL rclBounds;
2056 LONG xDest;
2057 LONG yDest;
2058 LONG xSrc;
2059 LONG ySrc;
2060 LONG cxSrc;
2061 LONG cySrc;
2062 DWORD offBmiSrc;
2063 DWORD cbBmiSrc;
2064 DWORD offBitsSrc;
2065 DWORD cbBitsSrc;
2066 DWORD iUsageSrc;
2067 DWORD iStartScan;
2068 DWORD cScans;
2069 } EMRSETDIBITSTODEVICE,*PEMRSETDIBITSTODEVICE;
2070 typedef struct tagEMRSETMAPPERFLAGS {
2071 EMR emr;
2072 DWORD dwFlags;
2073 } EMRSETMAPPERFLAGS,*PEMRSETMAPPERFLAGS;
2074 typedef struct tagEMRSETMITERLIMIT {
2075 EMR emr;
2076 FLOAT eMiterLimit;
2077 } EMRSETMITERLIMIT,*PEMRSETMITERLIMIT;
2078 typedef struct tagEMRSETPALETTEENTRIES {
2079 EMR emr;
2080 DWORD ihPal;
2081 DWORD iStart;
2082 DWORD cEntries;
2083 PALETTEENTRY aPalEntries[1];
2084 } EMRSETPALETTEENTRIES,*PEMRSETPALETTEENTRIES;
2085 typedef struct tagEMRSETPIXELV {
2086 EMR emr;
2087 POINTL ptlPixel;
2088 COLORREF crColor;
2089 } EMRSETPIXELV,*PEMRSETPIXELV;
2090 typedef struct tagEMRSETVIEWPORTEXTEX {
2091 EMR emr;
2092 SIZEL szlExtent;
2093 } EMRSETVIEWPORTEXTEX,*PEMRSETVIEWPORTEXTEX,EMRSETWINDOWEXTEX,*PEMRSETWINDOWEXTEX;
2094 typedef struct tagEMRSETVIEWPORTORGEX {
2095 EMR emr;
2096 POINTL ptlOrigin;
2097 } EMRSETVIEWPORTORGEX,*PEMRSETVIEWPORTORGEX,EMRSETWINDOWORGEX,*PEMRSETWINDOWORGEX,EMRSETBRUSHORGEX,*PEMRSETBRUSHORGEX;
2098 typedef struct tagEMRSETWORLDTRANSFORM {
2099 EMR emr;
2100 XFORM xform;
2101 } EMRSETWORLDTRANSFORM,*PEMRSETWORLDTRANSFORM;
2102 typedef struct tagEMRSTRETCHBLT {
2103 EMR emr;
2104 RECTL rclBounds;
2105 LONG xDest;
2106 LONG yDest;
2107 LONG cxDest;
2108 LONG cyDest;
2109 DWORD dwRop;
2110 LONG xSrc;
2111 LONG ySrc;
2112 XFORM xformSrc;
2113 COLORREF crBkColorSrc;
2114 DWORD iUsageSrc;
2115 DWORD offBmiSrc;
2116 DWORD cbBmiSrc;
2117 DWORD offBitsSrc;
2118 DWORD cbBitsSrc;
2119 LONG cxSrc;
2120 LONG cySrc;
2121 } EMRSTRETCHBLT,*PEMRSTRETCHBLT;
2122 typedef struct tagEMRSTRETCHDIBITS {
2123 EMR emr;
2124 RECTL rclBounds;
2125 LONG xDest;
2126 LONG yDest;
2127 LONG xSrc;
2128 LONG ySrc;
2129 LONG cxSrc;
2130 LONG cySrc;
2131 DWORD offBmiSrc;
2132 DWORD cbBmiSrc;
2133 DWORD offBitsSrc;
2134 DWORD cbBitsSrc;
2135 DWORD iUsageSrc;
2136 DWORD dwRop;
2137 LONG cxDest;
2138 LONG cyDest;
2139 } EMRSTRETCHDIBITS,*PEMRSTRETCHDIBITS;
2140 typedef struct tagABORTPATH {
2141 EMR emr;
2142 } EMRABORTPATH,*PEMRABORTPATH,EMRBEGINPATH,*PEMRBEGINPATH,EMRENDPATH,*PEMRENDPATH,EMRCLOSEFIGURE,*PEMRCLOSEFIGURE,EMRFLATTENPATH,*PEMRFLATTENPATH,EMRWIDENPATH,*PEMRWIDENPATH,EMRSETMETARGN,*PEMRSETMETARGN,EMRSAVEDC,*PEMRSAVEDC,EMRREALIZEPALETTE,*PEMRREALIZEPALETTE;
2143 typedef struct tagEMRSELECTCLIPPATH {
2144 EMR emr;
2145 DWORD iMode;
2146 } EMRSELECTCLIPPATH,*PEMRSELECTCLIPPATH,EMRSETBKMODE,*PEMRSETBKMODE,EMRSETMAPMODE,*PEMRSETMAPMODE,EMRSETPOLYFILLMODE,*PEMRSETPOLYFILLMODE,EMRSETROP2,*PEMRSETROP2,EMRSETSTRETCHBLTMODE,*PEMRSETSTRETCHBLTMODE,EMRSETTEXTALIGN,*PEMRSETTEXTALIGN,EMRENABLEICM,*PEMRENABLEICM;
2147 #pragma pack(push,2)
2148 typedef struct tagMETAHEADER {
2149 WORD mtType;
2150 WORD mtHeaderSize;
2151 WORD mtVersion;
2152 DWORD mtSize;
2153 WORD mtNoObjects;
2154 DWORD mtMaxRecord;
2155 WORD mtNoParameters;
2156 } METAHEADER,*PMETAHEADER,*LPMETAHEADER;
2157 #pragma pack(pop)
2158 typedef struct tagENHMETAHEADER {
2159 DWORD iType;
2160 DWORD nSize;
2161 RECTL rclBounds;
2162 RECTL rclFrame;
2163 DWORD dSignature;
2164 DWORD nVersion;
2165 DWORD nBytes;
2166 DWORD nRecords;
2167 WORD nHandles;
2168 WORD sReserved;
2169 DWORD nDescription;
2170 DWORD offDescription;
2171 DWORD nPalEntries;
2172 SIZEL szlDevice;
2173 SIZEL szlMillimeters;
2174 #if (WINVER >= 0x0400)
2175 DWORD cbPixelFormat;
2176 DWORD offPixelFormat;
2177 DWORD bOpenGL;
2178 #endif
2179 #if (WINVER >= 0x0500)
2180 SIZEL szlMicrometers;
2181 #endif
2182 } ENHMETAHEADER,*LPENHMETAHEADER;
2183 typedef struct tagMETARECORD {
2184 DWORD rdSize;
2185 WORD rdFunction;
2186 WORD rdParm[1];
2187 } METARECORD,*PMETARECORD,*LPMETARECORD;
2188 typedef struct tagENHMETARECORD {
2189 DWORD iType;
2190 DWORD nSize;
2191 DWORD dParm[1];
2192 } ENHMETARECORD,*LPENHMETARECORD;
2193 typedef struct tagHANDLETABLE {
2194 HGDIOBJ objectHandle[1];
2195 } HANDLETABLE,*LPHANDLETABLE;
2196 typedef struct tagTEXTMETRICA {
2197 LONG tmHeight;
2198 LONG tmAscent;
2199 LONG tmDescent;
2200 LONG tmInternalLeading;
2201 LONG tmExternalLeading;
2202 LONG tmAveCharWidth;
2203 LONG tmMaxCharWidth;
2204 LONG tmWeight;
2205 LONG tmOverhang;
2206 LONG tmDigitizedAspectX;
2207 LONG tmDigitizedAspectY;
2208 BYTE tmFirstChar;
2209 BYTE tmLastChar;
2210 BYTE tmDefaultChar;
2211 BYTE tmBreakChar;
2212 BYTE tmItalic;
2213 BYTE tmUnderlined;
2214 BYTE tmStruckOut;
2215 BYTE tmPitchAndFamily;
2216 BYTE tmCharSet;
2217 } TEXTMETRICA,*PTEXTMETRICA,*LPTEXTMETRICA;
2218 typedef struct tagTEXTMETRICW {
2219 LONG tmHeight;
2220 LONG tmAscent;
2221 LONG tmDescent;
2222 LONG tmInternalLeading;
2223 LONG tmExternalLeading;
2224 LONG tmAveCharWidth;
2225 LONG tmMaxCharWidth;
2226 LONG tmWeight;
2227 LONG tmOverhang;
2228 LONG tmDigitizedAspectX;
2229 LONG tmDigitizedAspectY;
2230 WCHAR tmFirstChar;
2231 WCHAR tmLastChar;
2232 WCHAR tmDefaultChar;
2233 WCHAR tmBreakChar;
2234 BYTE tmItalic;
2235 BYTE tmUnderlined;
2236 BYTE tmStruckOut;
2237 BYTE tmPitchAndFamily;
2238 BYTE tmCharSet;
2239 } TEXTMETRICW,*PTEXTMETRICW,*LPTEXTMETRICW;
2240 typedef struct _RGNDATAHEADER {
2241 DWORD dwSize;
2242 DWORD iType;
2243 DWORD nCount;
2244 DWORD nRgnSize;
2245 RECT rcBound;
2246 } RGNDATAHEADER;
2247 typedef struct _RGNDATA {
2248 RGNDATAHEADER rdh;
2249 char Buffer[1];
2250 } RGNDATA,*PRGNDATA, *LPRGNDATA;
2251 /* for GetRandomRgn */
2252 #define SYSRGN 4
2253 typedef struct tagGCP_RESULTSA {
2254 DWORD lStructSize;
2255 LPSTR lpOutString;
2256 UINT *lpOrder;
2257 INT *lpDx;
2258 INT *lpCaretPos;
2259 LPSTR lpClass;
2260 LPWSTR lpGlyphs;
2261 UINT nGlyphs;
2262 UINT nMaxFit;
2263 } GCP_RESULTSA,*LPGCP_RESULTSA;
2264 typedef struct tagGCP_RESULTSW {
2265 DWORD lStructSize;
2266 LPWSTR lpOutString;
2267 UINT *lpOrder;
2268 INT *lpDx;
2269 INT *lpCaretPos;
2270 LPWSTR lpClass;
2271 LPWSTR lpGlyphs;
2272 UINT nGlyphs;
2273 UINT nMaxFit;
2274 } GCP_RESULTSW,*LPGCP_RESULTSW;
2275 typedef struct _GLYPHMETRICS {
2276 UINT gmBlackBoxX;
2277 UINT gmBlackBoxY;
2278 POINT gmptGlyphOrigin;
2279 short gmCellIncX;
2280 short gmCellIncY;
2281 } GLYPHMETRICS,*LPGLYPHMETRICS;
2282 #if (_WIN32_WINNT >= 0x0500)
2283 typedef struct tagWCRANGE
2285 WCHAR wcLow;
2286 USHORT cGlyphs;
2287 } WCRANGE, *PWCRANGE, *LPWCRANGE;
2288 typedef struct tagGLYPHSET
2290 DWORD cbThis;
2291 DWORD flAccel;
2292 DWORD cGlyphsSupported;
2293 DWORD cRanges;
2294 WCRANGE ranges[1];
2295 } GLYPHSET, *PGLYPHSET, *LPGLYPHSET;
2296 #endif
2297 typedef struct tagKERNINGPAIR {
2298 WORD wFirst;
2299 WORD wSecond;
2300 int iKernAmount;
2301 } KERNINGPAIR,*LPKERNINGPAIR;
2302 typedef struct _FIXED {
2303 WORD fract;
2304 short value;
2305 } FIXED;
2306 typedef struct _MAT2 {
2307 FIXED eM11;
2308 FIXED eM12;
2309 FIXED eM21;
2310 FIXED eM22;
2311 } MAT2,*LPMAT2;
2312 typedef struct _OUTLINETEXTMETRICA {
2313 UINT otmSize;
2314 TEXTMETRICA otmTextMetrics;
2315 BYTE otmFiller;
2316 PANOSE otmPanoseNumber;
2317 UINT otmfsSelection;
2318 UINT otmfsType;
2319 int otmsCharSlopeRise;
2320 int otmsCharSlopeRun;
2321 int otmItalicAngle;
2322 UINT otmEMSquare;
2323 int otmAscent;
2324 int otmDescent;
2325 UINT otmLineGap;
2326 UINT otmsCapEmHeight;
2327 UINT otmsXHeight;
2328 RECT otmrcFontBox;
2329 int otmMacAscent;
2330 int otmMacDescent;
2331 UINT otmMacLineGap;
2332 UINT otmusMinimumPPEM;
2333 POINT otmptSubscriptSize;
2334 POINT otmptSubscriptOffset;
2335 POINT otmptSuperscriptSize;
2336 POINT otmptSuperscriptOffset;
2337 UINT otmsStrikeoutSize;
2338 int otmsStrikeoutPosition;
2339 int otmsUnderscoreSize;
2340 int otmsUnderscorePosition;
2341 PSTR otmpFamilyName;
2342 PSTR otmpFaceName;
2343 PSTR otmpStyleName;
2344 PSTR otmpFullName;
2345 } OUTLINETEXTMETRICA,*POUTLINETEXTMETRICA,*LPOUTLINETEXTMETRICA;
2346 typedef struct _OUTLINETEXTMETRICW {
2347 UINT otmSize;
2348 TEXTMETRICW otmTextMetrics;
2349 BYTE otmFiller;
2350 PANOSE otmPanoseNumber;
2351 UINT otmfsSelection;
2352 UINT otmfsType;
2353 int otmsCharSlopeRise;
2354 int otmsCharSlopeRun;
2355 int otmItalicAngle;
2356 UINT otmEMSquare;
2357 int otmAscent;
2358 int otmDescent;
2359 UINT otmLineGap;
2360 UINT otmsCapEmHeight;
2361 UINT otmsXHeight;
2362 RECT otmrcFontBox;
2363 int otmMacAscent;
2364 int otmMacDescent;
2365 UINT otmMacLineGap;
2366 UINT otmusMinimumPPEM;
2367 POINT otmptSubscriptSize;
2368 POINT otmptSubscriptOffset;
2369 POINT otmptSuperscriptSize;
2370 POINT otmptSuperscriptOffset;
2371 UINT otmsStrikeoutSize;
2372 int otmsStrikeoutPosition;
2373 int otmsUnderscoreSize;
2374 int otmsUnderscorePosition;
2375 PSTR otmpFamilyName;
2376 PSTR otmpFaceName;
2377 PSTR otmpStyleName;
2378 PSTR otmpFullName;
2379 } OUTLINETEXTMETRICW,*POUTLINETEXTMETRICW,*LPOUTLINETEXTMETRICW;
2380 typedef struct _RASTERIZER_STATUS {
2381 short nSize;
2382 short wFlags;
2383 short nLanguageID;
2384 } RASTERIZER_STATUS,*LPRASTERIZER_STATUS;
2385 typedef struct _POLYTEXTA {
2386 int x;
2387 int y;
2388 UINT n;
2389 LPCSTR lpstr;
2390 UINT uiFlags;
2391 RECT rcl;
2392 int *pdx;
2393 } POLYTEXTA, *PPOLYTEXTA, *LPPOLYTEXTA;
2394 typedef struct _POLYTEXTW {
2395 int x;
2396 int y;
2397 UINT n;
2398 LPCWSTR lpstr;
2399 UINT uiFlags;
2400 RECT rcl;
2401 int *pdx;
2402 } POLYTEXTW, *PPOLYTEXTW, *LPPOLYTEXTW;
2403 typedef struct tagPIXELFORMATDESCRIPTOR {
2404 WORD nSize;
2405 WORD nVersion;
2406 DWORD dwFlags;
2407 BYTE iPixelType;
2408 BYTE cColorBits;
2409 BYTE cRedBits;
2410 BYTE cRedShift;
2411 BYTE cGreenBits;
2412 BYTE cGreenShift;
2413 BYTE cBlueBits;
2414 BYTE cBlueShift;
2415 BYTE cAlphaBits;
2416 BYTE cAlphaShift;
2417 BYTE cAccumBits;
2418 BYTE cAccumRedBits;
2419 BYTE cAccumGreenBits;
2420 BYTE cAccumBlueBits;
2421 BYTE cAccumAlphaBits;
2422 BYTE cDepthBits;
2423 BYTE cStencilBits;
2424 BYTE cAuxBuffers;
2425 BYTE iLayerType;
2426 BYTE bReserved;
2427 DWORD dwLayerMask;
2428 DWORD dwVisibleMask;
2429 DWORD dwDamageMask;
2430 } PIXELFORMATDESCRIPTOR,*PPIXELFORMATDESCRIPTOR,*LPPIXELFORMATDESCRIPTOR;
2431 typedef struct tagMETAFILEPICT {
2432 LONG mm;
2433 LONG xExt;
2434 LONG yExt;
2435 HMETAFILE hMF;
2436 } METAFILEPICT,*LPMETAFILEPICT;
2437 typedef struct tagLOCALESIGNATURE {
2438 DWORD lsUsb[4];
2439 DWORD lsCsbDefault[2];
2440 DWORD lsCsbSupported[2];
2441 } LOCALESIGNATURE,*PLOCALESIGNATURE,*LPLOCALESIGNATURE;
2442 typedef LONG LCSTYPE;
2443 #pragma pack(push,4)
2444 typedef struct tagNEWTEXTMETRICA {
2445 LONG tmHeight;
2446 LONG tmAscent;
2447 LONG tmDescent;
2448 LONG tmInternalLeading;
2449 LONG tmExternalLeading;
2450 LONG tmAveCharWidth;
2451 LONG tmMaxCharWidth;
2452 LONG tmWeight;
2453 LONG tmOverhang;
2454 LONG tmDigitizedAspectX;
2455 LONG tmDigitizedAspectY;
2456 BYTE tmFirstChar;
2457 BYTE tmLastChar;
2458 BYTE tmDefaultChar;
2459 BYTE tmBreakChar;
2460 BYTE tmItalic;
2461 BYTE tmUnderlined;
2462 BYTE tmStruckOut;
2463 BYTE tmPitchAndFamily;
2464 BYTE tmCharSet;
2465 DWORD ntmFlags;
2466 UINT ntmSizeEM;
2467 UINT ntmCellHeight;
2468 UINT ntmAvgWidth;
2469 } NEWTEXTMETRICA,*PNEWTEXTMETRICA,*LPNEWTEXTMETRICA;
2470 typedef struct tagNEWTEXTMETRICW {
2471 LONG tmHeight;
2472 LONG tmAscent;
2473 LONG tmDescent;
2474 LONG tmInternalLeading;
2475 LONG tmExternalLeading;
2476 LONG tmAveCharWidth;
2477 LONG tmMaxCharWidth;
2478 LONG tmWeight;
2479 LONG tmOverhang;
2480 LONG tmDigitizedAspectX;
2481 LONG tmDigitizedAspectY;
2482 WCHAR tmFirstChar;
2483 WCHAR tmLastChar;
2484 WCHAR tmDefaultChar;
2485 WCHAR tmBreakChar;
2486 BYTE tmItalic;
2487 BYTE tmUnderlined;
2488 BYTE tmStruckOut;
2489 BYTE tmPitchAndFamily;
2490 BYTE tmCharSet;
2491 DWORD ntmFlags;
2492 UINT ntmSizeEM;
2493 UINT ntmCellHeight;
2494 UINT ntmAvgWidth;
2495 } NEWTEXTMETRICW,*PNEWTEXTMETRICW,*LPNEWTEXTMETRICW;
2496 #pragma pack(pop)
2497 typedef struct tagNEWTEXTMETRICEXA {
2498 NEWTEXTMETRICA ntmTm;
2499 FONTSIGNATURE ntmFontSig;
2500 } NEWTEXTMETRICEXA;
2501 typedef struct tagNEWTEXTMETRICEXW {
2502 NEWTEXTMETRICW ntmTm;
2503 FONTSIGNATURE ntmFontSig;
2504 } NEWTEXTMETRICEXW;
2505 typedef struct tagPELARRAY {
2506 LONG paXCount;
2507 LONG paYCount;
2508 LONG paXExt;
2509 LONG paYExt;
2510 BYTE paRGBs;
2511 } PELARRAY,*PPELARRAY,*LPPELARRAY;
2512 typedef struct tagENUMLOGFONTA {
2513 LOGFONTA elfLogFont;
2514 BYTE elfFullName[LF_FULLFACESIZE];
2515 BYTE elfStyle[LF_FACESIZE];
2516 } ENUMLOGFONTA,*LPENUMLOGFONTA;
2517 typedef struct tagENUMLOGFONTW {
2518 LOGFONTW elfLogFont;
2519 WCHAR elfFullName[LF_FULLFACESIZE];
2520 WCHAR elfStyle[LF_FACESIZE];
2521 } ENUMLOGFONTW,*LPENUMLOGFONTW;
2522 typedef struct tagENUMLOGFONTEXA {
2523 LOGFONTA elfLogFont;
2524 BYTE elfFullName[LF_FULLFACESIZE];
2525 BYTE elfStyle[LF_FACESIZE];
2526 BYTE elfScript[LF_FACESIZE];
2527 } ENUMLOGFONTEXA,*LPENUMLOGFONTEXA;
2528 typedef struct tagENUMLOGFONTEXW {
2529 LOGFONTW elfLogFont;
2530 WCHAR elfFullName[LF_FULLFACESIZE];
2531 WCHAR elfStyle[LF_FACESIZE];
2532 WCHAR elfScript[LF_FACESIZE];
2533 } ENUMLOGFONTEXW,*LPENUMLOGFONTEXW;
2534 typedef struct tagPOINTFX {
2535 FIXED x;
2536 FIXED y;
2537 } POINTFX,*LPPOINTFX;
2538 typedef struct tagTTPOLYCURVE {
2539 WORD wType;
2540 WORD cpfx;
2541 POINTFX apfx[1];
2542 } TTPOLYCURVE,*LPTTPOLYCURVE;
2543 typedef struct tagTTPOLYGONHEADER {
2544 DWORD cb;
2545 DWORD dwType;
2546 POINTFX pfxStart;
2547 } TTPOLYGONHEADER,*LPTTPOLYGONHEADER;
2548 typedef struct _POINTFLOAT {
2549 FLOAT x;
2550 FLOAT y;
2551 } POINTFLOAT,*PPOINTFLOAT;
2552 typedef struct _GLYPHMETRICSFLOAT {
2553 FLOAT gmfBlackBoxX;
2554 FLOAT gmfBlackBoxY;
2555 POINTFLOAT gmfptGlyphOrigin;
2556 FLOAT gmfCellIncX;
2557 FLOAT gmfCellIncY;
2558 } GLYPHMETRICSFLOAT,*PGLYPHMETRICSFLOAT,*LPGLYPHMETRICSFLOAT;
2559 typedef struct tagLAYERPLANEDESCRIPTOR {
2560 WORD nSize;
2561 WORD nVersion;
2562 DWORD dwFlags;
2563 BYTE iPixelType;
2564 BYTE cColorBits;
2565 BYTE cRedBits;
2566 BYTE cRedShift;
2567 BYTE cGreenBits;
2568 BYTE cGreenShift;
2569 BYTE cBlueBits;
2570 BYTE cBlueShift;
2571 BYTE cAlphaBits;
2572 BYTE cAlphaShift;
2573 BYTE cAccumBits;
2574 BYTE cAccumRedBits;
2575 BYTE cAccumGreenBits;
2576 BYTE cAccumBlueBits;
2577 BYTE cAccumAlphaBits;
2578 BYTE cDepthBits;
2579 BYTE cStencilBits;
2580 BYTE cAuxBuffers;
2581 BYTE iLayerPlane;
2582 BYTE bReserved;
2583 COLORREF crTransparent;
2584 } LAYERPLANEDESCRIPTOR,*PLAYERPLANEDESCRIPTOR,*LPLAYERPLANEDESCRIPTOR;
2585 typedef struct _BLENDFUNCTION {
2586 BYTE BlendOp;
2587 BYTE BlendFlags;
2588 BYTE SourceConstantAlpha;
2589 BYTE AlphaFormat;
2590 } BLENDFUNCTION,*PBLENDFUNCTION,*LPBLENDFUNCTION;
2591 #define MM_MAX_NUMAXES 16
2592 typedef struct _DESIGNVECTOR {
2593 DWORD dvReserved;
2594 DWORD dvNumAxes;
2595 LONG dvValues[MM_MAX_NUMAXES];
2596 } DESIGNVECTOR, *PDESIGNVECTOR, FAR *LPDESIGNVECTOR;
2597 #if _WIN32_WINNT >= 0x0500
2598 typedef struct tagENUMLOGFONTEXDVA
2600 ENUMLOGFONTEXA elfEnumLogfontEx;
2601 DESIGNVECTOR elfDesignVector;
2602 } ENUMLOGFONTEXDVA, *PENUMLOGFONTEXDVA, *LPENUMLOGFONTEXDVA;
2603 typedef struct tagENUMLOGFONTEXDVW
2605 ENUMLOGFONTEXW elfEnumLogfontEx;
2606 DESIGNVECTOR elfDesignVector;
2607 } ENUMLOGFONTEXDVW, *PENUMLOGFONTEXDVW, *LPENUMLOGFONTEXDVW;
2608 #endif /* _WIN32_WINNT >= 0x0500 */
2609 typedef USHORT COLOR16;
2610 typedef struct _TRIVERTEX {
2611 LONG x;
2612 LONG y;
2613 COLOR16 Red;
2614 COLOR16 Green;
2615 COLOR16 Blue;
2616 COLOR16 Alpha;
2617 } TRIVERTEX, *PTRIVERTEX, *LPTRIVERTEX;
2618 typedef struct _GRADIENT_TRIANGLE {
2619 ULONG Vertex1;
2620 ULONG Vertex2;
2621 ULONG Vertex3;
2622 } GRADIENT_TRIANGLE,*PGRADIENT_TRIANGLE,*LPGRADIENT_TRIANGLE;
2623 typedef struct _GRADIENT_RECT {
2624 ULONG UpperLeft;
2625 ULONG LowerRight;
2626 }GRADIENT_RECT,*PGRADIENT_RECT,*LPGRADIENT_RECT;
2627 typedef struct _DISPLAY_DEVICEA {
2628 DWORD cb;
2629 CHAR DeviceName[32];
2630 CHAR DeviceString[128];
2631 DWORD StateFlags;
2632 CHAR DeviceID[128];
2633 CHAR DeviceKey[128];
2634 } DISPLAY_DEVICEA, *PDISPLAY_DEVICEA, *LPDISPLAY_DEVICEA;
2635 typedef struct _DISPLAY_DEVICEW {
2636 DWORD cb;
2637 WCHAR DeviceName[32];
2638 WCHAR DeviceString[128];
2639 DWORD StateFlags;
2640 WCHAR DeviceID[128];
2641 WCHAR DeviceKey[128];
2642 } DISPLAY_DEVICEW, *PDISPLAY_DEVICEW, *LPDISPLAY_DEVICEW;
2644 typedef BOOL (CALLBACK *ABORTPROC)(HDC,int);
2645 typedef int (CALLBACK *MFENUMPROC)(HDC,HANDLETABLE*,METARECORD*,int,LPARAM);
2646 typedef int (CALLBACK *ENHMFENUMPROC)(HDC,HANDLETABLE*,ENHMETARECORD*,int,LPARAM);
2647 typedef int (CALLBACK *OLDFONTENUMPROCA)(const LOGFONTA*,const TEXTMETRICA*,DWORD,LPARAM);
2648 typedef int (CALLBACK *OLDFONTENUMPROCW)(const LOGFONTW*,const TEXTMETRICW*,DWORD,LPARAM);
2649 typedef OLDFONTENUMPROCA FONTENUMPROCA;
2650 typedef OLDFONTENUMPROCW FONTENUMPROCW;
2651 typedef int (CALLBACK *ICMENUMPROCA)(LPSTR,LPARAM);
2652 typedef int (CALLBACK *ICMENUMPROCW)(LPWSTR,LPARAM);
2653 typedef void (CALLBACK *GOBJENUMPROC)(LPVOID,LPARAM);
2654 typedef void (CALLBACK *LINEDDAPROC)(int,int,LPARAM);
2655 typedef UINT (CALLBACK *LPFNDEVMODE)(HWND,HMODULE,LPDEVMODEA,LPSTR,LPSTR,LPDEVMODEA,LPSTR,UINT);
2656 typedef DWORD (CALLBACK *LPFNDEVCAPS)(LPSTR,LPSTR,UINT,LPSTR,LPDEVMODEA);
2658 #define MAKEPOINTS(l) (*((POINTS*)&(l)))
2659 #define MAKEROP4(f,b) (DWORD)((((b)<<8)&0xFF000000)|(f))
2661 #define GetCValue(cmyk) ((BYTE)(cmyk))
2662 #define GetMValue(cmyk) ((BYTE)((cmyk)>> 8))
2663 #define GetYValue(cmyk) ((BYTE)((cmyk)>>16))
2664 #define GetKValue(cmyk) ((BYTE)((cmyk)>>24))
2665 #define CMYK(c,m,y,k) ((COLORREF)((BYTE)(k)|((BYTE)(y)<<8)|((BYTE)(m)<<16)|((BYTE)(c)<<24)))
2667 #define GetRValue(c) ((BYTE)(c))
2668 #define GetGValue(c) ((BYTE)(((WORD)(c))>>8))
2669 #define GetBValue(c) ((BYTE)((c)>>16))
2670 #define RGB(r,g,b) ((COLORREF)((BYTE)(r)|((BYTE)(g) << 8)|((BYTE)(b) << 16)))
2672 #define PALETTEINDEX(i) ((0x01000000|(COLORREF)(WORD)(i)))
2673 #define PALETTERGB(r,g,b) (0x02000000|RGB(r,g,b))
2675 WINGDIAPI int WINAPI AbortDoc(HDC);
2676 WINGDIAPI BOOL WINAPI AbortPath(HDC);
2677 WINGDIAPI int WINAPI AddFontResourceA(LPCSTR);
2678 WINGDIAPI int WINAPI AddFontResourceW(LPCWSTR);
2679 #if (_WIN32_WINNT >= 0x0500)
2680 WINGDIAPI HANDLE WINAPI AddFontMemResourceEx(PVOID,DWORD,PVOID,DWORD *);
2681 WINGDIAPI int WINAPI AddFontResourceExA(LPCSTR,DWORD,PVOID);
2682 WINGDIAPI int WINAPI AddFontResourceExW(LPCWSTR,DWORD,PVOID);
2683 #endif
2684 WINGDIAPI BOOL WINAPI AngleArc(HDC,int,int,DWORD,FLOAT,FLOAT);
2685 WINGDIAPI BOOL WINAPI AnimatePalette(HPALETTE,UINT,UINT,const PALETTEENTRY*);
2686 WINGDIAPI BOOL WINAPI Arc(HDC,int,int,int,int,int,int,int,int);
2687 WINGDIAPI BOOL WINAPI ArcTo(HDC,int,int,int,int,int,int,int,int);
2688 WINGDIAPI BOOL WINAPI BeginPath(HDC);
2689 WINGDIAPI BOOL WINAPI BitBlt(HDC,int,int,int,int,HDC,int,int,DWORD);
2690 WINGDIAPI BOOL WINAPI CancelDC(HDC);
2691 WINGDIAPI BOOL WINAPI CheckColorsInGamut(HDC,PVOID,PVOID,DWORD);
2692 WINGDIAPI BOOL WINAPI Chord(HDC,int,int,int,int,int,int,int,int);
2693 WINGDIAPI int WINAPI ChoosePixelFormat(HDC,CONST PIXELFORMATDESCRIPTOR*);
2694 WINGDIAPI HENHMETAFILE WINAPI CloseEnhMetaFile(HDC);
2695 WINGDIAPI BOOL WINAPI CloseFigure(HDC);
2696 WINGDIAPI HMETAFILE WINAPI CloseMetaFile(HDC);
2697 #if (_WIN32_WINDOWS >= 0x0410 || _WIN32_WINNT >= 0x0500)
2698 WINGDIAPI BOOL WINAPI ColorCorrectPalette(HDC,HPALETTE,DWORD,DWORD);
2699 WINGDIAPI BOOL WINAPI ColorMatchToTarget(HDC,HDC,DWORD);
2700 #endif
2701 WINGDIAPI int WINAPI CombineRgn(HRGN,HRGN,HRGN,int);
2702 WINGDIAPI BOOL WINAPI CombineTransform(LPXFORM,const XFORM*,const XFORM*);
2703 WINGDIAPI HENHMETAFILE WINAPI CopyEnhMetaFileA(HENHMETAFILE,LPCSTR);
2704 WINGDIAPI HENHMETAFILE WINAPI CopyEnhMetaFileW(HENHMETAFILE,LPCWSTR);
2705 WINGDIAPI HMETAFILE WINAPI CopyMetaFileA(HMETAFILE,LPCSTR);
2706 WINGDIAPI HMETAFILE WINAPI CopyMetaFileW(HMETAFILE,LPCWSTR);
2707 WINGDIAPI HBITMAP WINAPI CreateBitmap(int,int,UINT,UINT,PCVOID);
2708 WINGDIAPI HBITMAP WINAPI CreateBitmapIndirect(const BITMAP*);
2709 WINGDIAPI HBRUSH WINAPI CreateBrushIndirect(const LOGBRUSH*);
2710 WINGDIAPI HCOLORSPACE WINAPI CreateColorSpaceA(LPLOGCOLORSPACEA);
2711 WINGDIAPI HCOLORSPACE WINAPI CreateColorSpaceW(LPLOGCOLORSPACEW);
2712 WINGDIAPI HBITMAP WINAPI CreateCompatibleBitmap(HDC,int,int);
2713 WINGDIAPI HDC WINAPI CreateCompatibleDC(HDC);
2714 WINGDIAPI HDC WINAPI CreateDCA(LPCSTR,LPCSTR,LPCSTR,const DEVMODEA*);
2715 WINGDIAPI HDC WINAPI CreateDCW(LPCWSTR,LPCWSTR,LPCWSTR,const DEVMODEW*);
2716 WINGDIAPI HBITMAP WINAPI CreateDIBitmap(HDC,const BITMAPINFOHEADER*,DWORD,PCVOID,const BITMAPINFO*,UINT);
2717 WINGDIAPI HBRUSH WINAPI CreateDIBPatternBrush(HGLOBAL,UINT);
2718 WINGDIAPI HBRUSH WINAPI CreateDIBPatternBrushPt(PCVOID,UINT);
2719 WINGDIAPI HBITMAP WINAPI CreateDIBSection(HDC,const BITMAPINFO*,UINT,void**,HANDLE,DWORD);
2720 WINGDIAPI HBITMAP WINAPI CreateDiscardableBitmap(HDC,int,int);
2721 WINGDIAPI HRGN WINAPI CreateEllipticRgn(int,int,int,int);
2722 WINGDIAPI HRGN WINAPI CreateEllipticRgnIndirect(LPCRECT);
2723 WINGDIAPI HDC WINAPI CreateEnhMetaFileA(HDC,LPCSTR,LPCRECT,LPCSTR);
2724 WINGDIAPI HDC WINAPI CreateEnhMetaFileW(HDC,LPCWSTR,LPCRECT,LPCWSTR);
2725 WINGDIAPI HFONT WINAPI CreateFontA(int,int,int,int,int,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,LPCSTR);
2726 WINGDIAPI HFONT WINAPI CreateFontW(int,int,int,int,int,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,LPCWSTR);
2727 WINGDIAPI HFONT WINAPI CreateFontIndirectA(const LOGFONTA*);
2728 WINGDIAPI HFONT WINAPI CreateFontIndirectW(const LOGFONTW*);
2729 WINGDIAPI HPALETTE WINAPI CreateHalftonePalette(HDC);
2730 WINGDIAPI HBRUSH WINAPI CreateHatchBrush(int,COLORREF);
2731 WINGDIAPI HDC WINAPI CreateICA(LPCSTR,LPCSTR,LPCSTR,const DEVMODEA*);
2732 WINGDIAPI HDC WINAPI CreateICW(LPCWSTR,LPCWSTR,LPCWSTR,const DEVMODEW*);
2733 WINGDIAPI HDC WINAPI CreateMetaFileA(LPCSTR);
2734 WINGDIAPI HDC WINAPI CreateMetaFileW(LPCWSTR);
2735 WINGDIAPI HPALETTE WINAPI CreatePalette(const LOGPALETTE*);
2736 WINGDIAPI HBRUSH WINAPI CreatePatternBrush(HBITMAP);
2737 WINGDIAPI HPEN WINAPI CreatePen(int,int,COLORREF);
2738 WINGDIAPI HPEN WINAPI CreatePenIndirect(const LOGPEN*);
2739 WINGDIAPI HRGN WINAPI CreatePolygonRgn(const POINT*,int,int);
2740 WINGDIAPI HRGN WINAPI CreatePolyPolygonRgn(const POINT*,const INT*,int,int);
2741 WINGDIAPI HRGN WINAPI CreateRectRgn(int,int,int,int);
2742 WINGDIAPI HRGN WINAPI CreateRectRgnIndirect(LPCRECT);
2743 WINGDIAPI HRGN WINAPI CreateRoundRectRgn(int,int,int,int,int,int);
2744 WINGDIAPI BOOL WINAPI CreateScalableFontResourceA(DWORD,LPCSTR,LPCSTR,LPCSTR);
2745 WINGDIAPI BOOL WINAPI CreateScalableFontResourceW(DWORD,LPCWSTR,LPCWSTR,LPCWSTR);
2746 WINGDIAPI HBRUSH WINAPI CreateSolidBrush(COLORREF);
2747 WINGDIAPI BOOL WINAPI DeleteColorSpace(HCOLORSPACE);
2748 WINGDIAPI BOOL WINAPI DeleteDC(HDC);
2749 WINGDIAPI BOOL WINAPI DeleteEnhMetaFile(HENHMETAFILE);
2750 WINGDIAPI BOOL WINAPI DeleteMetaFile(HMETAFILE);
2751 WINGDIAPI BOOL WINAPI DeleteObject(HGDIOBJ);
2752 WINGDIAPI int WINAPI DescribePixelFormat(HDC,int,UINT,LPPIXELFORMATDESCRIPTOR);
2753 WINGDIAPI DWORD WINAPI DeviceCapabilitiesA(LPCSTR,LPCSTR,WORD,LPSTR,const DEVMODEA*);
2754 WINGDIAPI DWORD WINAPI DeviceCapabilitiesW(LPCWSTR,LPCWSTR,WORD,LPWSTR,const DEVMODEW*);
2755 WINGDIAPI BOOL WINAPI DPtoLP(HDC,LPPOINT,int);
2756 WINGDIAPI int WINAPI DrawEscape(HDC,int,int,LPCSTR);
2757 WINGDIAPI BOOL WINAPI Ellipse(HDC,int,int,int,int);
2758 WINGDIAPI int WINAPI EndDoc(HDC);
2759 WINGDIAPI int WINAPI EndPage(HDC);
2760 WINGDIAPI BOOL WINAPI EndPath(HDC);
2761 WINGDIAPI BOOL WINAPI EnumEnhMetaFile(HDC,HENHMETAFILE,ENHMFENUMPROC,PVOID,LPCRECT);
2762 WINGDIAPI int WINAPI EnumFontFamiliesA(HDC,LPCSTR,FONTENUMPROCA,LPARAM);
2763 WINGDIAPI int WINAPI EnumFontFamiliesW(HDC,LPCWSTR,FONTENUMPROCW,LPARAM);
2764 WINGDIAPI int WINAPI EnumFontFamiliesExA(HDC,PLOGFONTA,FONTENUMPROCA,LPARAM,DWORD);
2765 WINGDIAPI int WINAPI EnumFontFamiliesExW(HDC,PLOGFONTW,FONTENUMPROCW,LPARAM,DWORD);
2766 WINGDIAPI int WINAPI EnumFontsA(HDC,LPCSTR,FONTENUMPROCA,LPARAM);
2767 WINGDIAPI int WINAPI EnumFontsW(HDC,LPCWSTR,FONTENUMPROCW,LPARAM);
2768 WINGDIAPI int WINAPI EnumICMProfilesA(HDC,ICMENUMPROCA,LPARAM);
2769 WINGDIAPI int WINAPI EnumICMProfilesW(HDC,ICMENUMPROCW,LPARAM);
2770 WINGDIAPI BOOL WINAPI EnumMetaFile(HDC,HMETAFILE,MFENUMPROC,LPARAM);
2771 WINGDIAPI int WINAPI EnumObjects(HDC,int,GOBJENUMPROC,LPARAM);
2772 WINGDIAPI BOOL WINAPI EqualRgn(HRGN,HRGN);
2773 WINGDIAPI int WINAPI Escape(HDC,int,int,LPCSTR,PVOID);
2774 WINGDIAPI int WINAPI ExcludeClipRect(HDC,int,int,int,int);
2775 WINGDIAPI int WINAPI ExcludeUpdateRgn(HDC,HWND);
2776 WINGDIAPI HPEN WINAPI ExtCreatePen(DWORD,DWORD,const LOGBRUSH*,DWORD,const DWORD*);
2777 WINGDIAPI HRGN WINAPI ExtCreateRegion(const XFORM*,DWORD,const RGNDATA*);
2778 WINGDIAPI int WINAPI ExtEscape(HDC,int,int,LPCSTR,int,LPSTR);
2779 WINGDIAPI BOOL WINAPI ExtFloodFill(HDC,int,int,COLORREF,UINT);
2780 WINGDIAPI int WINAPI ExtSelectClipRgn(HDC,HRGN,int);
2781 WINGDIAPI BOOL WINAPI ExtTextOutA(HDC,int,int,UINT,LPCRECT,LPCSTR,UINT,const INT*);
2782 WINGDIAPI BOOL WINAPI ExtTextOutW(HDC,int,int,UINT,LPCRECT,LPCWSTR,UINT,const INT*);
2783 WINGDIAPI BOOL WINAPI FillPath(HDC);
2784 WINGDIAPI int WINAPI FillRect(HDC,LPCRECT,HBRUSH);
2785 WINGDIAPI int WINAPI FillRgn(HDC,HRGN,HBRUSH);
2786 WINGDIAPI BOOL WINAPI FixBrushOrgEx(HDC,int,int,LPPOINT);
2787 WINGDIAPI BOOL WINAPI FlattenPath(HDC);
2788 WINGDIAPI BOOL WINAPI FloodFill(HDC,int,int,COLORREF);
2789 WINGDIAPI BOOL WINAPI GdiComment(HDC,UINT,const BYTE*);
2790 WINGDIAPI BOOL WINAPI GdiFlush(void);
2791 WINGDIAPI DWORD WINAPI GdiGetBatchLimit(void);
2792 WINGDIAPI DWORD WINAPI GdiSetBatchLimit(DWORD);
2793 WINGDIAPI int WINAPI GetArcDirection(HDC);
2794 WINGDIAPI BOOL WINAPI GetAspectRatioFilterEx(HDC,LPSIZE);
2795 WINGDIAPI LONG WINAPI GetBitmapBits(HBITMAP,LONG,PVOID);
2796 WINGDIAPI BOOL WINAPI GetBitmapDimensionEx(HBITMAP,LPSIZE);
2797 WINGDIAPI COLORREF WINAPI GetBkColor(HDC);
2798 WINGDIAPI int WINAPI GetBkMode(HDC);
2799 WINGDIAPI UINT WINAPI GetBoundsRect(HDC,LPRECT,UINT);
2800 WINGDIAPI BOOL WINAPI GetBrushOrgEx(HDC,LPPOINT);
2801 WINGDIAPI BOOL WINAPI GetCharABCWidthsA(HDC,UINT,UINT,LPABC);
2802 WINGDIAPI BOOL WINAPI GetCharABCWidthsW(HDC,UINT,UINT,LPABC);
2803 WINGDIAPI BOOL WINAPI GetCharABCWidthsFloatA(HDC,UINT,UINT,LPABCFLOAT);
2804 WINGDIAPI BOOL WINAPI GetCharABCWidthsFloatW(HDC,UINT,UINT,LPABCFLOAT);
2805 WINGDIAPI DWORD WINAPI GetCharacterPlacementA(HDC,LPCSTR,int,int,LPGCP_RESULTSA,DWORD);
2806 WINGDIAPI DWORD WINAPI GetCharacterPlacementW(HDC,LPCWSTR,int,int,LPGCP_RESULTSW,DWORD);
2807 WINGDIAPI BOOL WINAPI GetCharWidth32A(HDC,UINT,UINT,LPINT);
2808 WINGDIAPI BOOL WINAPI GetCharWidth32W(HDC,UINT,UINT,LPINT);
2809 WINGDIAPI BOOL WINAPI GetCharWidthA(HDC,UINT,UINT,LPINT);
2810 WINGDIAPI BOOL WINAPI GetCharWidthW(HDC,UINT,UINT,LPINT);
2811 WINGDIAPI BOOL WINAPI GetCharWidthFloatA(HDC,UINT,UINT,PFLOAT);
2812 WINGDIAPI BOOL WINAPI GetCharWidthFloatW(HDC,UINT,UINT,PFLOAT);
2813 WINGDIAPI int WINAPI GetClipBox(HDC,LPRECT);
2814 WINGDIAPI int WINAPI GetClipRgn(HDC,HRGN);
2815 WINGDIAPI BOOL WINAPI GetColorAdjustment(HDC,LPCOLORADJUSTMENT);
2816 WINGDIAPI HANDLE WINAPI GetColorSpace(HDC);
2817 WINGDIAPI HGDIOBJ WINAPI GetCurrentObject(HDC,UINT);
2818 WINGDIAPI BOOL WINAPI GetCurrentPositionEx(HDC,LPPOINT);
2819 WINGDIAPI HCURSOR WINAPI GetCursor(void);
2820 #if (WINVER >= 0x0500)
2821 WINGDIAPI COLORREF WINAPI GetDCBrushColor(HDC);
2822 WINGDIAPI COLORREF WINAPI GetDCPenColor(HDC);
2823 #endif
2824 WINGDIAPI BOOL WINAPI GetDCOrgEx(HDC,LPPOINT);
2825 WINGDIAPI int WINAPI GetDeviceCaps(HDC,int);
2826 WINGDIAPI BOOL WINAPI GetDeviceGammaRamp(HDC,PVOID);
2827 WINGDIAPI UINT WINAPI GetDIBColorTable(HDC,UINT,UINT,RGBQUAD*);
2828 WINGDIAPI int WINAPI GetDIBits(HDC,HBITMAP,UINT,UINT,PVOID,LPBITMAPINFO,UINT);
2829 WINGDIAPI HENHMETAFILE WINAPI GetEnhMetaFileA(LPCSTR);
2830 WINGDIAPI HENHMETAFILE WINAPI GetEnhMetaFileW(LPCWSTR);
2831 WINGDIAPI UINT WINAPI GetEnhMetaFileBits(HENHMETAFILE,UINT,LPBYTE);
2832 WINGDIAPI UINT WINAPI GetEnhMetaFileDescriptionA(HENHMETAFILE,UINT,LPSTR);
2833 WINGDIAPI UINT WINAPI GetEnhMetaFileDescriptionW(HENHMETAFILE,UINT,LPWSTR);
2834 WINGDIAPI UINT WINAPI GetEnhMetaFileHeader(HENHMETAFILE,UINT,LPENHMETAHEADER);
2835 WINGDIAPI UINT WINAPI GetEnhMetaFilePaletteEntries(HENHMETAFILE,UINT,LPPALETTEENTRY);
2836 WINGDIAPI UINT WINAPI GetEnhMetaFilePixelFormat(HENHMETAFILE,DWORD,CONST PIXELFORMATDESCRIPTOR*);
2837 WINGDIAPI DWORD WINAPI GetFontData(HDC,DWORD,DWORD,PVOID,DWORD);
2838 WINGDIAPI DWORD WINAPI GetFontLanguageInfo(HDC);
2839 WINGDIAPI DWORD WINAPI GetGlyphOutlineA(HDC,UINT,UINT,LPGLYPHMETRICS,DWORD,PVOID,const MAT2*);
2840 WINGDIAPI DWORD WINAPI GetGlyphOutlineW(HDC,UINT,UINT,LPGLYPHMETRICS,DWORD,PVOID,const MAT2*);
2841 WINGDIAPI int WINAPI GetGraphicsMode(HDC);
2842 WINGDIAPI BOOL WINAPI GetICMProfileA(HDC,LPDWORD,LPSTR);
2843 WINGDIAPI BOOL WINAPI GetICMProfileW(HDC,LPDWORD,LPWSTR);
2844 WINGDIAPI DWORD WINAPI GetKerningPairsA(HDC,DWORD,LPKERNINGPAIR);
2845 WINGDIAPI DWORD WINAPI GetKerningPairsW(HDC,DWORD,LPKERNINGPAIR);
2846 WINGDIAPI BOOL WINAPI GetLogColorSpaceA(HCOLORSPACE,LPLOGCOLORSPACEA,DWORD);
2847 WINGDIAPI BOOL WINAPI GetLogColorSpaceW(HCOLORSPACE,LPLOGCOLORSPACEW,DWORD);
2848 WINGDIAPI int WINAPI GetMapMode(HDC);
2849 WINGDIAPI HMETAFILE WINAPI GetMetaFileA(LPCSTR);
2850 WINGDIAPI HMETAFILE WINAPI GetMetaFileW(LPCWSTR);
2851 WINGDIAPI UINT WINAPI GetMetaFileBitsEx(HMETAFILE,UINT,PVOID);
2852 WINGDIAPI int WINAPI GetMetaRgn(HDC,HRGN);
2853 WINGDIAPI BOOL WINAPI GetMiterLimit(HDC,PFLOAT);
2854 WINGDIAPI COLORREF WINAPI GetNearestColor(HDC,COLORREF);
2855 WINGDIAPI UINT WINAPI GetNearestPaletteIndex(HPALETTE,COLORREF);
2856 WINGDIAPI int WINAPI GetObjectA(HGDIOBJ,int,PVOID);
2857 WINGDIAPI int WINAPI GetObjectW(HGDIOBJ,int,PVOID);
2858 WINGDIAPI DWORD WINAPI GetObjectType(HGDIOBJ);
2859 WINGDIAPI UINT WINAPI GetOutlineTextMetricsA(HDC,UINT,LPOUTLINETEXTMETRICA);
2860 WINGDIAPI UINT WINAPI GetOutlineTextMetricsW(HDC,UINT,LPOUTLINETEXTMETRICW);
2861 WINGDIAPI UINT WINAPI GetPaletteEntries(HPALETTE,UINT,UINT,LPPALETTEENTRY);
2862 WINGDIAPI int WINAPI GetPath(HDC,LPPOINT,PBYTE,int);
2863 WINGDIAPI COLORREF WINAPI GetPixel(HDC,int,int);
2864 WINGDIAPI int WINAPI GetPixelFormat(HDC);
2865 WINGDIAPI int WINAPI GetPolyFillMode(HDC);
2866 WINGDIAPI BOOL WINAPI GetRasterizerCaps(LPRASTERIZER_STATUS,UINT);
2867 WINGDIAPI int WINAPI GetRandomRgn (HDC,HRGN,INT);
2868 WINGDIAPI DWORD WINAPI GetRegionData(HRGN,DWORD,LPRGNDATA);
2869 WINGDIAPI int WINAPI GetRgnBox(HRGN,LPRECT);
2870 WINGDIAPI int WINAPI GetROP2(HDC);
2871 WINGDIAPI HGDIOBJ WINAPI GetStockObject(int);
2872 WINGDIAPI int WINAPI GetStretchBltMode(HDC);
2873 WINGDIAPI UINT WINAPI GetSystemPaletteEntries(HDC,UINT,UINT,LPPALETTEENTRY);
2874 WINGDIAPI UINT WINAPI GetSystemPaletteUse(HDC);
2875 WINGDIAPI UINT WINAPI GetTextAlign(HDC);
2876 WINGDIAPI int WINAPI GetTextCharacterExtra(HDC);
2877 WINGDIAPI int WINAPI GetTextCharset(HDC);
2878 WINGDIAPI int WINAPI GetTextCharsetInfo(HDC,LPFONTSIGNATURE,DWORD);
2879 WINGDIAPI COLORREF WINAPI GetTextColor(HDC);
2880 WINGDIAPI BOOL WINAPI GetTextExtentExPointA(HDC,LPCSTR,int,int,LPINT,LPINT,LPSIZE);
2881 WINGDIAPI BOOL WINAPI GetTextExtentExPointW( HDC,LPCWSTR,int,int,LPINT,LPINT,LPSIZE );
2882 WINGDIAPI BOOL WINAPI GetTextExtentPointA(HDC,LPCSTR,int,LPSIZE);
2883 WINGDIAPI BOOL WINAPI GetTextExtentPointW(HDC,LPCWSTR,int,LPSIZE);
2884 #ifdef _WIN32_WCE
2885 extern BOOL GetTextExtentPoint32A(HDC,LPCSTR,int,LPSIZE);
2886 extern BOOL GetTextExtentPoint32W( HDC,LPCWSTR,int,LPSIZE);
2887 #else
2888 WINGDIAPI BOOL WINAPI GetTextExtentPoint32A(HDC,LPCSTR,int,LPSIZE);
2889 WINGDIAPI BOOL WINAPI GetTextExtentPoint32W( HDC,LPCWSTR,int,LPSIZE);
2890 #endif
2891 WINGDIAPI int WINAPI GetTextFaceA(HDC,int,LPSTR);
2892 WINGDIAPI int WINAPI GetTextFaceW(HDC,int,LPWSTR);
2893 WINGDIAPI BOOL WINAPI GetTextMetricsA(HDC,LPTEXTMETRICA);
2894 WINGDIAPI BOOL WINAPI GetTextMetricsW(HDC,LPTEXTMETRICW);
2895 WINGDIAPI BOOL WINAPI GetViewportExtEx(HDC,LPSIZE);
2896 WINGDIAPI BOOL WINAPI GetViewportOrgEx(HDC,LPPOINT);
2897 WINGDIAPI BOOL WINAPI GetWindowExtEx(HDC,LPSIZE);
2898 WINGDIAPI BOOL WINAPI GetWindowOrgEx(HDC,LPPOINT);
2899 WINGDIAPI UINT WINAPI GetWinMetaFileBits(HENHMETAFILE,UINT,LPBYTE,INT,HDC);
2900 WINGDIAPI BOOL WINAPI GetWorldTransform(HDC,LPXFORM);
2901 WINGDIAPI int WINAPI IntersectClipRect(HDC,int,int,int,int);
2902 WINGDIAPI BOOL WINAPI InvertRgn(HDC,HRGN);
2903 WINGDIAPI BOOL WINAPI LineDDA(int,int,int,int,LINEDDAPROC,LPARAM);
2904 WINGDIAPI BOOL WINAPI LineTo(HDC,int,int);
2905 WINGDIAPI BOOL WINAPI LPtoDP(HDC,LPPOINT,int);
2906 WINGDIAPI BOOL WINAPI MaskBlt(HDC,int,int,int,int,HDC,int,int,HBITMAP,int,int,DWORD);
2907 WINGDIAPI BOOL WINAPI ModifyWorldTransform(HDC,const XFORM*,DWORD);
2908 WINGDIAPI BOOL WINAPI MoveToEx(HDC,int,int,LPPOINT);
2909 WINGDIAPI int WINAPI OffsetClipRgn(HDC,int,int);
2910 WINGDIAPI int WINAPI OffsetRgn(HRGN,int,int);
2911 WINGDIAPI BOOL WINAPI OffsetViewportOrgEx(HDC,int,int,LPPOINT);
2912 WINGDIAPI BOOL WINAPI OffsetWindowOrgEx(HDC,int,int,LPPOINT);
2913 WINGDIAPI BOOL WINAPI PaintRgn(HDC,HRGN);
2914 WINGDIAPI BOOL WINAPI PatBlt(HDC,int,int,int,int,DWORD);
2915 WINGDIAPI HRGN WINAPI PathToRegion(HDC);
2916 WINGDIAPI BOOL WINAPI Pie(HDC,int,int,int,int,int,int,int,int);
2917 WINGDIAPI BOOL WINAPI PlayEnhMetaFile(HDC,HENHMETAFILE,LPCRECT);
2918 WINGDIAPI BOOL WINAPI PlayEnhMetaFileRecord(HDC,LPHANDLETABLE,const ENHMETARECORD*,UINT);
2919 WINGDIAPI BOOL WINAPI PlayMetaFile(HDC,HMETAFILE);
2920 WINGDIAPI BOOL WINAPI PlayMetaFileRecord(HDC,LPHANDLETABLE,LPMETARECORD,UINT);
2921 WINGDIAPI BOOL WINAPI PlgBlt(HDC,const POINT*,HDC,int,int,int,int,HBITMAP,int,int);
2922 WINGDIAPI BOOL WINAPI PolyBezier(HDC,const POINT*,DWORD);
2923 WINGDIAPI BOOL WINAPI PolyBezierTo(HDC,const POINT*,DWORD);
2924 WINGDIAPI BOOL WINAPI PolyDraw(HDC,const POINT*,const BYTE*,int);
2925 WINGDIAPI BOOL WINAPI Polygon(HDC,const POINT*,int);
2926 WINGDIAPI BOOL WINAPI Polyline(HDC,const POINT*,int);
2927 WINGDIAPI BOOL WINAPI PolylineTo(HDC,const POINT*,DWORD);
2928 WINGDIAPI BOOL WINAPI PolyPolygon(HDC,const POINT*,const INT*,int);
2929 WINGDIAPI BOOL WINAPI PolyPolyline(HDC,const POINT*,const DWORD*,DWORD);
2930 WINGDIAPI BOOL WINAPI PolyTextOutA(HDC,const POLYTEXTA*,int);
2931 WINGDIAPI BOOL WINAPI PolyTextOutW(HDC,const POLYTEXTW*,int);
2932 WINGDIAPI BOOL WINAPI PtInRegion(HRGN,int,int);
2933 WINGDIAPI BOOL WINAPI PtVisible(HDC,int,int);
2934 WINGDIAPI UINT WINAPI RealizePalette(HDC);
2935 WINGDIAPI BOOL WINAPI Rectangle(HDC,int,int,int,int);
2936 WINGDIAPI BOOL WINAPI RectInRegion(HRGN,LPCRECT);
2937 WINGDIAPI BOOL WINAPI RectVisible(HDC,LPCRECT);
2938 WINGDIAPI BOOL WINAPI RemoveFontResourceA(LPCSTR);
2939 WINGDIAPI BOOL WINAPI RemoveFontResourceW(LPCWSTR);
2940 #if (_WIN32_WINNT >= 0x0500)
2941 WINGDIAPI BOOL WINAPI RemoveFontMemResourceEx(HANDLE);
2942 WINGDIAPI BOOL WINAPI RemoveFontResourceExA(LPCSTR,DWORD,PVOID);
2943 WINGDIAPI BOOL WINAPI RemoveFontResourceExW(LPCWSTR,DWORD,PVOID);
2944 #endif
2945 WINGDIAPI HDC WINAPI ResetDCA(HDC,const DEVMODEA*);
2946 WINGDIAPI HDC WINAPI ResetDCW(HDC,const DEVMODEW*);
2947 WINGDIAPI BOOL WINAPI ResizePalette(HPALETTE,UINT);
2948 WINGDIAPI BOOL WINAPI RestoreDC(HDC,int);
2949 WINGDIAPI BOOL WINAPI RoundRect(HDC,int,int,int,int,int,int);
2950 WINGDIAPI int WINAPI SaveDC(HDC);
2951 WINGDIAPI BOOL WINAPI ScaleViewportExtEx(HDC,int,int,int,int,LPSIZE);
2952 WINGDIAPI BOOL WINAPI ScaleWindowExtEx(HDC,int,int,int,int,LPSIZE);
2953 WINGDIAPI BOOL WINAPI SelectClipPath(HDC,int);
2954 WINGDIAPI int WINAPI SelectClipRgn(HDC,HRGN);
2955 WINGDIAPI HGDIOBJ WINAPI SelectObject(HDC,HGDIOBJ);
2956 WINGDIAPI HPALETTE WINAPI SelectPalette(HDC,HPALETTE,BOOL);
2957 WINGDIAPI int WINAPI SetAbortProc(HDC,ABORTPROC);
2958 WINGDIAPI int WINAPI SetArcDirection(HDC,int);
2959 WINGDIAPI LONG WINAPI SetBitmapBits(HBITMAP,DWORD,PCVOID);
2960 WINGDIAPI BOOL WINAPI SetBitmapDimensionEx(HBITMAP,int,int,LPSIZE);
2961 WINGDIAPI COLORREF WINAPI SetBkColor(HDC,COLORREF);
2962 WINGDIAPI int WINAPI SetBkMode(HDC,int);
2963 WINGDIAPI UINT WINAPI SetBoundsRect(HDC,LPCRECT,UINT);
2964 WINGDIAPI BOOL WINAPI SetBrushOrgEx(HDC,int,int,LPPOINT);
2965 WINGDIAPI BOOL WINAPI SetColorAdjustment(HDC,const COLORADJUSTMENT*);
2966 WINGDIAPI BOOL WINAPI SetColorSpace(HDC,HCOLORSPACE);
2967 #if (_WIN32_WINNT >= 0x0500)
2968 WINGDIAPI COLORREF WINAPI SetDCBrushColor(HDC,COLORREF);
2969 WINGDIAPI COLORREF WINAPI SetDCPenColor(HDC,COLORREF);
2970 #endif
2971 WINGDIAPI BOOL WINAPI SetDeviceGammaRamp(HDC,PVOID);
2972 WINGDIAPI UINT WINAPI SetDIBColorTable(HDC,UINT,UINT,const RGBQUAD*);
2973 WINGDIAPI int WINAPI SetDIBits(HDC,HBITMAP,UINT,UINT,PCVOID,const BITMAPINFO*,UINT);
2974 WINGDIAPI int WINAPI SetDIBitsToDevice(HDC,int,int,DWORD,DWORD,int,int,UINT,UINT,PCVOID,const BITMAPINFO*,UINT);
2975 WINGDIAPI HENHMETAFILE WINAPI SetEnhMetaFileBits(UINT,const BYTE*);
2976 WINGDIAPI int WINAPI SetGraphicsMode(HDC,int);
2977 WINGDIAPI int WINAPI SetICMMode(HDC,int);
2978 WINGDIAPI BOOL WINAPI SetICMProfileA(HDC,LPSTR);
2979 WINGDIAPI BOOL WINAPI SetICMProfileW(HDC,LPWSTR);
2980 WINGDIAPI int WINAPI SetMapMode(HDC,int);
2981 WINGDIAPI DWORD WINAPI SetMapperFlags(HDC,DWORD);
2982 WINGDIAPI HMETAFILE WINAPI SetMetaFileBitsEx(UINT,const BYTE *);
2983 WINGDIAPI int WINAPI SetMetaRgn(HDC);
2984 WINGDIAPI BOOL WINAPI SetMiterLimit(HDC,FLOAT,PFLOAT);
2985 WINGDIAPI UINT WINAPI SetPaletteEntries(HPALETTE,UINT,UINT,const PALETTEENTRY*);
2986 WINGDIAPI COLORREF WINAPI SetPixel(HDC,int,int,COLORREF);
2987 WINGDIAPI BOOL WINAPI SetPixelFormat(HDC,int,const PIXELFORMATDESCRIPTOR*);
2988 WINGDIAPI BOOL WINAPI SetPixelV(HDC,int,int,COLORREF);
2989 WINGDIAPI int WINAPI SetPolyFillMode(HDC,int);
2990 WINGDIAPI BOOL WINAPI SetRectRgn(HRGN,int,int,int,int);
2991 WINGDIAPI int WINAPI SetROP2(HDC,int);
2992 WINGDIAPI int WINAPI SetStretchBltMode(HDC,int);
2993 WINGDIAPI UINT WINAPI SetSystemPaletteUse(HDC,UINT);
2994 WINGDIAPI UINT WINAPI SetTextAlign(HDC,UINT);
2995 WINGDIAPI int WINAPI SetTextCharacterExtra(HDC,int);
2996 WINGDIAPI COLORREF WINAPI SetTextColor(HDC,COLORREF);
2997 WINGDIAPI BOOL WINAPI SetTextJustification(HDC,int,int);
2998 WINGDIAPI BOOL WINAPI SetViewportExtEx(HDC,int,int,LPSIZE);
2999 WINGDIAPI BOOL WINAPI SetViewportOrgEx(HDC,int,int,LPPOINT);
3000 WINGDIAPI BOOL WINAPI SetWindowExtEx(HDC,int,int,LPSIZE);
3001 WINGDIAPI BOOL WINAPI SetWindowOrgEx(HDC,int,int,LPPOINT);
3002 WINGDIAPI HENHMETAFILE WINAPI SetWinMetaFileBits(UINT,const BYTE*,HDC,const METAFILEPICT*);
3003 WINGDIAPI BOOL WINAPI SetWorldTransform(HDC,const XFORM *);
3004 WINGDIAPI int WINAPI StartDocA(HDC,const DOCINFOA*);
3005 WINGDIAPI int WINAPI StartDocW(HDC,const DOCINFOW*);
3006 WINGDIAPI int WINAPI StartPage(HDC);
3007 WINGDIAPI BOOL WINAPI StretchBlt(HDC,int,int,int,int,HDC,int,int,int,int,DWORD);
3008 WINGDIAPI int WINAPI StretchDIBits(HDC,int,int,int,int,int,int,int,int,const VOID *,const BITMAPINFO *,UINT,DWORD);
3009 WINGDIAPI BOOL WINAPI StrokeAndFillPath(HDC);
3010 WINGDIAPI BOOL WINAPI StrokePath(HDC);
3011 WINGDIAPI BOOL WINAPI SwapBuffers(HDC);
3012 WINGDIAPI BOOL WINAPI TextOutA(HDC,int,int,LPCSTR,int);
3013 WINGDIAPI BOOL WINAPI TextOutW(HDC,int,int,LPCWSTR,int);
3014 WINGDIAPI BOOL WINAPI TranslateCharsetInfo(PDWORD,LPCHARSETINFO,DWORD);
3015 WINGDIAPI BOOL WINAPI UnrealizeObject(HGDIOBJ);
3016 WINGDIAPI BOOL WINAPI UpdateColors(HDC);
3017 WINGDIAPI BOOL WINAPI UpdateICMRegKeyA(DWORD,DWORD,LPSTR,UINT);
3018 WINGDIAPI BOOL WINAPI UpdateICMRegKeyW(DWORD,DWORD,LPWSTR,UINT);
3019 WINGDIAPI BOOL WINAPI WidenPath(HDC);
3020 WINGDIAPI BOOL WINAPI wglCopyContext(HGLRC,HGLRC,UINT);
3021 WINGDIAPI HGLRC WINAPI wglCreateContext(HDC);
3022 WINGDIAPI HGLRC WINAPI wglCreateLayerContext(HDC,int);
3023 WINGDIAPI BOOL WINAPI wglDeleteContext(HGLRC);
3024 WINGDIAPI BOOL WINAPI wglDescribeLayerPlane(HDC,int,int,UINT,LPLAYERPLANEDESCRIPTOR);
3025 WINGDIAPI HGLRC WINAPI wglGetCurrentContext(void);
3026 WINGDIAPI HDC WINAPI wglGetCurrentDC(void);
3027 WINGDIAPI int WINAPI wglGetLayerPaletteEntries(HDC,int,int,int,COLORREF*);
3028 WINGDIAPI PROC WINAPI wglGetProcAddress(LPCSTR);
3029 WINGDIAPI BOOL WINAPI wglMakeCurrent(HDC,HGLRC);
3030 WINGDIAPI BOOL WINAPI wglRealizeLayerPalette(HDC,int,BOOL);
3031 WINGDIAPI int WINAPI wglSetLayerPaletteEntries(HDC,int,int,int,const COLORREF*);
3032 WINGDIAPI BOOL WINAPI wglShareLists(HGLRC,HGLRC);
3033 WINGDIAPI BOOL WINAPI wglSwapLayerBuffers(HDC,UINT);
3034 WINGDIAPI BOOL WINAPI wglUseFontBitmapsA(HDC,DWORD,DWORD,DWORD);
3035 WINGDIAPI BOOL WINAPI wglUseFontBitmapsW(HDC,DWORD,DWORD,DWORD);
3036 WINGDIAPI BOOL WINAPI wglUseFontOutlinesA(HDC,DWORD,DWORD,DWORD,FLOAT,FLOAT,int,LPGLYPHMETRICSFLOAT);
3037 WINGDIAPI BOOL WINAPI wglUseFontOutlinesW(HDC,DWORD,DWORD,DWORD,FLOAT,FLOAT,int,LPGLYPHMETRICSFLOAT);
3038 #if (WINVER >= 0x0410)
3039 WINGDIAPI BOOL WINAPI AlphaBlend(HDC,int,int,int,int,HDC,int,int,int,int,BLENDFUNCTION);
3040 WINGDIAPI BOOL WINAPI GradientFill(HDC,PTRIVERTEX,ULONG,PVOID,ULONG,ULONG);
3041 WINGDIAPI BOOL WINAPI TransparentBlt(HDC,int,int,int,int,HDC,int,int,int,int,UINT);
3042 #endif
3043 #if (_WIN32_WINNT >= 0x0500)
3044 WINGDIAPI DWORD WINAPI GetFontUnicodeRanges(HDC,LPGLYPHSET);
3045 WINGDIAPI DWORD WINAPI GetGlyphIndicesA(HDC,LPCSTR,int,LPWORD,DWORD);
3046 WINGDIAPI DWORD WINAPI GetGlyphIndicesW(HDC,LPCWSTR,int,LPWORD,DWORD);
3047 #endif
3048 #if (WINVER >= 0x0500)
3049 WINGDIAPI DWORD WINAPI GetLayout(HDC);
3050 WINGDIAPI DWORD WINAPI SetLayout(HDC, DWORD);
3051 #endif
3053 #ifdef UNICODE
3054 typedef WCHAR BCHAR;
3055 typedef DOCINFOW DOCINFO, *LPDOCINFO;
3056 typedef LOGFONTW LOGFONT,*PLOGFONT,*LPLOGFONT;
3057 typedef TEXTMETRICW TEXTMETRIC,*PTEXTMETRIC,*LPTEXTMETRIC;
3058 #define ICMENUMPROC ICMENUMPROCW
3059 #define FONTENUMPROC FONTENUMPROCW
3060 typedef DEVMODEW DEVMODE,*PDEVMODE,*LPDEVMODE;
3061 #if _WIN32_WINNT >= 0x0500
3062 typedef ENUMLOGFONTEXDVW ENUMLOGFONTEXDV;
3063 typedef PENUMLOGFONTEXDVW PENUMLOGFONTEXDV;
3064 typedef LPENUMLOGFONTEXDVW LPENUMLOGFONTEXDV;
3065 #endif
3066 typedef EXTLOGFONTW EXTLOGFONT,*PEXTLOGFONT,*LPEXTLOGFONT;
3067 typedef GCP_RESULTSW GCP_RESULTS,*LPGCP_RESULTS;
3068 typedef OUTLINETEXTMETRICW OUTLINETEXTMETRIC,*POUTLINETEXTMETRIC,*LPOUTLINETEXTMETRIC;
3069 typedef POLYTEXTW POLYTEXT,*PPOLYTEXT,*LPPOLYTEXT;
3070 typedef LOGCOLORSPACEW LOGCOLORSPACE,*LPLOGCOLORSPACE;
3071 typedef NEWTEXTMETRICW NEWTEXTMETRIC,*PNEWTEXTMETRIC,*LPNEWTEXTMETRIC;
3072 typedef NEWTEXTMETRICEXW NEWTEXTMETRICEX;
3073 typedef ENUMLOGFONTW ENUMLOGFONT,*LPENUMLOGFONT;
3074 typedef ENUMLOGFONTEXW ENUMLOGFONTEX,*LPENUMLOGFONTEX;
3075 typedef DISPLAY_DEVICEW DISPLAY_DEVICE, *PDISPLAY_DEVICE, *LPDISPLAY_DEVICE;
3076 #define AddFontResource AddFontResourceW
3077 #if (_WIN32_WINNT >= 0x0500)
3078 #define AddFontResourceEx AddFontResourceExW
3079 #endif
3080 #define CopyEnhMetaFile CopyEnhMetaFileW
3081 #define CopyMetaFile CopyMetaFileW
3082 #define CreateColorSpace CreateColorSpaceW
3083 #define CreateDC CreateDCW
3084 #define CreateEnhMetaFile CreateEnhMetaFileW
3085 #define CreateFont CreateFontW
3086 #define CreateFontIndirect CreateFontIndirectW
3087 #define CreateIC CreateICW
3088 #define CreateMetaFile CreateMetaFileW
3089 #define CreateScalableFontResource CreateScalableFontResourceW
3090 #define DeviceCapabilities DeviceCapabilitiesW
3091 #define EnumFontFamilies EnumFontFamiliesW
3092 #define EnumFontFamiliesEx EnumFontFamiliesExW
3093 #define EnumFonts EnumFontsW
3094 #define EnumICMProfiles EnumICMProfilesW
3095 #define ExtTextOut ExtTextOutW
3096 #define GetCharABCWidthsFloat GetCharABCWidthsFloatW
3097 #define GetCharABCWidths GetCharABCWidthsW
3098 #define GetCharacterPlacement GetCharacterPlacementW
3099 #define GetCharWidth32 GetCharWidth32W
3100 #define GetCharWidthFloat GetCharWidthFloatW
3101 #define GetCharWidth GetCharWidthW
3102 #define GetEnhMetaFile GetEnhMetaFileW
3103 #define GetEnhMetaFileDescription GetEnhMetaFileDescriptionW
3104 #define GetGlyphOutline GetGlyphOutlineW
3105 #define GetICMProfile GetICMProfileW
3106 #define GetKerningPairs GetKerningPairsW
3107 #define GetLogColorSpace GetLogColorSpaceW
3108 #define GetMetaFile GetMetaFileW
3109 #define GetObject GetObjectW
3110 #define GetOutlineTextMetrics GetOutlineTextMetricsW
3111 #define GetTextExtentPoint GetTextExtentPointW
3112 #define GetTextExtentExPoint GetTextExtentExPointW
3113 #define GetTextExtentPoint32 GetTextExtentPoint32W
3114 #define GetTextFace GetTextFaceW
3115 #define GetTextMetrics GetTextMetricsW
3116 #define PolyTextOut PolyTextOutW
3117 #define RemoveFontResource RemoveFontResourceW
3118 #if (_WIN32_WINNT >= 0x0500)
3119 #define RemoveFontResourceEx RemoveFontResourceExW
3120 #endif
3121 #define ResetDC ResetDCW
3122 #define SetICMProfile SetICMProfileW
3123 #define StartDoc StartDocW
3124 #define TextOut TextOutW
3125 #define UpdateICMRegKey UpdateICMRegKeyW
3126 #define wglUseFontBitmaps wglUseFontBitmapsW
3127 #define wglUseFontOutlines wglUseFontOutlinesW
3128 #if (_WIN32_WINNT >= 0x0500)
3129 #define GetGlyphIndices GetGlyphIndicesW
3130 #endif
3131 #else /* UNICODE */
3132 typedef BYTE BCHAR;
3133 typedef DOCINFOA DOCINFO, *LPDOCINFO;
3134 typedef LOGFONTA LOGFONT,*PLOGFONT,*LPLOGFONT;
3135 typedef TEXTMETRICA TEXTMETRIC,*PTEXTMETRIC,*LPTEXTMETRIC;
3136 #define ICMENUMPROC ICMENUMPROCA
3137 #define FONTENUMPROC FONTENUMPROCA
3138 typedef DEVMODEA DEVMODE,*PDEVMODE,*LPDEVMODE;
3139 #if _WIN32_WINNT >= 0x0500
3140 typedef ENUMLOGFONTEXDVA ENUMLOGFONTEXDV;
3141 typedef PENUMLOGFONTEXDVA PENUMLOGFONTEXDV;
3142 typedef LPENUMLOGFONTEXDVA LPENUMLOGFONTEXDV;
3143 #endif
3144 typedef EXTLOGFONTA EXTLOGFONT,*PEXTLOGFONT,*LPEXTLOGFONT;
3145 typedef GCP_RESULTSA GCP_RESULTS,*LPGCP_RESULTS;
3146 typedef OUTLINETEXTMETRICA OUTLINETEXTMETRIC,*POUTLINETEXTMETRIC,*LPOUTLINETEXTMETRIC;
3147 typedef POLYTEXTA POLYTEXT,*PPOLYTEXT,*LPPOLYTEXT;
3148 typedef LOGCOLORSPACEA LOGCOLORSPACE,*LPLOGCOLORSPACE;
3149 typedef NEWTEXTMETRICA NEWTEXTMETRIC,*PNEWTEXTMETRIC,*LPNEWTEXTMETRIC;
3150 typedef NEWTEXTMETRICEXA NEWTEXTMETRICEX;
3151 typedef ENUMLOGFONTA ENUMLOGFONT,*LPENUMLOGFONT;
3152 typedef ENUMLOGFONTEXA ENUMLOGFONTEX,*LPENUMLOGFONTEX;
3153 typedef DISPLAY_DEVICEA DISPLAY_DEVICE, *PDISPLAY_DEVICE, *LPDISPLAY_DEVICE;
3154 #define AddFontResource AddFontResourceA
3155 #if (_WIN32_WINNT >= 0x0500)
3156 #define AddFontResourceEx AddFontResourceExA
3157 #endif
3158 #define CopyEnhMetaFile CopyEnhMetaFileA
3159 #define CopyMetaFile CopyMetaFileA
3160 #define CreateColorSpace CreateColorSpaceA
3161 #define CreateDC CreateDCA
3162 #define CreateEnhMetaFile CreateEnhMetaFileA
3163 #define CreateFont CreateFontA
3164 #define CreateFontIndirect CreateFontIndirectA
3165 #define CreateIC CreateICA
3166 #define CreateMetaFile CreateMetaFileA
3167 #define CreateScalableFontResource CreateScalableFontResourceA
3168 #define DeviceCapabilities DeviceCapabilitiesA
3169 #define EnumFontFamilies EnumFontFamiliesA
3170 #define EnumFontFamiliesEx EnumFontFamiliesExA
3171 #define EnumFonts EnumFontsA
3172 #define EnumICMProfiles EnumICMProfilesA
3173 #define ExtTextOut ExtTextOutA
3174 #define GetCharWidthFloat GetCharWidthFloatA
3175 #define GetCharWidth GetCharWidthA
3176 #define GetCharacterPlacement GetCharacterPlacementA
3177 #define GetCharABCWidths GetCharABCWidthsA
3178 #define GetCharABCWidthsFloat GetCharABCWidthsFloatA
3179 #define GetCharWidth32 GetCharWidth32A
3180 #define GetEnhMetaFile GetEnhMetaFileA
3181 #define GetEnhMetaFileDescription GetEnhMetaFileDescriptionA
3182 #define GetGlyphOutline GetGlyphOutlineA
3183 #define GetICMProfile GetICMProfileA
3184 #define GetKerningPairs GetKerningPairsA
3185 #define GetLogColorSpace GetLogColorSpaceA
3186 #define GetMetaFile GetMetaFileA
3187 #define GetObject GetObjectA
3188 #define GetOutlineTextMetrics GetOutlineTextMetricsA
3189 #define GetTextExtentPoint GetTextExtentPointA
3190 #define GetTextExtentExPoint GetTextExtentExPointA
3191 #define GetTextExtentPoint32 GetTextExtentPoint32A
3192 #define GetTextFace GetTextFaceA
3193 #define GetTextMetrics GetTextMetricsA
3194 #define PolyTextOut PolyTextOutA
3195 #define RemoveFontResource RemoveFontResourceA
3196 #if (_WIN32_WINNT >= 0x0500)
3197 #define RemoveFontResourceEx RemoveFontResourceExA
3198 #endif
3199 #define ResetDC ResetDCA
3200 #define SetICMProfile SetICMProfileA
3201 #define StartDoc StartDocA
3202 #define TextOut TextOutA
3203 #define UpdateICMRegKey UpdateICMRegKeyA
3204 #define wglUseFontBitmaps wglUseFontBitmapsA
3205 #define wglUseFontOutlines wglUseFontOutlinesA
3206 #if (_WIN32_WINNT >= 0x0500)
3207 #define GetGlyphIndices GetGlyphIndicesA
3208 #endif
3209 #endif /* UNICODE */
3210 #endif /* RC_INVOKED */
3211 #ifdef __cplusplus
3213 #endif
3214 #endif