3 * Copyright 2012, 2013 MinGW.org project
5 * Permission is hereby granted, free of charge, to any person obtaining a
6 * copy of this software and associated documentation files (the "Software"),
7 * to deal in the Software without restriction, including without limitation
8 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
9 * and/or sell copies of the Software, and to permit persons to whom the
10 * Software is furnished to do so, subject to the following conditions:
12 * The above copyright notice and this permission notice (including the next
13 * paragraph) shall be included in all copies or substantial portions of the
16 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
21 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
22 * DEALINGS IN THE SOFTWARE.
27 #pragma GCC system_header
35 #ifdef __W32API_USE_DLLIMPORT__
36 #define WINGDIAPI DECLSPEC_IMPORT
45 #define BI_BITFIELDS 3
48 #define LF_FACESIZE 32
49 #define LF_FULLFACESIZE 64
51 #define CA_LOG_FILTER 2
52 #define ILLUMINANT_DEVICE_DEFAULT 0
53 #define ILLUMINANT_A 1
54 #define ILLUMINANT_B 2
55 #define ILLUMINANT_C 3
56 #define ILLUMINANT_D50 4
57 #define ILLUMINANT_D55 5
58 #define ILLUMINANT_D65 6
59 #define ILLUMINANT_D75 7
60 #define ILLUMINANT_F2 8
61 #define ILLUMINANT_MAX_INDEX ILLUMINANT_F2
62 #define ILLUMINANT_TUNGSTEN ILLUMINANT_A
63 #define ILLUMINANT_DAYLIGHT ILLUMINANT_C
64 #define ILLUMINANT_FLUORESCENT ILLUMINANT_F2
65 #define ILLUMINANT_NTSC ILLUMINANT_C
66 #define RGB_GAMMA_MIN 2500
67 #define RGB_GAMMA_MAX 65000
68 #define REFERENCE_WHITE_MIN 6000
69 #define REFERENCE_WHITE_MAX 10000
70 #define REFERENCE_BLACK_MIN 0
71 #define REFERENCE_BLACK_MAX 4000
72 #define COLOR_ADJ_MIN (-100)
73 #define COLOR_ADJ_MAX 100
74 #define CCHDEVICENAME 32
75 #define CCHFORMNAME 32
77 #define DI_DEFAULTSIZE 8
81 #define DI_APPBANDING 1
83 #define EMR_POLYBEZIER 2
85 #define EMR_POLYLINE 4
86 #define EMR_POLYBEZIERTO 5
87 #define EMR_POLYLINETO 6
88 #define EMR_POLYPOLYLINE 7
89 #define EMR_POLYPOLYGON 8
90 #define EMR_SETWINDOWEXTEX 9
91 #define EMR_SETWINDOWORGEX 10
92 #define EMR_SETVIEWPORTEXTEX 11
93 #define EMR_SETVIEWPORTORGEX 12
94 #define EMR_SETBRUSHORGEX 13
96 #define EMR_SETPIXELV 15
97 #define EMR_SETMAPPERFLAGS 16
98 #define EMR_SETMAPMODE 17
99 #define EMR_SETBKMODE 18
100 #define EMR_SETPOLYFILLMODE 19
101 #define EMR_SETROP2 20
102 #define EMR_SETSTRETCHBLTMODE 21
103 #define EMR_SETTEXTALIGN 22
104 #define EMR_SETCOLORADJUSTMENT 23
105 #define EMR_SETTEXTCOLOR 24
106 #define EMR_SETBKCOLOR 25
107 #define EMR_OFFSETCLIPRGN 26
108 #define EMR_MOVETOEX 27
109 #define EMR_SETMETARGN 28
110 #define EMR_EXCLUDECLIPRECT 29
111 #define EMR_INTERSECTCLIPRECT 30
112 #define EMR_SCALEVIEWPORTEXTEX 31
113 #define EMR_SCALEWINDOWEXTEX 32
114 #define EMR_SAVEDC 33
115 #define EMR_RESTOREDC 34
116 #define EMR_SETWORLDTRANSFORM 35
117 #define EMR_MODIFYWORLDTRANSFORM 36
118 #define EMR_SELECTOBJECT 37
119 #define EMR_CREATEPEN 38
120 #define EMR_CREATEBRUSHINDIRECT 39
121 #define EMR_DELETEOBJECT 40
122 #define EMR_ANGLEARC 41
123 #define EMR_ELLIPSE 42
124 #define EMR_RECTANGLE 43
125 #define EMR_ROUNDRECT 44
129 #define EMR_SELECTPALETTE 48
130 #define EMR_CREATEPALETTE 49
131 #define EMR_SETPALETTEENTRIES 50
132 #define EMR_RESIZEPALETTE 51
133 #define EMR_REALIZEPALETTE 52
134 #define EMR_EXTFLOODFILL 53
135 #define EMR_LINETO 54
137 #define EMR_POLYDRAW 56
138 #define EMR_SETARCDIRECTION 57
139 #define EMR_SETMITERLIMIT 58
140 #define EMR_BEGINPATH 59
141 #define EMR_ENDPATH 60
142 #define EMR_CLOSEFIGURE 61
143 #define EMR_FILLPATH 62
144 #define EMR_STROKEANDFILLPATH 63
145 #define EMR_STROKEPATH 64
146 #define EMR_FLATTENPATH 65
147 #define EMR_WIDENPATH 66
148 #define EMR_SELECTCLIPPATH 67
149 #define EMR_ABORTPATH 68
150 #define EMR_GDICOMMENT 70
151 #define EMR_FILLRGN 71
152 #define EMR_FRAMERGN 72
153 #define EMR_INVERTRGN 73
154 #define EMR_PAINTRGN 74
155 #define EMR_EXTSELECTCLIPRGN 75
156 #define EMR_BITBLT 76
157 #define EMR_STRETCHBLT 77
158 #define EMR_MASKBLT 78
159 #define EMR_PLGBLT 79
160 #define EMR_SETDIBITSTODEVICE 80
161 #define EMR_STRETCHDIBITS 81
162 #define EMR_EXTCREATEFONTINDIRECTW 82
163 #define EMR_EXTTEXTOUTA 83
164 #define EMR_EXTTEXTOUTW 84
165 #define EMR_POLYBEZIER16 85
166 #define EMR_POLYGON16 86
167 #define EMR_POLYLINE16 87
168 #define EMR_POLYBEZIERTO16 88
169 #define EMR_POLYLINETO16 89
170 #define EMR_POLYPOLYLINE16 90
171 #define EMR_POLYPOLYGON16 91
172 #define EMR_POLYDRAW16 92
173 #define EMR_CREATEMONOBRUSH 93
174 #define EMR_CREATEDIBPATTERNBRUSHPT 94
175 #define EMR_EXTCREATEPEN 95
176 #define EMR_POLYTEXTOUTA 96
177 #define EMR_POLYTEXTOUTW 97
178 #define EMR_SETICMMODE 98
179 #define EMR_CREATECOLORSPACE 99
180 #define EMR_SETCOLORSPACE 100
181 #define EMR_DELETECOLORSPACE 101
182 #define EMR_GLSRECORD 102
183 #define EMR_GLSBOUNDEDRECORD 103
184 #define EMR_PIXELFORMAT 104
185 #define ENHMETA_SIGNATURE 1179469088
186 #define EPS_SIGNATURE 0x46535045
188 #define META_SETBKCOLOR 0x201
189 #define META_SETBKMODE 0x102
190 #define META_SETMAPMODE 0x103
191 #define META_SETROP2 0x104
192 #define META_SETRELABS 0x105
193 #define META_SETPOLYFILLMODE 0x106
194 #define META_SETSTRETCHBLTMODE 0x107
195 #define META_SETTEXTCHAREXTRA 0x108
196 #define META_SETTEXTCOLOR 0x209
197 #define META_SETTEXTJUSTIFICATION 0x20A
198 #define META_SETWINDOWORG 0x20B
199 #define META_SETWINDOWEXT 0x20C
200 #define META_SETVIEWPORTORG 0x20D
201 #define META_SETVIEWPORTEXT 0x20E
202 #define META_OFFSETWINDOWORG 0x20F
203 #define META_SCALEWINDOWEXT 0x410
204 #define META_OFFSETVIEWPORTORG 0x211
205 #define META_SCALEVIEWPORTEXT 0x412
206 #define META_LINETO 0x213
207 #define META_MOVETO 0x214
208 #define META_EXCLUDECLIPRECT 0x415
209 #define META_INTERSECTCLIPRECT 0x416
210 #define META_ARC 0x817
211 #define META_ELLIPSE 0x418
212 #define META_FLOODFILL 0x419
213 #define META_PIE 0x81A
214 #define META_RECTANGLE 0x41B
215 #define META_ROUNDRECT 0x61C
216 #define META_PATBLT 0x61D
217 #define META_SAVEDC 0x1E
218 #define META_SETPIXEL 0x41F
219 #define META_OFFSETCLIPRGN 0x220
220 #define META_TEXTOUT 0x521
221 #define META_BITBLT 0x922
222 #define META_STRETCHBLT 0xB23
223 #define META_POLYGON 0x324
224 #define META_POLYLINE 0x325
225 #define META_ESCAPE 0x626
226 #define META_RESTOREDC 0x127
227 #define META_FILLREGION 0x228
228 #define META_FRAMEREGION 0x429
229 #define META_INVERTREGION 0x12A
230 #define META_PAINTREGION 0x12B
231 #define META_SELECTCLIPREGION 0x12C
232 #define META_SELECTOBJECT 0x12D
233 #define META_SETTEXTALIGN 0x12E
234 #define META_CHORD 0x830
235 #define META_SETMAPPERFLAGS 0x231
236 #define META_EXTTEXTOUT 0xa32
237 #define META_SETDIBTODEV 0xd33
238 #define META_SELECTPALETTE 0x234
239 #define META_REALIZEPALETTE 0x35
240 #define META_ANIMATEPALETTE 0x436
241 #define META_SETPALENTRIES 0x37
242 #define META_POLYPOLYGON 0x538
243 #define META_RESIZEPALETTE 0x139
244 #define META_DIBBITBLT 0x940
245 #define META_DIBSTRETCHBLT 0xb41
246 #define META_DIBCREATEPATTERNBRUSH 0x142
247 #define META_STRETCHDIB 0xf43
248 #define META_EXTFLOODFILL 0x548
249 #define META_DELETEOBJECT 0x1f0
250 #define META_CREATEPALETTE 0xf7
251 #define META_CREATEPATTERNBRUSH 0x1F9
252 #define META_CREATEPENINDIRECT 0x2FA
253 #define META_CREATEFONTINDIRECT 0x2FB
254 #define META_CREATEBRUSHINDIRECT 0x2FC
255 #define META_CREATEREGION 0x6FF
258 #define PT_BEZIERTO 4
259 #define PT_CLOSEFIGURE 1
260 #define ELF_VENDOR_SIZE 4
261 #define ELF_VERSION 0
262 #define ELF_CULTURE_LATIN 0
263 #define PFD_TYPE_RGBA 0
264 #define PFD_TYPE_COLORINDEX 1
265 #define PFD_MAIN_PLANE 0
266 #define PFD_OVERLAY_PLANE 1
267 #define PFD_UNDERLAY_PLANE (-1)
268 #define PFD_DOUBLEBUFFER 1
270 #define PFD_DRAW_TO_WINDOW 4
271 #define PFD_DRAW_TO_BITMAP 8
272 #define PFD_SUPPORT_GDI 16
273 #define PFD_SUPPORT_OPENGL 32
274 #define PFD_GENERIC_FORMAT 64
275 #define PFD_NEED_PALETTE 128
276 #define PFD_NEED_SYSTEM_PALETTE 0x00000100
277 #define PFD_SWAP_EXCHANGE 0x00000200
278 #define PFD_SWAP_COPY 0x00000400
279 #define PFD_SWAP_LAYER_BUFFERS 0x00000800
280 #define PFD_GENERIC_ACCELERATED 0x00001000
281 #define PFD_DEPTH_DONTCARE 0x20000000
282 #define PFD_DOUBLEBUFFER_DONTCARE 0x40000000
283 #define PFD_STEREO_DONTCARE 0x80000000
284 #define SP_ERROR (-1)
285 #define SP_OUTOFDISK (-4)
286 #define SP_OUTOFMEMORY (-5)
287 #define SP_USERABORT (-3)
288 #define SP_APPABORT (-2)
289 #define BLACKNESS 0x00000042
290 #define NOTSRCERASE 0x001100A6
291 #define NOTSRCCOPY 0x00330008
292 #define SRCERASE 0x00440328
293 #define DSTINVERT 0x00550009
294 #define PATINVERT 0x005A0049
295 #define SRCINVERT 0x00660046
296 #define SRCAND 0x008800C6
297 #define MERGEPAINT 0x00BB0226
298 #define MERGECOPY 0x00C000CA
299 #define SRCCOPY 0x00CC0020
300 #define SRCPAINT 0x00EE0086
301 #define PATCOPY 0x00F00021
302 #define PATPAINT 0x00FB0A09
303 #define WHITENESS 0x00FF0062
304 #define CAPTUREBLT 0x40000000
305 #define NOMIRRORBITMAP 0x80000000
307 #define R2_COPYPEN 13
308 #define R2_MASKNOTPEN 3
310 #define R2_MASKPENNOT 5
311 #define R2_MERGENOTPEN 12
312 #define R2_MERGEPEN 15
313 #define R2_MERGEPENNOT 14
316 #define R2_NOTCOPYPEN 4
317 #define R2_NOTMASKPEN 8
318 #define R2_NOTMERGEPEN 2
319 #define R2_NOTXORPEN 10
322 #define CM_OUT_OF_GAMUT 255
323 #define CM_IN_GAMUT 0
330 #define SIMPLEREGION 2
331 #define COMPLEXREGION 3
334 #define DIB_PAL_COLORS 1
335 #define DIB_RGB_COLORS 0
336 #define FW_DONTCARE 0
338 #define FW_EXTRALIGHT 200
339 #define FW_ULTRALIGHT FW_EXTRALIGHT
341 #define FW_NORMAL 400
342 #define FW_REGULAR 400
343 #define FW_MEDIUM 500
344 #define FW_SEMIBOLD 600
345 #define FW_DEMIBOLD FW_SEMIBOLD
347 #define FW_EXTRABOLD 800
348 #define FW_ULTRABOLD FW_EXTRABOLD
350 #define FW_BLACK FW_HEAVY
351 #define ANSI_CHARSET 0
352 #define DEFAULT_CHARSET 1
353 #define SYMBOL_CHARSET 2
354 #define SHIFTJIS_CHARSET 128
355 #define HANGEUL_CHARSET 129
356 #define HANGUL_CHARSET 129
357 #define GB2312_CHARSET 134
358 #define CHINESEBIG5_CHARSET 136
359 #define GREEK_CHARSET 161
360 #define TURKISH_CHARSET 162
361 #define HEBREW_CHARSET 177
362 #define ARABIC_CHARSET 178
363 #define BALTIC_CHARSET 186
364 #define RUSSIAN_CHARSET 204
365 #define THAI_CHARSET 222
366 #define EASTEUROPE_CHARSET 238
367 #define OEM_CHARSET 255
368 #define JOHAB_CHARSET 130
369 #define VIETNAMESE_CHARSET 163
370 #define MAC_CHARSET 77
371 #define OUT_DEFAULT_PRECIS 0
372 #define OUT_STRING_PRECIS 1
373 #define OUT_CHARACTER_PRECIS 2
374 #define OUT_STROKE_PRECIS 3
375 #define OUT_TT_PRECIS 4
376 #define OUT_DEVICE_PRECIS 5
377 #define OUT_RASTER_PRECIS 6
378 #define OUT_TT_ONLY_PRECIS 7
379 #define OUT_OUTLINE_PRECIS 8
380 /* http://www.pinvoke.net/default.aspx/Structures/LOGFONT.html */
381 #define OUT_PS_ONLY_PRECIS 10
382 #define CLIP_DEFAULT_PRECIS 0
383 #define CLIP_CHARACTER_PRECIS 1
384 #define CLIP_STROKE_PRECIS 2
386 #define CLIP_LH_ANGLES 16
387 #define CLIP_TT_ALWAYS 32
388 #define CLIP_EMBEDDED 128
389 #define DEFAULT_QUALITY 0
390 #define DRAFT_QUALITY 1
391 #define PROOF_QUALITY 2
392 #define NONANTIALIASED_QUALITY 3
393 #define ANTIALIASED_QUALITY 4
395 #define DEFAULT_PITCH 0
396 #define FIXED_PITCH 1
397 #define VARIABLE_PITCH 2
399 #define FF_DECORATIVE 80
400 #define FF_DONTCARE 0
405 #define PANOSE_COUNT 10
406 #define PAN_FAMILYTYPE_INDEX 0
407 #define PAN_SERIFSTYLE_INDEX 1
408 #define PAN_WEIGHT_INDEX 2
409 #define PAN_PROPORTION_INDEX 3
410 #define PAN_CONTRAST_INDEX 4
411 #define PAN_STROKEVARIATION_INDEX 5
412 #define PAN_ARMSTYLE_INDEX 6
413 #define PAN_LETTERFORM_INDEX 7
414 #define PAN_MIDLINE_INDEX 8
415 #define PAN_XHEIGHT_INDEX 9
416 #define PAN_CULTURE_LATIN 0
419 #define PAN_FAMILY_TEXT_DISPLAY 2
420 #define PAN_FAMILY_SCRIPT 3
421 #define PAN_FAMILY_DECORATIVE 4
422 #define PAN_FAMILY_PICTORIAL 5
423 #define PAN_SERIF_COVE 2
424 #define PAN_SERIF_OBTUSE_COVE 3
425 #define PAN_SERIF_SQUARE_COVE 4
426 #define PAN_SERIF_OBTUSE_SQUARE_COVE 5
427 #define PAN_SERIF_SQUARE 6
428 #define PAN_SERIF_THIN 7
429 #define PAN_SERIF_BONE 8
430 #define PAN_SERIF_EXAGGERATED 9
431 #define PAN_SERIF_TRIANGLE 10
432 #define PAN_SERIF_NORMAL_SANS 11
433 #define PAN_SERIF_OBTUSE_SANS 12
434 #define PAN_SERIF_PERP_SANS 13
435 #define PAN_SERIF_FLARED 14
436 #define PAN_SERIF_ROUNDED 15
437 #define PAN_WEIGHT_VERY_LIGHT 2
438 #define PAN_WEIGHT_LIGHT 3
439 #define PAN_WEIGHT_THIN 4
440 #define PAN_WEIGHT_BOOK 5
441 #define PAN_WEIGHT_MEDIUM 6
442 #define PAN_WEIGHT_DEMI 7
443 #define PAN_WEIGHT_BOLD 8
444 #define PAN_WEIGHT_HEAVY 9
445 #define PAN_WEIGHT_BLACK 10
446 #define PAN_WEIGHT_NORD 11
447 #define PAN_PROP_OLD_STYLE 2
448 #define PAN_PROP_MODERN 3
449 #define PAN_PROP_EVEN_WIDTH 4
450 #define PAN_PROP_EXPANDED 5
451 #define PAN_PROP_CONDENSED 6
452 #define PAN_PROP_VERY_EXPANDED 7
453 #define PAN_PROP_VERY_CONDENSED 8
454 #define PAN_PROP_MONOSPACED 9
455 #define PAN_CONTRAST_NONE 2
456 #define PAN_CONTRAST_VERY_LOW 3
457 #define PAN_CONTRAST_LOW 4
458 #define PAN_CONTRAST_MEDIUM_LOW 5
459 #define PAN_CONTRAST_MEDIUM 6
460 #define PAN_CONTRAST_MEDIUM_HIGH 7
461 #define PAN_CONTRAST_HIGH 8
462 #define PAN_CONTRAST_VERY_HIGH 9
463 #define PAN_STROKE_GRADUAL_DIAG 2
464 #define PAN_STROKE_GRADUAL_TRAN 3
465 #define PAN_STROKE_GRADUAL_VERT 4
466 #define PAN_STROKE_GRADUAL_HORZ 5
467 #define PAN_STROKE_RAPID_VERT 6
468 #define PAN_STROKE_RAPID_HORZ 7
469 #define PAN_STROKE_INSTANT_VERT 8
470 #define PAN_STRAIGHT_ARMS_HORZ 2
471 #define PAN_STRAIGHT_ARMS_WEDGE 3
472 #define PAN_STRAIGHT_ARMS_VERT 4
473 #define PAN_STRAIGHT_ARMS_SINGLE_SERIF 5
474 #define PAN_STRAIGHT_ARMS_DOUBLE_SERIF 6
475 #define PAN_BENT_ARMS_HORZ 7
476 #define PAN_BENT_ARMS_WEDGE 8
477 #define PAN_BENT_ARMS_VERT 9
478 #define PAN_BENT_ARMS_SINGLE_SERIF 10
479 #define PAN_BENT_ARMS_DOUBLE_SERIF 11
480 #define PAN_LETT_NORMAL_CONTACT 2
481 #define PAN_LETT_NORMAL_WEIGHTED 3
482 #define PAN_LETT_NORMAL_BOXED 4
483 #define PAN_LETT_NORMAL_FLATTENED 5
484 #define PAN_LETT_NORMAL_ROUNDED 6
485 #define PAN_LETT_NORMAL_OFF_CENTER 7
486 #define PAN_LETT_NORMAL_SQUARE 8
487 #define PAN_LETT_OBLIQUE_CONTACT 9
488 #define PAN_LETT_OBLIQUE_WEIGHTED 10
489 #define PAN_LETT_OBLIQUE_BOXED 11
490 #define PAN_LETT_OBLIQUE_FLATTENED 12
491 #define PAN_LETT_OBLIQUE_ROUNDED 13
492 #define PAN_LETT_OBLIQUE_OFF_CENTER 14
493 #define PAN_LETT_OBLIQUE_SQUARE 15
494 #define PAN_MIDLINE_STANDARD_TRIMMED 2
495 #define PAN_MIDLINE_STANDARD_POINTED 3
496 #define PAN_MIDLINE_STANDARD_SERIFED 4
497 #define PAN_MIDLINE_HIGH_TRIMMED 5
498 #define PAN_MIDLINE_HIGH_POINTED 6
499 #define PAN_MIDLINE_HIGH_SERIFED 7
500 #define PAN_MIDLINE_CONSTANT_TRIMMED 8
501 #define PAN_MIDLINE_CONSTANT_POINTED 9
502 #define PAN_MIDLINE_CONSTANT_SERIFED 10
503 #define PAN_MIDLINE_LOW_TRIMMED 11
504 #define PAN_MIDLINE_LOW_POINTED 12
505 #define PAN_MIDLINE_LOW_SERIFED 13
506 #define PAN_XHEIGHT_CONSTANT_SMALL 2
507 #define PAN_XHEIGHT_CONSTANT_STD 3
508 #define PAN_XHEIGHT_CONSTANT_LARGE 4
509 #define PAN_XHEIGHT_DUCKING_SMALL 5
510 #define PAN_XHEIGHT_DUCKING_STD 6
511 #define PAN_XHEIGHT_DUCKING_LARGE 7
514 #define FS_CYRILLIC 4
516 #define FS_TURKISH 16
519 #define FS_BALTIC 128
520 #define FS_THAI 0x10000
521 #define FS_JISJAPAN 0x20000
522 #define FS_CHINESESIMP 0x40000
523 #define FS_WANSUNG 0x80000
524 #define FS_CHINESETRAD 0x100000
525 #define FS_JOHAB 0x200000
526 #define FS_SYMBOL 0x80000000
527 #define HS_BDIAGONAL 3
529 #define HS_DIAGCROSS 5
530 #define HS_FDIAGONAL 2
531 #define HS_HORIZONTAL 0
532 #define HS_VERTICAL 1
533 #define PS_GEOMETRIC 65536
534 #define PS_COSMETIC 0
535 #define PS_ALTERNATE 8
540 #define PS_DASHDOTDOT 4
542 #define PS_USERSTYLE 7
543 #define PS_INSIDEFRAME 6
544 #define PS_ENDCAP_ROUND 0
545 #define PS_ENDCAP_SQUARE 256
546 #define PS_ENDCAP_FLAT 512
547 #define PS_JOIN_BEVEL 4096
548 #define PS_JOIN_MITER 8192
549 #define PS_JOIN_ROUND 0
550 #define PS_STYLE_MASK 15
551 #define PS_ENDCAP_MASK 3840
552 #define PS_TYPE_MASK 983040
555 #define DC_BINNAMES 12
559 #define DC_DATATYPE_PRODUCED 21
561 #define DC_EMF_COMPLIANT 20
562 #define DC_ENUMRESOLUTIONS 13
565 #define DC_FILEDEPENDENCIES 14
566 #define DC_MAXEXTENT 5
567 #define DC_MINEXTENT 4
568 #define DC_ORIENTATION 17
569 #define DC_PAPERNAMES 16
571 #define DC_PAPERSIZE 3
573 #define DC_TRUETYPE 15
574 #define DCTT_BITMAP 1
575 #define DCTT_DOWNLOAD 2
576 #define DCTT_SUBDEV 4
577 #define DCTT_DOWNLOAD_OUTLINE 8
578 #define DC_VERSION 10
579 #define DC_BINADJUST 19
580 #define DC_EMF_COMPLIANT 20
581 #define DC_DATATYPE_PRODUCED 21
582 #define DC_MANUFACTURER 23
585 #define DCBA_FACEUPNONE 0
586 #define DCBA_FACEUPCENTER 1
587 #define DCBA_FACEUPLEFT 2
588 #define DCBA_FACEUPRIGHT 3
589 #define DCBA_FACEDOWNNONE 256
590 #define DCBA_FACEDOWNCENTER 257
591 #define DCBA_FACEDOWNLEFT 258
592 #define DCBA_FACEDOWNRIGHT 259
593 #define FLOODFILLBORDER 0
594 #define FLOODFILLSURFACE 1
595 #define ETO_CLIPPED 0x0004
596 #define ETO_GLYPH_INDEX 0x0010
597 #define ETO_OPAQUE 0x0002
598 #define ETO_NUMERICSLATIN 0x0800
599 #define ETO_NUMERICSLOCAL 0x0400
600 #define ETO_RTLREADING 0x0080
601 #define ETO_IGNORELANGUAGE 0x1000
603 #define GDICOMMENT_WINDOWS_METAFILE (-2147483647)
604 #define GDICOMMENT_BEGINGROUP 2
605 #define GDICOMMENT_ENDGROUP 3
606 #define GDICOMMENT_MULTIFORMATS 1073741828
607 #define GDICOMMENT_IDENTIFIER 1128875079
608 #define AD_COUNTERCLOCKWISE 1
609 #define AD_CLOCKWISE 2
610 #define RDH_RECTANGLES 1
611 #define GCPCLASS_LATIN 1
612 #define GCPCLASS_HEBREW 2
613 #define GCPCLASS_ARABIC 2
614 #define GCPCLASS_NEUTRAL 3
615 #define GCPCLASS_LOCALNUMBER 4
616 #define GCPCLASS_LATINNUMBER 5
617 #define GCPCLASS_LATINNUMERICTERMINATOR 6
618 #define GCPCLASS_LATINNUMERICSEPARATOR 7
619 #define GCPCLASS_NUMERICSEPARATOR 8
620 #define GCPCLASS_PREBOUNDLTR 128
621 #define GCPCLASS_PREBOUNDRTL 64
622 #define GCPCLASS_POSTBOUNDLTR 32
623 #define GCPCLASS_POSTBOUNDRTL 16
624 #define GCPGLYPH_LINKBEFORE 0x8000
625 #define GCPGLYPH_LINKAFTER 0x4000
626 #define DCB_DISABLE 8
630 #define DCB_ACCUMULATE 2
637 #define OBJ_EXTPEN 11
641 #define OBJ_METAFILE 9
643 #define OBJ_ENHMETAFILE 13
644 #define OBJ_ENHMETADC 12
645 #define DRIVERVERSION 0
648 #define DT_RASDISPLAY 1
649 #define DT_RASPRINTER 2
650 #define DT_RASCAMERA 3
651 #define DT_CHARSTREAM 4
652 #define DT_METAFILE 5
653 #define DT_DISPFILE 6
658 #define LOGPIXELSX 88
659 #define LOGPIXELSY 90
662 #define NUMBRUSHES 16
666 #define NUMMARKERS 20
670 #define PDEVICESIZE 26
672 #define SIZEPALETTE 104
673 #define NUMRESERVED 106
675 #define PHYSICALWIDTH 110
676 #define PHYSICALHEIGHT 111
677 #define PHYSICALOFFSETX 112
678 #define PHYSICALOFFSETY 113
679 #define SCALINGFACTORX 114
680 #define SCALINGFACTORY 115
682 #define DESKTOPHORZRES 118
683 #define DESKTOPVERTRES 117
684 #define BLTALIGNMENT 119
686 #define RASTERCAPS 38
689 #define RC_BITMAP64 8
690 #define RC_DI_BITMAP 128
691 #define RC_DIBTODEV 512
692 #define RC_FLOODFILL 4096
693 #define RC_GDI20_OUTPUT 16
694 #define RC_PALETTE 256
696 #define RC_STRETCHBLT 2048
697 #define RC_STRETCHDIB 8192
698 #define RC_DEVBITS 0x8000
699 #define RC_OP_DX_OUTPUT 0x4000
705 #define CC_ELLIPSES 8
708 #define CC_WIDESTYLED 64
709 #define CC_INTERIORS 128
710 #define CC_ROUNDRECT 256
713 #define LC_POLYLINE 2
715 #define LC_POLYMARKER 8
718 #define LC_WIDESTYLED 64
719 #define LC_INTERIORS 128
720 #define POLYGONALCAPS 32
722 #define RC_BIGFONT 1024
724 #define RC_BITMAP64 8
725 #define RC_DEVBITS 0x8000
726 #define RC_DI_BITMAP 128
727 #define RC_GDI20_OUTPUT 16
728 #define RC_GDI20_STATE 32
730 #define RC_OP_DX_OUTPUT 0x4000
731 #define RC_PALETTE 256
732 #define RC_SAVEBITMAP 64
736 #define PC_POLYPOLYGON 256
738 #define PC_RECTANGLE 2
739 #define PC_WINDPOLYGON 4
740 #define PC_SCANLINE 8
741 #define PC_TRAPEZOID 4
744 #define PC_WIDESTYLED 64
745 #define PC_INTERIORS 128
748 #define TC_OP_CHARACTER 1
749 #define TC_OP_STROKE 2
750 #define TC_CP_STROKE 4
753 #define TC_SF_X_YINDEP 32
754 #define TC_SA_DOUBLE 64
755 #define TC_SA_INTEGER 128
756 #define TC_SA_CONTIN 256
757 #define TC_EA_DOUBLE 512
758 #define TC_IA_ABLE 1024
759 #define TC_UA_ABLE 2048
760 #define TC_SO_ABLE 4096
761 #define TC_RA_ABLE 8192
762 #define TC_VA_ABLE 16384
763 #define TC_RESERVED 32768
764 #define TC_SCROLLBLT 65536
766 #define GCP_ERROR 0x8000
767 #define GCP_CLASSIN 0x80000
768 #define GCP_DIACRITIC 256
769 #define GCP_DISPLAYZWG 0x400000
770 #define GCP_GLYPHSHAPE 16
771 #define GCP_JUSTIFY 0x10000
772 #define GCP_JUSTIFYIN 0x200000
773 #define GCP_KASHIDA 1024
774 #define GCP_LIGATE 32
775 #define GCP_MAXEXTENT 0x100000
776 #define GCP_NEUTRALOVERRIDE 0x2000000
777 #define GCP_NUMERICOVERRIDE 0x1000000
778 #define GCP_NUMERICSLATIN 0x4000000
779 #define GCP_NUMERICSLOCAL 0x8000000
780 #define GCP_REORDER 2
781 #define GCP_SYMSWAPOFF 0x800000
782 #define GCP_USEKERNING 8
783 #define FLI_GLYPHS 0x40000
784 #define FLI_MASK 0x103b
785 #define GGO_METRICS 0
789 #define GGO_GRAY2_BITMAP 4
790 #define GGO_GRAY4_BITMAP 5
791 #define GGO_GRAY8_BITMAP 6
792 #define GGO_GLYPH_INDEX 128
794 #define GM_COMPATIBLE 1
795 #define GM_ADVANCED 2
796 #define MM_ANISOTROPIC 8
797 #define MM_HIENGLISH 5
798 #define MM_HIMETRIC 3
799 #define MM_ISOTROPIC 7
800 #define MM_LOENGLISH 4
801 #define MM_LOMETRIC 2
804 #define MM_MAX_FIXEDSCALE MM_TWIPS
807 #define PC_EXPLICIT 2
808 #define PC_NOCOLLAPSE 4
809 #define PC_RESERVED 1
810 #define CLR_NONE 0xffffffff
811 #define CLR_INVALID CLR_NONE
812 #define CLR_DEFAULT 0xff000000
815 #define PT_BEZIERTO 4
816 #define PT_CLOSEFIGURE 1
817 #define TT_AVAILABLE 1
819 #define BLACK_BRUSH 4
820 #define DKGRAY_BRUSH 3
822 #define HOLLOW_BRUSH 5
823 #define LTGRAY_BRUSH 1
825 #define WHITE_BRUSH 0
829 #define ANSI_FIXED_FONT 11
830 #define ANSI_VAR_FONT 12
831 #define DEVICE_DEFAULT_FONT 14
832 #define DEFAULT_GUI_FONT 17
833 #define OEM_FIXED_FONT 10
834 #define SYSTEM_FONT 13
835 #define SYSTEM_FIXED_FONT 16
836 #define DEFAULT_PALETTE 15
838 #define SYSPAL_ERROR 0
839 #define SYSPAL_STATIC 1
840 #define SYSPAL_NOSTATIC 2
841 #define SYSPAL_NOSTATIC256 3
842 #define TA_BASELINE 24
848 #define TA_RTLREADING 256
849 #define TA_NOUPDATECP 0
850 #define TA_UPDATECP 1
851 #define TA_MASK (TA_BASELINE+TA_CENTER+TA_UPDATECP+TA_RTLREADING)
852 #define VTA_BASELINE 24
854 #define VTA_LEFT TA_BOTTOM
855 #define VTA_RIGHT TA_TOP
856 #define VTA_BOTTOM TA_RIGHT
857 #define VTA_TOP TA_LEFT
858 #define MWT_IDENTITY 1
859 #define MWT_LEFTMULTIPLY 2
860 #define MWT_RIGHTMULTIPLY 3
862 #define TRANSPARENT 1
863 #define BLACKONWHITE 1
864 #define WHITEONBLACK 2
865 #define COLORONCOLOR 3
867 #define MAXSTRETCHBLTMODE 4
868 #define STRETCH_ANDSCANS 1
869 #define STRETCH_DELETESCANS 3
870 #define STRETCH_HALFTONE 4
871 #define STRETCH_ORSCANS 2
872 #define TCI_SRCCHARSET 1
873 #define TCI_SRCCODEPAGE 2
874 #define TCI_SRCFONTSIG 3
881 #define SETCOLORTABLE 4
882 #define GETCOLORTABLE 5
883 #define FLUSHOUTPUT 6
885 #define QUERYESCSUPPORT 8
886 #define SETABORTPROC 9
889 #define GETPHYSPAGESIZE 12
890 #define GETPRINTINGOFFSET 13
891 #define GETSCALINGFACTOR 14
893 #define GETPENWIDTH 16
894 #define SETCOPYCOUNT 17
895 #define SELECTPAPERSOURCE 18
896 #define DEVICEDATA 19
897 #define PASSTHROUGH 19
898 #define GETTECHNOLGY 20
899 #define GETTECHNOLOGY 20
900 #define SETLINECAP 21
901 #define SETLINEJOIN 22
902 #define SETMITERLIMIT 23
904 #define DRAWPATTERNRECT 25
905 #define GETVECTORPENSIZE 26
906 #define GETVECTORBRUSHSIZE 27
907 #define ENABLEDUPLEX 28
908 #define GETSETPAPERBINS 29
909 #define GETSETPRINTORIENT 30
910 #define ENUMPAPERBINS 31
911 #define SETDIBSCALING 32
912 #define EPSPRINTING 33
913 #define ENUMPAPERMETRICS 34
914 #define GETSETPAPERMETRICS 35
915 #define POSTSCRIPT_DATA 37
916 #define POSTSCRIPT_IGNORE 38
917 #define MOUSETRAILS 39
918 #define GETDEVICEUNITS 42
919 #define GETEXTENDEDTEXTMETRICS 256
920 #define GETEXTENTTABLE 257
921 #define GETPAIRKERNTABLE 258
922 #define GETTRACKKERNTABLE 259
923 #define EXTTEXTOUT 512
924 #define GETFACENAME 513
925 #define DOWNLOADFACE 514
926 #define ENABLERELATIVEWIDTHS 768
927 #define ENABLEPAIRKERNING 769
928 #define SETKERNTRACK 770
929 #define SETALLJUSTVALUES 771
930 #define SETCHARSET 772
931 #define STRETCHBLT 2048
932 #define GETSETSCREENPARAMS 3072
933 #define QUERYDIBSUPPORT 3073
934 #define BEGIN_PATH 4096
935 #define CLIP_TO_PATH 4097
936 #define END_PATH 4098
937 #define EXT_DEVICE_CAPS 4099
938 #define RESTORE_CTM 4100
939 #define SAVE_CTM 4101
940 #define SET_ARC_DIRECTION 4102
941 #define SET_BACKGROUND_COLOR 4103
942 #define SET_POLY_MODE 4104
943 #define SET_SCREEN_ANGLE 4105
944 #define SET_SPREAD 4106
945 #define TRANSFORM_CTM 4107
946 #define SET_CLIP_BOX 4108
947 #define SET_BOUNDS 4109
948 #define SET_MIRROR_MODE 4110
949 #define OPENCHANNEL 4110
950 #define DOWNLOADHEADER 4111
951 #define CLOSECHANNEL 4112
952 #define POSTSCRIPT_PASSTHROUGH 4115
953 #define ENCAPSULATED_POSTSCRIPT 4116
954 #define QDI_SETDIBITS 1
955 #define QDI_GETDIBITS 2
956 #define QDI_DIBTOSCREEN 4
957 #define QDI_STRETCHDIB 8
958 #define SP_NOTREPORTED 0x4000
959 #define PR_JOBSTATUS 0
960 #define ASPECT_FILTERING 1
967 #define BS_DIBPATTERN 5
968 #define BS_DIBPATTERNPT 6
969 #define BS_PATTERN8X8 7
970 #define BS_DIBPATTERN8X8 8
971 #define LCS_CALIBRATED_RGB 0
972 #define LCS_DEVICE_RGB 1
973 #define LCS_DEVICE_CMYK 2
974 #define LCS_GM_BUSINESS 1
975 #define LCS_GM_GRAPHICS 2
976 #define LCS_GM_IMAGES 4
977 #define RASTER_FONTTYPE 1
978 #define DEVICE_FONTTYPE 2
979 #define TRUETYPE_FONTTYPE 4
980 #define DMORIENT_PORTRAIT 1
981 #define DMORIENT_LANDSCAPE 2
982 #define DMPAPER_FIRST 1
983 #define DMPAPER_LETTER 1
984 #define DMPAPER_LETTERSMALL 2
985 #define DMPAPER_TABLOID 3
986 #define DMPAPER_LEDGER 4
987 #define DMPAPER_LEGAL 5
988 #define DMPAPER_STATEMENT 6
989 #define DMPAPER_EXECUTIVE 7
992 #define DMPAPER_A4SMALL 10
993 #define DMPAPER_A5 11
994 #define DMPAPER_B4 12
995 #define DMPAPER_B5 13
996 #define DMPAPER_FOLIO 14
997 #define DMPAPER_QUARTO 15
998 #define DMPAPER_10X14 16
999 #define DMPAPER_11X17 17
1000 #define DMPAPER_NOTE 18
1001 #define DMPAPER_ENV_9 19
1002 #define DMPAPER_ENV_10 20
1003 #define DMPAPER_ENV_11 21
1004 #define DMPAPER_ENV_12 22
1005 #define DMPAPER_ENV_14 23
1006 #define DMPAPER_CSHEET 24
1007 #define DMPAPER_DSHEET 25
1008 #define DMPAPER_ESHEET 26
1009 #define DMPAPER_ENV_DL 27
1010 #define DMPAPER_ENV_C5 28
1011 #define DMPAPER_ENV_C3 29
1012 #define DMPAPER_ENV_C4 30
1013 #define DMPAPER_ENV_C6 31
1014 #define DMPAPER_ENV_C65 32
1015 #define DMPAPER_ENV_B4 33
1016 #define DMPAPER_ENV_B5 34
1017 #define DMPAPER_ENV_B6 35
1018 #define DMPAPER_ENV_ITALY 36
1019 #define DMPAPER_ENV_MONARCH 37
1020 #define DMPAPER_ENV_PERSONAL 38
1021 #define DMPAPER_FANFOLD_US 39
1022 #define DMPAPER_FANFOLD_STD_GERMAN 40
1023 #define DMPAPER_FANFOLD_LGL_GERMAN 41
1024 #define DMPAPER_ISO_B4 42
1025 #define DMPAPER_JAPANESE_POSTCARD 43
1026 #define DMPAPER_9X11 44
1027 #define DMPAPER_10X11 45
1028 #define DMPAPER_15X11 46
1029 #define DMPAPER_ENV_INVITE 47
1030 #define DMPAPER_RESERVED_48 48
1031 #define DMPAPER_RESERVED_49 49
1032 #define DMPAPER_LETTER_EXTRA 50
1033 #define DMPAPER_LEGAL_EXTRA 51
1034 #define DMPAPER_TABLOID_EXTRA 52
1035 #define DMPAPER_A4_EXTRA 53
1036 #define DMPAPER_LETTER_TRANSVERSE 54
1037 #define DMPAPER_A4_TRANSVERSE 55
1038 #define DMPAPER_LETTER_EXTRA_TRANSVERSE 56
1039 #define DMPAPER_A_PLUS 57
1040 #define DMPAPER_B_PLUS 58
1041 #define DMPAPER_LETTER_PLUS 59
1042 #define DMPAPER_A4_PLUS 60
1043 #define DMPAPER_A5_TRANSVERSE 61
1044 #define DMPAPER_B5_TRANSVERSE 62
1045 #define DMPAPER_A3_EXTRA 63
1046 #define DMPAPER_A5_EXTRA 64
1047 #define DMPAPER_B5_EXTRA 65
1048 #define DMPAPER_A2 66
1049 #define DMPAPER_A3_TRANSVERSE 67
1050 #define DMPAPER_A3_EXTRA_TRANSVERSE 68
1051 #define DMPAPER_LAST 68
1053 #define DMPAPER_USER 256
1054 #define DMBIN_FIRST 1
1055 #define DMBIN_UPPER 1
1056 #define DMBIN_ONLYONE 1
1057 #define DMBIN_LOWER 2
1058 #define DMBIN_MIDDLE 3
1059 #define DMBIN_MANUAL 4
1060 #define DMBIN_ENVELOPE 5
1061 #define DMBIN_ENVMANUAL 6
1062 #define DMBIN_AUTO 7
1063 #define DMBIN_TRACTOR 8
1064 #define DMBIN_SMALLFMT 9
1065 #define DMBIN_LARGEFMT 10
1066 #define DMBIN_LARGECAPACITY 11
1067 #define DMBIN_CASSETTE 14
1068 #define DMBIN_FORMSOURCE 15
1069 #define DMBIN_LAST 15
1070 #define DMBIN_USER 256
1071 #define DMRES_DRAFT (-1)
1072 #define DMRES_LOW (-2)
1073 #define DMRES_MEDIUM (-3)
1074 #define DMRES_HIGH (-4)
1075 #define DMCOLOR_MONOCHROME 1
1076 #define DMCOLOR_COLOR 2
1077 #define DMDUP_SIMPLEX 1
1078 #define DMDUP_VERTICAL 2
1079 #define DMDUP_HORIZONTAL 3
1080 #define DMTT_BITMAP 1
1081 #define DMTT_DOWNLOAD 2
1082 #define DMTT_SUBDEV 3
1083 #define DMTT_DOWNLOAD_OUTLINE 4
1084 #define DMCOLLATE_FALSE 0
1085 #define DMCOLLATE_TRUE 1
1086 #define DM_SPECVERSION 800
1087 #define DM_GRAYSCALE 1
1088 #define DM_INTERLACED 2
1093 #define DM_IN_BUFFER DM_MODIFY
1094 #define DM_IN_PROMPT DM_PROMPT
1095 #define DM_OUT_BUFFER DM_COPY
1096 #define DM_OUT_DEFAULT DM_UPDATE
1097 #define DM_ORIENTATION 0x00000001
1098 #define DM_PAPERSIZE 0x00000002
1099 #define DM_PAPERLENGTH 0x00000004
1100 #define DM_PAPERWIDTH 0x00000008
1101 #define DM_SCALE 0x00000010
1102 #define DM_POSITION 0x00000020
1103 #define DM_COPIES 0x00000100
1104 #define DM_DEFAULTSOURCE 0x00000200
1105 #define DM_PRINTQUALITY 0x00000400
1106 #define DM_COLOR 0x00000800
1107 #define DM_DUPLEX 0x00001000
1108 #define DM_YRESOLUTION 0x00002000
1109 #define DM_TTOPTION 0x00004000
1110 #define DM_COLLATE 0x00008000
1111 #define DM_FORMNAME 0x00010000
1112 #define DM_LOGPIXELS 0x00020000
1113 #define DM_BITSPERPEL 0x00040000
1114 #define DM_PELSWIDTH 0x00080000
1115 #define DM_PELSHEIGHT 0x00100000
1116 #define DM_DISPLAYFLAGS 0x00200000
1117 #define DM_DISPLAYFREQUENCY 0x00400000
1118 #define DM_ICMMETHOD 0x00800000
1119 #define DM_ICMINTENT 0x01000000
1120 #define DM_MEDIATYPE 0x02000000
1121 #define DM_DITHERTYPE 0x04000000
1123 #define DMICMMETHOD_NONE 1
1124 #define DMICMMETHOD_SYSTEM 2
1125 #define DMICMMETHOD_DRIVER 3
1126 #define DMICMMETHOD_DEVICE 4
1127 #define DMICMMETHOD_USER 256
1128 #define DMICM_SATURATE 1
1129 #define DMICM_CONTRAST 2
1130 #define DMICM_COLORMETRIC 3
1131 #define DMICM_USER 256
1132 #define DMMEDIA_STANDARD 1
1133 #define DMMEDIA_TRANSPARENCY 2
1134 #define DMMEDIA_GLOSSY 3
1135 #define DMMEDIA_USER 256
1136 #define DMDITHER_NONE 1
1137 #define DMDITHER_COARSE 2
1138 #define DMDITHER_FINE 3
1139 #define DMDITHER_LINEART 4
1140 #define DMDITHER_ERRORDIFFUSION 5
1141 #define DMDITHER_RESERVED6 6
1142 #define DMDITHER_RESERVED7 7
1143 #define DMDITHER_RESERVED8 8
1144 #define DMDITHER_RESERVED9 9
1145 #define DMDITHER_GRAYSCALE 10
1146 #define DMDITHER_USER 256
1147 #define GDI_ERROR 0xFFFFFFFF
1148 #define HGDI_ERROR ((HANDLE)GDI_ERROR)
1149 #define TMPF_FIXED_PITCH 1
1150 #define TMPF_VECTOR 2
1151 #define TMPF_TRUETYPE 4
1152 #define TMPF_DEVICE 8
1153 #define NTM_ITALIC 1
1155 #define NTM_REGULAR 64
1156 #define TT_POLYGON_TYPE 24
1157 #define TT_PRIM_LINE 1
1158 #define TT_PRIM_QSPLINE 2
1159 #define TT_PRIM_CSPLINE 3
1160 #define FONTMAPPER_MAX 10
1161 #define ENHMETA_STOCK_OBJECT 0x80000000
1162 #define WGL_FONT_LINES 0
1163 #define WGL_FONT_POLYGONS 1
1164 #define LPD_DOUBLEBUFFER 1
1165 #define LPD_STEREO 2
1166 #define LPD_SUPPORT_GDI 16
1167 #define LPD_SUPPORT_OPENGL 32
1168 #define LPD_SHARE_DEPTH 64
1169 #define LPD_SHARE_STENCIL 128
1170 #define LPD_SHARE_ACCUM 256
1171 #define LPD_SWAP_EXCHANGE 512
1172 #define LPD_SWAP_COPY 1024
1173 #define LPD_TRANSPARENT 4096
1174 #define LPD_TYPE_RGBA 0
1175 #define LPD_TYPE_COLORINDEX 1
1176 #define WGL_SWAP_MAIN_PLANE 1
1177 #define WGL_SWAP_OVERLAY1 2
1178 #define WGL_SWAP_OVERLAY2 4
1179 #define WGL_SWAP_OVERLAY3 8
1180 #define WGL_SWAP_OVERLAY4 16
1181 #define WGL_SWAP_OVERLAY5 32
1182 #define WGL_SWAP_OVERLAY6 64
1183 #define WGL_SWAP_OVERLAY7 128
1184 #define WGL_SWAP_OVERLAY8 256
1185 #define WGL_SWAP_OVERLAY9 512
1186 #define WGL_SWAP_OVERLAY10 1024
1187 #define WGL_SWAP_OVERLAY11 2048
1188 #define WGL_SWAP_OVERLAY12 4096
1189 #define WGL_SWAP_OVERLAY13 8192
1190 #define WGL_SWAP_OVERLAY14 16384
1191 #define WGL_SWAP_OVERLAY15 32768
1192 #define WGL_SWAP_UNDERLAY1 65536
1193 #define WGL_SWAP_UNDERLAY2 0x20000
1194 #define WGL_SWAP_UNDERLAY3 0x40000
1195 #define WGL_SWAP_UNDERLAY4 0x80000
1196 #define WGL_SWAP_UNDERLAY5 0x100000
1197 #define WGL_SWAP_UNDERLAY6 0x200000
1198 #define WGL_SWAP_UNDERLAY7 0x400000
1199 #define WGL_SWAP_UNDERLAY8 0x800000
1200 #define WGL_SWAP_UNDERLAY9 0x1000000
1201 #define WGL_SWAP_UNDERLAY10 0x2000000
1202 #define WGL_SWAP_UNDERLAY11 0x4000000
1203 #define WGL_SWAP_UNDERLAY12 0x8000000
1204 #define WGL_SWAP_UNDERLAY13 0x10000000
1205 #define WGL_SWAP_UNDERLAY14 0x20000000
1206 #define WGL_SWAP_UNDERLAY15 0x40000000
1207 #define AC_SRC_OVER 0x00
1208 #define AC_SRC_ALPHA 0x01
1209 #define AC_SRC_NO_PREMULT_ALPHA 0x01
1210 #define AC_SRC_NO_ALPHA 0x02
1211 #define AC_DST_NO_PREMULT_ALPHA 0x10
1212 #define AC_DST_NO_ALPHA 0x20
1213 #define LAYOUT_RTL 1
1214 #define LAYOUT_BITMAPORIENTATIONPRESERVED 8
1215 #define CS_ENABLE 0x00000001
1216 #define CS_DISABLE 0x00000002
1217 #define CS_DELETE_TRANSFORM 0x00000003
1219 #define DISPLAY_DEVICE_ATTACHED_TO_DESKTOP 0x00000001
1220 #define DISPLAY_DEVICE_MULTI_DRIVER 0x00000002
1221 #define DISPLAY_DEVICE_PRIMARY_DEVICE 0x00000004
1222 #define DISPLAY_DEVICE_MIRRORING_DRIVER 0x00000008
1223 #define DISPLAY_DEVICE_VGA_COMPATIBLE 0x00000010
1224 #define DISPLAY_DEVICE_REMOVABLE 0x00000020
1225 #define DISPLAY_DEVICE_MODESPRUNED 0x08000000
1228 typedef struct _ABC {
1233 typedef struct _ABCFLOAT {
1237 } ABCFLOAT,*LPABCFLOAT;
1238 typedef struct tagBITMAP {
1246 } BITMAP,*PBITMAP,*LPBITMAP;
1247 typedef struct tagBITMAPCOREHEADER {
1253 } BITMAPCOREHEADER,*LPBITMAPCOREHEADER,*PBITMAPCOREHEADER;
1254 #pragma pack(push,1)
1255 typedef struct tagRGBTRIPLE {
1259 } RGBTRIPLE,*LPRGBTRIPLE;
1261 #pragma pack(push,2)
1262 typedef struct tagBITMAPFILEHEADER {
1268 } BITMAPFILEHEADER,*LPBITMAPFILEHEADER,*PBITMAPFILEHEADER;
1270 typedef struct _BITMAPCOREINFO {
1271 BITMAPCOREHEADER bmciHeader;
1272 RGBTRIPLE bmciColors[1];
1273 } BITMAPCOREINFO,*LPBITMAPCOREINFO,*PBITMAPCOREINFO;
1274 typedef struct tagBITMAPINFOHEADER{
1280 DWORD biCompression;
1282 LONG biXPelsPerMeter;
1283 LONG biYPelsPerMeter;
1285 DWORD biClrImportant;
1286 } BITMAPINFOHEADER,*LPBITMAPINFOHEADER,*PBITMAPINFOHEADER;
1287 typedef struct tagRGBQUAD {
1292 } RGBQUAD,*LPRGBQUAD;
1293 typedef struct tagBITMAPINFO {
1294 BITMAPINFOHEADER bmiHeader;
1295 RGBQUAD bmiColors[1];
1296 } BITMAPINFO,*LPBITMAPINFO,*PBITMAPINFO;
1297 typedef long FXPT16DOT16,*LPFXPT16DOT16;
1298 typedef long FXPT2DOT30,*LPFXPT2DOT30;
1299 typedef struct tagCIEXYZ {
1304 typedef struct tagCIEXYZTRIPLE {
1308 } CIEXYZTRIPLE,*LPCIEXYZTRIPLE;
1315 DWORD bV4V4Compression;
1317 LONG bV4XPelsPerMeter;
1318 LONG bV4YPelsPerMeter;
1320 DWORD bV4ClrImportant;
1326 CIEXYZTRIPLE bV4Endpoints;
1328 DWORD bV4GammaGreen;
1330 } BITMAPV4HEADER,*LPBITMAPV4HEADER,*PBITMAPV4HEADER;
1337 DWORD bV5Compression;
1339 LONG bV5XPelsPerMeter;
1340 LONG bV5YPelsPerMeter;
1342 DWORD bV5ClrImportant;
1348 CIEXYZTRIPLE bV5Endpoints;
1350 DWORD bV5GammaGreen;
1353 DWORD bV5ProfileData;
1354 DWORD bV5ProfileSize;
1356 } BITMAPV5HEADER,*LPBITMAPV5HEADER,*PBITMAPV5HEADER;
1357 typedef struct tagFONTSIGNATURE {
1360 } FONTSIGNATURE,*LPFONTSIGNATURE;
1365 } CHARSETINFO,*LPCHARSETINFO;
1366 typedef struct tagCOLORADJUSTMENT {
1369 WORD caIlluminantIndex;
1373 WORD caReferenceBlack;
1374 WORD caReferenceWhite;
1377 SHORT caColorfulness;
1378 SHORT caRedGreenTint;
1379 } COLORADJUSTMENT,*LPCOLORADJUSTMENT;
1380 typedef struct _devicemodeA {
1381 BYTE dmDeviceName[CCHDEVICENAME];
1383 WORD dmDriverVersion;
1387 _ANONYMOUS_UNION union {
1388 _ANONYMOUS_STRUCT struct {
1389 short dmOrientation;
1391 short dmPaperLength;
1395 short dmDefaultSource;
1396 short dmPrintQuality;
1398 _ANONYMOUS_STRUCT struct {
1400 DWORD dmDisplayOrientation;
1401 DWORD dmDisplayFixedOutput;
1407 short dmYResolution;
1410 BYTE dmFormName[CCHFORMNAME];
1415 _ANONYMOUS_UNION union {
1416 DWORD dmDisplayFlags;
1419 DWORD dmDisplayFrequency;
1426 DWORD dmPanningWidth;
1427 DWORD dmPanningHeight;
1428 } DEVMODEA,*LPDEVMODEA,*PDEVMODEA;
1430 typedef struct _devicemodeW {
1431 WCHAR dmDeviceName[CCHDEVICENAME];
1433 WORD dmDriverVersion;
1437 _ANONYMOUS_UNION union {
1438 _ANONYMOUS_STRUCT struct {
1439 short dmOrientation;
1441 short dmPaperLength;
1445 short dmDefaultSource;
1446 short dmPrintQuality;
1448 _ANONYMOUS_STRUCT struct {
1450 DWORD dmDisplayOrientation;
1451 DWORD dmDisplayFixedOutput;
1457 short dmYResolution;
1460 WCHAR dmFormName[CCHFORMNAME];
1465 _ANONYMOUS_UNION union {
1466 DWORD dmDisplayFlags;
1469 DWORD dmDisplayFrequency;
1476 DWORD dmPanningWidth;
1477 DWORD dmPanningHeight;
1478 } DEVMODEW,*LPDEVMODEW,*PDEVMODEW;
1480 typedef struct tagDIBSECTION {
1482 BITMAPINFOHEADER dsBmih;
1483 DWORD dsBitfields[3];
1487 typedef struct _DOCINFOA {
1491 LPCSTR lpszDatatype;
1493 } DOCINFOA,*LPDOCINFOA;
1494 typedef struct _DOCINFOW {
1496 LPCWSTR lpszDocName;
1498 LPCWSTR lpszDatatype;
1500 } DOCINFOW,*LPDOCINFOW;
1501 typedef struct tagEMR {
1505 typedef struct tagEMRANGLEARC {
1511 } EMRANGLEARC,*PEMRANGLEARC;
1512 typedef struct tagEMRARC {
1517 } EMRARC,*PEMRARC,EMRARCTO,*PEMRARCTO,EMRCHORD,*PEMRCHORD,EMRPIE,*PEMRPIE;
1518 typedef struct _XFORM {
1525 } XFORM,*PXFORM,*LPXFORM;
1526 typedef struct tagEMRBITBLT {
1537 COLORREF crBkColorSrc;
1542 } EMRBITBLT,*PEMRBITBLT;
1543 typedef struct tagLOGBRUSH {
1547 } LOGBRUSH,*PLOGBRUSH,*LPLOGBRUSH;
1548 typedef LOGBRUSH PATTERN,*PPATTERN,*LPPATTERN;
1549 typedef struct tagEMRCREATEBRUSHINDIRECT {
1553 } EMRCREATEBRUSHINDIRECT,*PEMRCREATEBRUSHINDIRECT;
1554 typedef LONG LCSCSTYPE;
1555 typedef LONG LCSGAMUTMATCH;
1556 typedef struct tagLOGCOLORSPACEA {
1560 LCSCSTYPE lcsCSType;
1561 LCSGAMUTMATCH lcsIntent;
1562 CIEXYZTRIPLE lcsEndpoints;
1564 DWORD lcsGammaGreen;
1566 CHAR lcsFilename[MAX_PATH];
1567 } LOGCOLORSPACEA,*LPLOGCOLORSPACEA;
1568 typedef struct tagLOGCOLORSPACEW {
1572 LCSCSTYPE lcsCSType;
1573 LCSGAMUTMATCH lcsIntent;
1574 CIEXYZTRIPLE lcsEndpoints;
1576 DWORD lcsGammaGreen;
1578 WCHAR lcsFilename[MAX_PATH];
1579 } LOGCOLORSPACEW,*LPLOGCOLORSPACEW;
1580 typedef struct tagEMRCREATECOLORSPACE {
1584 } EMRCREATECOLORSPACE,*PEMRCREATECOLORSPACE;
1585 typedef struct tagEMRCREATEDIBPATTERNBRUSHPT {
1593 } EMRCREATEDIBPATTERNBRUSHPT,*PEMRCREATEDIBPATTERNBRUSHPT;
1594 typedef struct tagEMRCREATEMONOBRUSH {
1602 } EMRCREATEMONOBRUSH,*PEMRCREATEMONOBRUSH;
1603 typedef struct tagPALETTEENTRY {
1608 } PALETTEENTRY,*LPPALETTEENTRY,*PPALETTEENTRY;
1609 typedef struct tagLOGPALETTE {
1612 PALETTEENTRY palPalEntry[1];
1613 } LOGPALETTE,*NPLOGPALETTE,*PLOGPALETTE,*LPLOGPALETTE;
1614 typedef struct tagEMRCREATEPALETTE {
1618 } EMRCREATEPALETTE,*PEMRCREATEPALETTE;
1619 typedef struct tagLOGPEN {
1623 } LOGPEN,*PLOGPEN,*LPLOGPEN;
1624 typedef struct tagEMRCREATEPEN {
1628 } EMRCREATEPEN,*PEMRCREATEPEN;
1629 typedef struct tagEMRELLIPSE {
1632 } EMRELLIPSE,*PEMRELLIPSE,EMRRECTANGLE,*PEMRRECTANGLE;
1633 typedef struct tagEMREOF {
1636 DWORD offPalEntries;
1639 typedef struct tagEMREXCLUDECLIPRECT {
1642 } EMREXCLUDECLIPRECT,*PEMREXCLUDECLIPRECT,EMRINTERSECTCLIPRECT,*PEMRINTERSECTCLIPRECT;
1643 typedef struct tagPANOSE {
1649 BYTE bStrokeVariation;
1655 typedef struct tagLOGFONTA {
1665 BYTE lfOutPrecision;
1666 BYTE lfClipPrecision;
1668 BYTE lfPitchAndFamily;
1669 CHAR lfFaceName[LF_FACESIZE];
1670 } LOGFONTA,*PLOGFONTA,*LPLOGFONTA;
1671 typedef struct tagLOGFONTW {
1681 BYTE lfOutPrecision;
1682 BYTE lfClipPrecision;
1684 BYTE lfPitchAndFamily;
1685 WCHAR lfFaceName[LF_FACESIZE];
1686 } LOGFONTW,*PLOGFONTW,*LPLOGFONTW;
1687 typedef struct tagEXTLOGFONTA {
1688 LOGFONTA elfLogFont;
1689 BYTE elfFullName[LF_FULLFACESIZE];
1690 BYTE elfStyle[LF_FACESIZE];
1695 BYTE elfVendorId[ELF_VENDOR_SIZE];
1698 } EXTLOGFONTA,*PEXTLOGFONTA,*LPEXTLOGFONTA;
1699 typedef struct tagEXTLOGFONTW {
1700 LOGFONTW elfLogFont;
1701 WCHAR elfFullName[LF_FULLFACESIZE];
1702 WCHAR elfStyle[LF_FACESIZE];
1707 BYTE elfVendorId[ELF_VENDOR_SIZE];
1710 } EXTLOGFONTW,*PEXTLOGFONTW,*LPEXTLOGFONTW;
1711 typedef struct tagEMREXTCREATEFONTINDIRECTW {
1715 } EMREXTCREATEFONTINDIRECTW,*PEMREXTCREATEFONTINDIRECTW;
1716 typedef struct tagEXTLOGPEN {
1722 DWORD elpNumEntries;
1723 DWORD elpStyleEntry[1];
1724 } EXTLOGPEN,*PEXTLOGPEN,*LPEXTLOGPEN;
1725 typedef struct tagEMREXTCREATEPEN {
1733 } EMREXTCREATEPEN,*PEMREXTCREATEPEN;
1734 typedef struct tagEMREXTFLOODFILL {
1739 } EMREXTFLOODFILL,*PEMREXTFLOODFILL;
1740 typedef struct tagEMREXTSELECTCLIPRGN {
1745 } EMREXTSELECTCLIPRGN,*PEMREXTSELECTCLIPRGN;
1746 typedef struct tagEMRTEXT {
1747 POINTL ptlReference;
1753 } EMRTEXT,*PEMRTEXT;
1754 typedef struct tagEMREXTTEXTOUTA {
1757 DWORD iGraphicsMode;
1761 } EMREXTTEXTOUTA,*PEMREXTTEXTOUTA,EMREXTTEXTOUTW,*PEMREXTTEXTOUTW;
1762 typedef struct tagEMRFILLPATH {
1765 } EMRFILLPATH,*PEMRFILLPATH,EMRSTROKEANDFILLPATH,*PEMRSTROKEANDFILLPATH,EMRSTROKEPATH,*PEMRSTROKEPATH;
1766 typedef struct tagEMRFILLRGN {
1772 } EMRFILLRGN,*PEMRFILLRGN;
1773 typedef struct tagEMRFORMAT {
1779 typedef struct tagEMRFRAMERGN {
1786 } EMRFRAMERGN,*PEMRFRAMERGN;
1787 typedef struct tagEMRGDICOMMENT {
1791 } EMRGDICOMMENT,*PEMRGDICOMMENT;
1792 typedef struct tagEMRINVERTRGN {
1797 } EMRINVERTRGN,*PEMRINVERTRGN,EMRPAINTRGN,*PEMRPAINTRGN;
1798 typedef struct tagEMRLINETO {
1801 } EMRLINETO,*PEMRLINETO,EMRMOVETOEX,*PEMRMOVETOEX;
1802 typedef struct tagEMRMASKBLT {
1813 COLORREF crBkColorSrc;
1826 } EMRMASKBLT,*PEMRMASKBLT;
1827 typedef struct tagEMRMODIFYWORLDTRANSFORM {
1831 } EMRMODIFYWORLDTRANSFORM,*PEMRMODIFYWORLDTRANSFORM;
1832 typedef struct tagEMROFFSETCLIPRGN {
1835 } EMROFFSETCLIPRGN,*PEMROFFSETCLIPRGN;
1836 typedef struct tagEMRPLGBLT {
1845 COLORREF crBkColorSrc;
1858 } EMRPLGBLT,*PEMRPLGBLT;
1859 typedef struct tagEMRPOLYDRAW {
1865 } EMRPOLYDRAW,*PEMRPOLYDRAW;
1866 typedef struct tagEMRPOLYDRAW16 {
1872 } EMRPOLYDRAW16,*PEMRPOLYDRAW16;
1873 typedef struct tagEMRPOLYLINE {
1878 } EMRPOLYLINE,*PEMRPOLYLINE,EMRPOLYBEZIER,*PEMRPOLYBEZIER,EMRPOLYGON,*PEMRPOLYGON,EMRPOLYBEZIERTO,*PEMRPOLYBEZIERTO,EMRPOLYLINETO,*PEMRPOLYLINETO;
1879 typedef struct tagEMRPOLYLINE16 {
1884 } EMRPOLYLINE16,*PEMRPOLYLINE16,EMRPOLYBEZIER16,*PEMRPOLYBEZIER16,EMRPOLYGON16,*PEMRPOLYGON16,EMRPOLYBEZIERTO16,*PEMRPOLYBEZIERTO16,EMRPOLYLINETO16,*PEMRPOLYLINETO16;
1885 typedef struct tagEMRPOLYPOLYLINE {
1890 DWORD aPolyCounts[1];
1892 } EMRPOLYPOLYLINE,*PEMRPOLYPOLYLINE,EMRPOLYPOLYGON,*PEMRPOLYPOLYGON;
1893 typedef struct tagEMRPOLYPOLYLINE16 {
1898 DWORD aPolyCounts[1];
1900 } EMRPOLYPOLYLINE16,*PEMRPOLYPOLYLINE16,EMRPOLYPOLYGON16,*PEMRPOLYPOLYGON16;
1901 typedef struct tagEMRPOLYTEXTOUTA {
1904 DWORD iGraphicsMode;
1908 EMRTEXT aemrtext[1];
1909 } EMRPOLYTEXTOUTA,*PEMRPOLYTEXTOUTA,EMRPOLYTEXTOUTW,*PEMRPOLYTEXTOUTW;
1910 typedef struct tagEMRRESIZEPALETTE {
1914 } EMRRESIZEPALETTE,*PEMRRESIZEPALETTE;
1915 typedef struct tagEMRRESTOREDC {
1918 } EMRRESTOREDC,*PEMRRESTOREDC;
1919 typedef struct tagEMRROUNDRECT {
1923 } EMRROUNDRECT,*PEMRROUNDRECT;
1924 typedef struct tagEMRSCALEVIEWPORTEXTEX {
1930 } EMRSCALEVIEWPORTEXTEX,*PEMRSCALEVIEWPORTEXTEX,EMRSCALEWINDOWEXTEX,*PEMRSCALEWINDOWEXTEX;
1931 typedef struct tagEMRSELECTCOLORSPACE {
1934 } EMRSELECTCOLORSPACE,*PEMRSELECTCOLORSPACE,EMRDELETECOLORSPACE,*PEMRDELETECOLORSPACE;
1935 typedef struct tagEMRSELECTOBJECT {
1938 } EMRSELECTOBJECT,*PEMRSELECTOBJECT,EMRDELETEOBJECT,*PEMRDELETEOBJECT;
1939 typedef struct tagEMRSELECTPALETTE {
1942 } EMRSELECTPALETTE,*PEMRSELECTPALETTE;
1943 typedef struct tagEMRSETARCDIRECTION {
1945 DWORD iArcDirection;
1946 } EMRSETARCDIRECTION,*PEMRSETARCDIRECTION;
1947 typedef struct tagEMRSETTEXTCOLOR {
1950 } EMRSETBKCOLOR,*PEMRSETBKCOLOR,EMRSETTEXTCOLOR,*PEMRSETTEXTCOLOR;
1951 typedef struct tagEMRSETCOLORADJUSTMENT {
1953 COLORADJUSTMENT ColorAdjustment;
1954 } EMRSETCOLORADJUSTMENT,*PEMRSETCOLORADJUSTMENT;
1955 typedef struct tagEMRSETDIBITSTODEVICE {
1971 } EMRSETDIBITSTODEVICE,*PEMRSETDIBITSTODEVICE;
1972 typedef struct tagEMRSETMAPPERFLAGS {
1975 } EMRSETMAPPERFLAGS,*PEMRSETMAPPERFLAGS;
1976 typedef struct tagEMRSETMITERLIMIT {
1979 } EMRSETMITERLIMIT,*PEMRSETMITERLIMIT;
1980 typedef struct tagEMRSETPALETTEENTRIES {
1985 PALETTEENTRY aPalEntries[1];
1986 } EMRSETPALETTEENTRIES,*PEMRSETPALETTEENTRIES;
1987 typedef struct tagEMRSETPIXELV {
1991 } EMRSETPIXELV,*PEMRSETPIXELV;
1992 typedef struct tagEMRSETVIEWPORTEXTEX {
1995 } EMRSETVIEWPORTEXTEX,*PEMRSETVIEWPORTEXTEX,EMRSETWINDOWEXTEX,*PEMRSETWINDOWEXTEX;
1996 typedef struct tagEMRSETVIEWPORTORGEX {
1999 } EMRSETVIEWPORTORGEX,*PEMRSETVIEWPORTORGEX,EMRSETWINDOWORGEX,*PEMRSETWINDOWORGEX,EMRSETBRUSHORGEX,*PEMRSETBRUSHORGEX;
2000 typedef struct tagEMRSETWORLDTRANSFORM {
2003 } EMRSETWORLDTRANSFORM,*PEMRSETWORLDTRANSFORM;
2004 typedef struct tagEMRSTRETCHBLT {
2015 COLORREF crBkColorSrc;
2023 } EMRSTRETCHBLT,*PEMRSTRETCHBLT;
2024 typedef struct tagEMRSTRETCHDIBITS {
2041 } EMRSTRETCHDIBITS,*PEMRSTRETCHDIBITS;
2042 typedef struct tagABORTPATH {
2044 } EMRABORTPATH,*PEMRABORTPATH,EMRBEGINPATH,*PEMRBEGINPATH,EMRENDPATH,*PEMRENDPATH,EMRCLOSEFIGURE,*PEMRCLOSEFIGURE,EMRFLATTENPATH,*PEMRFLATTENPATH,EMRWIDENPATH,*PEMRWIDENPATH,EMRSETMETARGN,*PEMRSETMETARGN,EMRSAVEDC,*PEMRSAVEDC,EMRREALIZEPALETTE,*PEMRREALIZEPALETTE;
2045 typedef struct tagEMRSELECTCLIPPATH {
2048 } EMRSELECTCLIPPATH,*PEMRSELECTCLIPPATH,EMRSETBKMODE,*PEMRSETBKMODE,EMRSETMAPMODE,*PEMRSETMAPMODE,EMRSETPOLYFILLMODE,*PEMRSETPOLYFILLMODE,EMRSETROP2,*PEMRSETROP2,EMRSETSTRETCHBLTMODE,*PEMRSETSTRETCHBLTMODE,EMRSETTEXTALIGN,*PEMRSETTEXTALIGN,EMRENABLEICM,*PEMRENABLEICM;
2049 #pragma pack(push,2)
2050 typedef struct tagMETAHEADER {
2057 WORD mtNoParameters;
2058 } METAHEADER,*PMETAHEADER,*LPMETAHEADER;
2060 typedef struct tagENHMETAHEADER {
2072 DWORD offDescription;
2075 SIZEL szlMillimeters;
2076 DWORD cbPixelFormat;
2077 DWORD offPixelFormat;
2079 #if (_WIN32_WINNT >= _WIN32_WINNT_WIN2K)
2080 SIZEL szlMicrometers;
2083 } ENHMETAHEADER,*LPENHMETAHEADER;
2085 typedef struct tagMETARECORD {
2089 } METARECORD,*PMETARECORD,*LPMETARECORD;
2090 typedef struct tagENHMETARECORD {
2094 } ENHMETARECORD,*LPENHMETARECORD;
2095 typedef struct tagHANDLETABLE {
2096 HGDIOBJ objectHandle[1];
2097 } HANDLETABLE,*LPHANDLETABLE;
2098 typedef struct tagTEXTMETRICA {
2102 LONG tmInternalLeading;
2103 LONG tmExternalLeading;
2104 LONG tmAveCharWidth;
2105 LONG tmMaxCharWidth;
2108 LONG tmDigitizedAspectX;
2109 LONG tmDigitizedAspectY;
2117 BYTE tmPitchAndFamily;
2119 } TEXTMETRICA,*PTEXTMETRICA,*LPTEXTMETRICA;
2120 typedef struct tagTEXTMETRICW {
2124 LONG tmInternalLeading;
2125 LONG tmExternalLeading;
2126 LONG tmAveCharWidth;
2127 LONG tmMaxCharWidth;
2130 LONG tmDigitizedAspectX;
2131 LONG tmDigitizedAspectY;
2134 WCHAR tmDefaultChar;
2139 BYTE tmPitchAndFamily;
2141 } TEXTMETRICW,*PTEXTMETRICW,*LPTEXTMETRICW;
2142 typedef struct _RGNDATAHEADER {
2149 typedef struct _RGNDATA {
2152 } RGNDATA,*PRGNDATA, *LPRGNDATA;
2153 /* for GetRandomRgn */
2155 typedef struct tagGCP_RESULTSA {
2165 } GCP_RESULTSA,*LPGCP_RESULTSA;
2166 typedef struct tagGCP_RESULTSW {
2176 } GCP_RESULTSW,*LPGCP_RESULTSW;
2177 typedef struct _GLYPHMETRICS {
2180 POINT gmptGlyphOrigin;
2183 } GLYPHMETRICS,*LPGLYPHMETRICS;
2185 typedef struct tagKERNINGPAIR {
2189 } KERNINGPAIR,*LPKERNINGPAIR;
2190 typedef struct _FIXED {
2194 typedef struct _MAT2 {
2200 typedef struct _OUTLINETEXTMETRICA {
2202 TEXTMETRICA otmTextMetrics;
2204 PANOSE otmPanoseNumber;
2205 UINT otmfsSelection;
2207 int otmsCharSlopeRise;
2208 int otmsCharSlopeRun;
2214 UINT otmsCapEmHeight;
2220 UINT otmusMinimumPPEM;
2221 POINT otmptSubscriptSize;
2222 POINT otmptSubscriptOffset;
2223 POINT otmptSuperscriptSize;
2224 POINT otmptSuperscriptOffset;
2225 UINT otmsStrikeoutSize;
2226 int otmsStrikeoutPosition;
2227 int otmsUnderscoreSize;
2228 int otmsUnderscorePosition;
2229 PSTR otmpFamilyName;
2233 } OUTLINETEXTMETRICA,*POUTLINETEXTMETRICA,*LPOUTLINETEXTMETRICA;
2234 typedef struct _OUTLINETEXTMETRICW {
2236 TEXTMETRICW otmTextMetrics;
2238 PANOSE otmPanoseNumber;
2239 UINT otmfsSelection;
2241 int otmsCharSlopeRise;
2242 int otmsCharSlopeRun;
2248 UINT otmsCapEmHeight;
2254 UINT otmusMinimumPPEM;
2255 POINT otmptSubscriptSize;
2256 POINT otmptSubscriptOffset;
2257 POINT otmptSuperscriptSize;
2258 POINT otmptSuperscriptOffset;
2259 UINT otmsStrikeoutSize;
2260 int otmsStrikeoutPosition;
2261 int otmsUnderscoreSize;
2262 int otmsUnderscorePosition;
2263 PSTR otmpFamilyName;
2267 } OUTLINETEXTMETRICW,*POUTLINETEXTMETRICW,*LPOUTLINETEXTMETRICW;
2268 typedef struct _RASTERIZER_STATUS {
2272 } RASTERIZER_STATUS,*LPRASTERIZER_STATUS;
2273 typedef struct _POLYTEXTA {
2281 } POLYTEXTA, *PPOLYTEXTA, *LPPOLYTEXTA;
2282 typedef struct _POLYTEXTW {
2290 } POLYTEXTW, *PPOLYTEXTW, *LPPOLYTEXTW;
2291 typedef struct tagPIXELFORMATDESCRIPTOR {
2307 BYTE cAccumGreenBits;
2308 BYTE cAccumBlueBits;
2309 BYTE cAccumAlphaBits;
2316 DWORD dwVisibleMask;
2318 } PIXELFORMATDESCRIPTOR,*PPIXELFORMATDESCRIPTOR,*LPPIXELFORMATDESCRIPTOR;
2319 typedef struct tagMETAFILEPICT {
2324 } METAFILEPICT,*LPMETAFILEPICT;
2325 typedef struct tagLOCALESIGNATURE {
2327 DWORD lsCsbDefault[2];
2328 DWORD lsCsbSupported[2];
2329 } LOCALESIGNATURE,*PLOCALESIGNATURE,*LPLOCALESIGNATURE;
2330 typedef LONG LCSTYPE;
2331 #pragma pack(push,4)
2332 typedef struct tagNEWTEXTMETRICA {
2336 LONG tmInternalLeading;
2337 LONG tmExternalLeading;
2338 LONG tmAveCharWidth;
2339 LONG tmMaxCharWidth;
2342 LONG tmDigitizedAspectX;
2343 LONG tmDigitizedAspectY;
2351 BYTE tmPitchAndFamily;
2357 } NEWTEXTMETRICA,*PNEWTEXTMETRICA,*LPNEWTEXTMETRICA;
2358 typedef struct tagNEWTEXTMETRICW {
2362 LONG tmInternalLeading;
2363 LONG tmExternalLeading;
2364 LONG tmAveCharWidth;
2365 LONG tmMaxCharWidth;
2368 LONG tmDigitizedAspectX;
2369 LONG tmDigitizedAspectY;
2372 WCHAR tmDefaultChar;
2377 BYTE tmPitchAndFamily;
2383 } NEWTEXTMETRICW,*PNEWTEXTMETRICW,*LPNEWTEXTMETRICW;
2385 typedef struct tagNEWTEXTMETRICEXA {
2386 NEWTEXTMETRICA ntmTm;
2387 FONTSIGNATURE ntmFontSig;
2389 typedef struct tagNEWTEXTMETRICEXW {
2390 NEWTEXTMETRICW ntmTm;
2391 FONTSIGNATURE ntmFontSig;
2393 typedef struct tagPELARRAY {
2399 } PELARRAY,*PPELARRAY,*LPPELARRAY;
2400 typedef struct tagENUMLOGFONTA {
2401 LOGFONTA elfLogFont;
2402 BYTE elfFullName[LF_FULLFACESIZE];
2403 BYTE elfStyle[LF_FACESIZE];
2404 } ENUMLOGFONTA,*LPENUMLOGFONTA;
2405 typedef struct tagENUMLOGFONTW {
2406 LOGFONTW elfLogFont;
2407 WCHAR elfFullName[LF_FULLFACESIZE];
2408 WCHAR elfStyle[LF_FACESIZE];
2409 } ENUMLOGFONTW,*LPENUMLOGFONTW;
2410 typedef struct tagENUMLOGFONTEXA {
2411 LOGFONTA elfLogFont;
2412 BYTE elfFullName[LF_FULLFACESIZE];
2413 BYTE elfStyle[LF_FACESIZE];
2414 BYTE elfScript[LF_FACESIZE];
2415 } ENUMLOGFONTEXA,*LPENUMLOGFONTEXA;
2416 typedef struct tagENUMLOGFONTEXW {
2417 LOGFONTW elfLogFont;
2418 WCHAR elfFullName[LF_FULLFACESIZE];
2419 WCHAR elfStyle[LF_FACESIZE];
2420 WCHAR elfScript[LF_FACESIZE];
2421 } ENUMLOGFONTEXW,*LPENUMLOGFONTEXW;
2422 typedef struct tagPOINTFX {
2425 } POINTFX,*LPPOINTFX;
2426 typedef struct tagTTPOLYCURVE {
2430 } TTPOLYCURVE,*LPTTPOLYCURVE;
2431 typedef struct tagTTPOLYGONHEADER {
2435 } TTPOLYGONHEADER,*LPTTPOLYGONHEADER;
2436 typedef struct _POINTFLOAT {
2439 } POINTFLOAT,*PPOINTFLOAT;
2440 typedef struct _GLYPHMETRICSFLOAT {
2443 POINTFLOAT gmfptGlyphOrigin;
2446 } GLYPHMETRICSFLOAT,*PGLYPHMETRICSFLOAT,*LPGLYPHMETRICSFLOAT;
2447 typedef struct tagLAYERPLANEDESCRIPTOR {
2463 BYTE cAccumGreenBits;
2464 BYTE cAccumBlueBits;
2465 BYTE cAccumAlphaBits;
2471 COLORREF crTransparent;
2472 } LAYERPLANEDESCRIPTOR,*PLAYERPLANEDESCRIPTOR,*LPLAYERPLANEDESCRIPTOR;
2473 typedef struct _BLENDFUNCTION {
2476 BYTE SourceConstantAlpha;
2478 } BLENDFUNCTION,*PBLENDFUNCTION,*LPBLENDFUNCTION;
2479 #define MM_MAX_NUMAXES 16
2480 typedef struct _DESIGNVECTOR {
2483 LONG dvValues[MM_MAX_NUMAXES];
2484 } DESIGNVECTOR, *PDESIGNVECTOR, FAR *LPDESIGNVECTOR;
2486 typedef USHORT COLOR16;
2487 typedef struct _TRIVERTEX {
2494 } TRIVERTEX, *PTRIVERTEX, *LPTRIVERTEX;
2495 typedef struct _GRADIENT_TRIANGLE {
2499 } GRADIENT_TRIANGLE,*PGRADIENT_TRIANGLE,*LPGRADIENT_TRIANGLE;
2500 typedef struct _GRADIENT_RECT {
2503 }GRADIENT_RECT,*PGRADIENT_RECT,*LPGRADIENT_RECT;
2504 typedef struct _DISPLAY_DEVICEA {
2506 CHAR DeviceName[32];
2507 CHAR DeviceString[128];
2510 CHAR DeviceKey[128];
2511 } DISPLAY_DEVICEA, *PDISPLAY_DEVICEA, *LPDISPLAY_DEVICEA;
2512 typedef struct _DISPLAY_DEVICEW {
2514 WCHAR DeviceName[32];
2515 WCHAR DeviceString[128];
2517 WCHAR DeviceID[128];
2518 WCHAR DeviceKey[128];
2519 } DISPLAY_DEVICEW, *PDISPLAY_DEVICEW, *LPDISPLAY_DEVICEW;
2521 typedef BOOL (CALLBACK *ABORTPROC)(HDC,int);
2522 typedef int (CALLBACK *MFENUMPROC)(HDC,HANDLETABLE*,METARECORD*,int,LPARAM);
2523 typedef int (CALLBACK *ENHMFENUMPROC)(HDC,HANDLETABLE*,const ENHMETARECORD*,int,LPARAM);
2524 typedef int (CALLBACK *OLDFONTENUMPROCA)(const LOGFONTA*,const TEXTMETRICA*,DWORD,LPARAM);
2525 typedef int (CALLBACK *OLDFONTENUMPROCW)(const LOGFONTW*,const TEXTMETRICW*,DWORD,LPARAM);
2526 typedef OLDFONTENUMPROCA FONTENUMPROCA;
2527 typedef OLDFONTENUMPROCW FONTENUMPROCW;
2528 typedef int (CALLBACK *ICMENUMPROCA)(LPSTR,LPARAM);
2529 typedef int (CALLBACK *ICMENUMPROCW)(LPWSTR,LPARAM);
2530 typedef void (CALLBACK *GOBJENUMPROC)(LPVOID,LPARAM);
2531 typedef void (CALLBACK *LINEDDAPROC)(int,int,LPARAM);
2532 typedef UINT (CALLBACK *LPFNDEVMODE)(HWND,HMODULE,LPDEVMODEA,LPSTR,LPSTR,LPDEVMODEA,LPSTR,UINT);
2533 typedef DWORD (CALLBACK *LPFNDEVCAPS)(LPSTR,LPSTR,UINT,LPSTR,LPDEVMODEA);
2535 #define MAKEPOINTS(l) (*((POINTS*)&(l)))
2536 #define MAKEROP4(f,b) (DWORD)((((b)<<8)&0xFF000000)|(f))
2538 #define GetCValue(cmyk) ((BYTE)(cmyk))
2539 #define GetMValue(cmyk) ((BYTE)((cmyk)>> 8))
2540 #define GetYValue(cmyk) ((BYTE)((cmyk)>>16))
2541 #define GetKValue(cmyk) ((BYTE)((cmyk)>>24))
2542 #define CMYK(c,m,y,k) ((COLORREF)((BYTE)(k)|((BYTE)(y)<<8)|((BYTE)(m)<<16)|((BYTE)(c)<<24)))
2544 #define GetRValue(c) ((BYTE)(c))
2545 #define GetGValue(c) ((BYTE)(((WORD)(c))>>8))
2546 #define GetBValue(c) ((BYTE)((c)>>16))
2547 #define RGB(r,g,b) ((COLORREF)((BYTE)(r)|((BYTE)(g) << 8)|((BYTE)(b) << 16)))
2549 #define PALETTEINDEX(i) ((0x01000000|(COLORREF)(WORD)(i)))
2550 #define PALETTERGB(r,g,b) (0x02000000|RGB(r,g,b))
2552 WINGDIAPI int WINAPI AbortDoc(HDC);
2553 WINGDIAPI BOOL WINAPI AbortPath(HDC);
2554 WINGDIAPI int WINAPI AddFontResourceA(LPCSTR);
2555 WINGDIAPI int WINAPI AddFontResourceW(LPCWSTR);
2557 WINGDIAPI BOOL WINAPI AngleArc(HDC,int,int,DWORD,FLOAT,FLOAT);
2558 WINGDIAPI BOOL WINAPI AnimatePalette(HPALETTE,UINT,UINT,const PALETTEENTRY*);
2559 WINGDIAPI BOOL WINAPI Arc(HDC,int,int,int,int,int,int,int,int);
2560 WINGDIAPI BOOL WINAPI ArcTo(HDC,int,int,int,int,int,int,int,int);
2561 WINGDIAPI BOOL WINAPI BeginPath(HDC);
2562 WINGDIAPI BOOL WINAPI BitBlt(HDC,int,int,int,int,HDC,int,int,DWORD);
2563 WINGDIAPI BOOL WINAPI CancelDC(HDC);
2564 WINGDIAPI BOOL WINAPI CheckColorsInGamut(HDC,PVOID,PVOID,DWORD);
2565 WINGDIAPI BOOL WINAPI Chord(HDC,int,int,int,int,int,int,int,int);
2566 WINGDIAPI int WINAPI ChoosePixelFormat(HDC,CONST PIXELFORMATDESCRIPTOR*);
2567 WINGDIAPI HENHMETAFILE WINAPI CloseEnhMetaFile(HDC);
2568 WINGDIAPI BOOL WINAPI CloseFigure(HDC);
2569 WINGDIAPI HMETAFILE WINAPI CloseMetaFile(HDC);
2571 WINGDIAPI int WINAPI CombineRgn(HRGN,HRGN,HRGN,int);
2572 WINGDIAPI BOOL WINAPI CombineTransform(LPXFORM,const XFORM*,const XFORM*);
2573 WINGDIAPI HENHMETAFILE WINAPI CopyEnhMetaFileA(HENHMETAFILE,LPCSTR);
2574 WINGDIAPI HENHMETAFILE WINAPI CopyEnhMetaFileW(HENHMETAFILE,LPCWSTR);
2575 WINGDIAPI HMETAFILE WINAPI CopyMetaFileA(HMETAFILE,LPCSTR);
2576 WINGDIAPI HMETAFILE WINAPI CopyMetaFileW(HMETAFILE,LPCWSTR);
2577 WINGDIAPI HBITMAP WINAPI CreateBitmap(int,int,UINT,UINT,PCVOID);
2578 WINGDIAPI HBITMAP WINAPI CreateBitmapIndirect(const BITMAP*);
2579 WINGDIAPI HBRUSH WINAPI CreateBrushIndirect(const LOGBRUSH*);
2580 WINGDIAPI HCOLORSPACE WINAPI CreateColorSpaceA(LPLOGCOLORSPACEA);
2581 WINGDIAPI HCOLORSPACE WINAPI CreateColorSpaceW(LPLOGCOLORSPACEW);
2582 WINGDIAPI HBITMAP WINAPI CreateCompatibleBitmap(HDC,int,int);
2583 WINGDIAPI HDC WINAPI CreateCompatibleDC(HDC);
2584 WINGDIAPI HDC WINAPI CreateDCA(LPCSTR,LPCSTR,LPCSTR,const DEVMODEA*);
2585 WINGDIAPI HDC WINAPI CreateDCW(LPCWSTR,LPCWSTR,LPCWSTR,const DEVMODEW*);
2586 WINGDIAPI HBITMAP WINAPI CreateDIBitmap(HDC,const BITMAPINFOHEADER*,DWORD,PCVOID,const BITMAPINFO*,UINT);
2587 WINGDIAPI HBRUSH WINAPI CreateDIBPatternBrush(HGLOBAL,UINT);
2588 WINGDIAPI HBRUSH WINAPI CreateDIBPatternBrushPt(PCVOID,UINT);
2589 WINGDIAPI HBITMAP WINAPI CreateDIBSection(HDC,const BITMAPINFO*,UINT,void**,HANDLE,DWORD);
2590 WINGDIAPI HBITMAP WINAPI CreateDiscardableBitmap(HDC,int,int);
2591 WINGDIAPI HRGN WINAPI CreateEllipticRgn(int,int,int,int);
2592 WINGDIAPI HRGN WINAPI CreateEllipticRgnIndirect(LPCRECT);
2593 WINGDIAPI HDC WINAPI CreateEnhMetaFileA(HDC,LPCSTR,LPCRECT,LPCSTR);
2594 WINGDIAPI HDC WINAPI CreateEnhMetaFileW(HDC,LPCWSTR,LPCRECT,LPCWSTR);
2595 WINGDIAPI HFONT WINAPI CreateFontA(int,int,int,int,int,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,LPCSTR);
2596 WINGDIAPI HFONT WINAPI CreateFontW(int,int,int,int,int,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,LPCWSTR);
2597 WINGDIAPI HFONT WINAPI CreateFontIndirectA(const LOGFONTA*);
2598 WINGDIAPI HFONT WINAPI CreateFontIndirectW(const LOGFONTW*);
2599 WINGDIAPI HPALETTE WINAPI CreateHalftonePalette(HDC);
2600 WINGDIAPI HBRUSH WINAPI CreateHatchBrush(int,COLORREF);
2601 WINGDIAPI HDC WINAPI CreateICA(LPCSTR,LPCSTR,LPCSTR,const DEVMODEA*);
2602 WINGDIAPI HDC WINAPI CreateICW(LPCWSTR,LPCWSTR,LPCWSTR,const DEVMODEW*);
2603 WINGDIAPI HDC WINAPI CreateMetaFileA(LPCSTR);
2604 WINGDIAPI HDC WINAPI CreateMetaFileW(LPCWSTR);
2605 WINGDIAPI HPALETTE WINAPI CreatePalette(const LOGPALETTE*);
2606 WINGDIAPI HBRUSH WINAPI CreatePatternBrush(HBITMAP);
2607 WINGDIAPI HPEN WINAPI CreatePen(int,int,COLORREF);
2608 WINGDIAPI HPEN WINAPI CreatePenIndirect(const LOGPEN*);
2609 WINGDIAPI HRGN WINAPI CreatePolygonRgn(const POINT*,int,int);
2610 WINGDIAPI HRGN WINAPI CreatePolyPolygonRgn(const POINT*,const INT*,int,int);
2611 WINGDIAPI HRGN WINAPI CreateRectRgn(int,int,int,int);
2612 WINGDIAPI HRGN WINAPI CreateRectRgnIndirect(LPCRECT);
2613 WINGDIAPI HRGN WINAPI CreateRoundRectRgn(int,int,int,int,int,int);
2614 WINGDIAPI BOOL WINAPI CreateScalableFontResourceA(DWORD,LPCSTR,LPCSTR,LPCSTR);
2615 WINGDIAPI BOOL WINAPI CreateScalableFontResourceW(DWORD,LPCWSTR,LPCWSTR,LPCWSTR);
2616 WINGDIAPI HBRUSH WINAPI CreateSolidBrush(COLORREF);
2617 WINGDIAPI BOOL WINAPI DeleteColorSpace(HCOLORSPACE);
2618 WINGDIAPI BOOL WINAPI DeleteDC(HDC);
2619 WINGDIAPI BOOL WINAPI DeleteEnhMetaFile(HENHMETAFILE);
2620 WINGDIAPI BOOL WINAPI DeleteMetaFile(HMETAFILE);
2621 WINGDIAPI BOOL WINAPI DeleteObject(HGDIOBJ);
2622 WINGDIAPI int WINAPI DescribePixelFormat(HDC,int,UINT,LPPIXELFORMATDESCRIPTOR);
2623 WINGDIAPI DWORD WINAPI DeviceCapabilitiesA(LPCSTR,LPCSTR,WORD,LPSTR,const DEVMODEA*);
2624 WINGDIAPI DWORD WINAPI DeviceCapabilitiesW(LPCWSTR,LPCWSTR,WORD,LPWSTR,const DEVMODEW*);
2625 WINGDIAPI BOOL WINAPI DPtoLP(HDC,LPPOINT,int);
2626 WINGDIAPI int WINAPI DrawEscape(HDC,int,int,LPCSTR);
2627 WINGDIAPI BOOL WINAPI Ellipse(HDC,int,int,int,int);
2628 WINGDIAPI int WINAPI EndDoc(HDC);
2629 WINGDIAPI int WINAPI EndPage(HDC);
2630 WINGDIAPI BOOL WINAPI EndPath(HDC);
2631 WINGDIAPI BOOL WINAPI EnumEnhMetaFile(HDC,HENHMETAFILE,ENHMFENUMPROC,PVOID,LPCRECT);
2632 WINGDIAPI int WINAPI EnumFontFamiliesA(HDC,LPCSTR,FONTENUMPROCA,LPARAM);
2633 WINGDIAPI int WINAPI EnumFontFamiliesW(HDC,LPCWSTR,FONTENUMPROCW,LPARAM);
2634 WINGDIAPI int WINAPI EnumFontFamiliesExA(HDC,PLOGFONTA,FONTENUMPROCA,LPARAM,DWORD);
2635 WINGDIAPI int WINAPI EnumFontFamiliesExW(HDC,PLOGFONTW,FONTENUMPROCW,LPARAM,DWORD);
2636 WINGDIAPI int WINAPI EnumFontsA(HDC,LPCSTR,FONTENUMPROCA,LPARAM);
2637 WINGDIAPI int WINAPI EnumFontsW(HDC,LPCWSTR,FONTENUMPROCW,LPARAM);
2638 WINGDIAPI int WINAPI EnumICMProfilesA(HDC,ICMENUMPROCA,LPARAM);
2639 WINGDIAPI int WINAPI EnumICMProfilesW(HDC,ICMENUMPROCW,LPARAM);
2640 WINGDIAPI BOOL WINAPI EnumMetaFile(HDC,HMETAFILE,MFENUMPROC,LPARAM);
2641 WINGDIAPI int WINAPI EnumObjects(HDC,int,GOBJENUMPROC,LPARAM);
2642 WINGDIAPI BOOL WINAPI EqualRgn(HRGN,HRGN);
2643 WINGDIAPI int WINAPI Escape(HDC,int,int,LPCSTR,PVOID);
2644 WINGDIAPI int WINAPI ExcludeClipRect(HDC,int,int,int,int);
2645 WINGDIAPI int WINAPI ExcludeUpdateRgn(HDC,HWND);
2646 WINGDIAPI HPEN WINAPI ExtCreatePen(DWORD,DWORD,const LOGBRUSH*,DWORD,const DWORD*);
2647 WINGDIAPI HRGN WINAPI ExtCreateRegion(const XFORM*,DWORD,const RGNDATA*);
2648 WINGDIAPI int WINAPI ExtEscape(HDC,int,int,LPCSTR,int,LPSTR);
2649 WINGDIAPI BOOL WINAPI ExtFloodFill(HDC,int,int,COLORREF,UINT);
2650 WINGDIAPI int WINAPI ExtSelectClipRgn(HDC,HRGN,int);
2651 WINGDIAPI BOOL WINAPI ExtTextOutA(HDC,int,int,UINT,LPCRECT,LPCSTR,UINT,const INT*);
2652 WINGDIAPI BOOL WINAPI ExtTextOutW(HDC,int,int,UINT,LPCRECT,LPCWSTR,UINT,const INT*);
2653 WINGDIAPI BOOL WINAPI FillPath(HDC);
2654 WINGDIAPI int WINAPI FillRect(HDC,LPCRECT,HBRUSH);
2655 WINGDIAPI int WINAPI FillRgn(HDC,HRGN,HBRUSH);
2656 WINGDIAPI BOOL WINAPI FixBrushOrgEx(HDC,int,int,LPPOINT);
2657 WINGDIAPI BOOL WINAPI FlattenPath(HDC);
2658 WINGDIAPI BOOL WINAPI FloodFill(HDC,int,int,COLORREF);
2659 WINGDIAPI BOOL WINAPI GdiComment(HDC,UINT,const BYTE*);
2660 WINGDIAPI BOOL WINAPI GdiFlush(void);
2661 WINGDIAPI DWORD WINAPI GdiGetBatchLimit(void);
2662 WINGDIAPI DWORD WINAPI GdiSetBatchLimit(DWORD);
2663 WINGDIAPI int WINAPI GetArcDirection(HDC);
2664 WINGDIAPI BOOL WINAPI GetAspectRatioFilterEx(HDC,LPSIZE);
2665 WINGDIAPI LONG WINAPI GetBitmapBits(HBITMAP,LONG,PVOID);
2666 WINGDIAPI BOOL WINAPI GetBitmapDimensionEx(HBITMAP,LPSIZE);
2667 WINGDIAPI COLORREF WINAPI GetBkColor(HDC);
2668 WINGDIAPI int WINAPI GetBkMode(HDC);
2669 WINGDIAPI UINT WINAPI GetBoundsRect(HDC,LPRECT,UINT);
2670 WINGDIAPI BOOL WINAPI GetBrushOrgEx(HDC,LPPOINT);
2671 WINGDIAPI BOOL WINAPI GetCharABCWidthsA(HDC,UINT,UINT,LPABC);
2672 WINGDIAPI BOOL WINAPI GetCharABCWidthsW(HDC,UINT,UINT,LPABC);
2673 WINGDIAPI BOOL WINAPI GetCharABCWidthsFloatA(HDC,UINT,UINT,LPABCFLOAT);
2674 WINGDIAPI BOOL WINAPI GetCharABCWidthsFloatW(HDC,UINT,UINT,LPABCFLOAT);
2675 WINGDIAPI DWORD WINAPI GetCharacterPlacementA(HDC,LPCSTR,int,int,LPGCP_RESULTSA,DWORD);
2676 WINGDIAPI DWORD WINAPI GetCharacterPlacementW(HDC,LPCWSTR,int,int,LPGCP_RESULTSW,DWORD);
2677 WINGDIAPI BOOL WINAPI GetCharWidth32A(HDC,UINT,UINT,LPINT);
2678 WINGDIAPI BOOL WINAPI GetCharWidth32W(HDC,UINT,UINT,LPINT);
2679 WINGDIAPI BOOL WINAPI GetCharWidthA(HDC,UINT,UINT,LPINT);
2680 WINGDIAPI BOOL WINAPI GetCharWidthW(HDC,UINT,UINT,LPINT);
2681 WINGDIAPI BOOL WINAPI GetCharWidthFloatA(HDC,UINT,UINT,PFLOAT);
2682 WINGDIAPI BOOL WINAPI GetCharWidthFloatW(HDC,UINT,UINT,PFLOAT);
2683 WINGDIAPI int WINAPI GetClipBox(HDC,LPRECT);
2684 WINGDIAPI int WINAPI GetClipRgn(HDC,HRGN);
2685 WINGDIAPI BOOL WINAPI GetColorAdjustment(HDC,LPCOLORADJUSTMENT);
2686 WINGDIAPI HANDLE WINAPI GetColorSpace(HDC);
2687 WINGDIAPI HGDIOBJ WINAPI GetCurrentObject(HDC,UINT);
2688 WINGDIAPI BOOL WINAPI GetCurrentPositionEx(HDC,LPPOINT);
2689 WINGDIAPI HCURSOR WINAPI GetCursor(void);
2691 WINGDIAPI BOOL WINAPI GetDCOrgEx(HDC,LPPOINT);
2692 WINGDIAPI int WINAPI GetDeviceCaps(HDC,int);
2693 WINGDIAPI BOOL WINAPI GetDeviceGammaRamp(HDC,PVOID);
2694 WINGDIAPI UINT WINAPI GetDIBColorTable(HDC,UINT,UINT,RGBQUAD*);
2695 WINGDIAPI int WINAPI GetDIBits(HDC,HBITMAP,UINT,UINT,PVOID,LPBITMAPINFO,UINT);
2696 WINGDIAPI HENHMETAFILE WINAPI GetEnhMetaFileA(LPCSTR);
2697 WINGDIAPI HENHMETAFILE WINAPI GetEnhMetaFileW(LPCWSTR);
2698 WINGDIAPI UINT WINAPI GetEnhMetaFileBits(HENHMETAFILE,UINT,LPBYTE);
2699 WINGDIAPI UINT WINAPI GetEnhMetaFileDescriptionA(HENHMETAFILE,UINT,LPSTR);
2700 WINGDIAPI UINT WINAPI GetEnhMetaFileDescriptionW(HENHMETAFILE,UINT,LPWSTR);
2701 WINGDIAPI UINT WINAPI GetEnhMetaFileHeader(HENHMETAFILE,UINT,LPENHMETAHEADER);
2702 WINGDIAPI UINT WINAPI GetEnhMetaFilePaletteEntries(HENHMETAFILE,UINT,LPPALETTEENTRY);
2703 WINGDIAPI UINT WINAPI GetEnhMetaFilePixelFormat(HENHMETAFILE,DWORD,CONST PIXELFORMATDESCRIPTOR*);
2704 WINGDIAPI DWORD WINAPI GetFontData(HDC,DWORD,DWORD,PVOID,DWORD);
2705 WINGDIAPI DWORD WINAPI GetFontLanguageInfo(HDC);
2706 WINGDIAPI DWORD WINAPI GetGlyphOutlineA(HDC,UINT,UINT,LPGLYPHMETRICS,DWORD,PVOID,const MAT2*);
2707 WINGDIAPI DWORD WINAPI GetGlyphOutlineW(HDC,UINT,UINT,LPGLYPHMETRICS,DWORD,PVOID,const MAT2*);
2708 WINGDIAPI int WINAPI GetGraphicsMode(HDC);
2709 WINGDIAPI BOOL WINAPI GetICMProfileA(HDC,LPDWORD,LPSTR);
2710 WINGDIAPI BOOL WINAPI GetICMProfileW(HDC,LPDWORD,LPWSTR);
2711 WINGDIAPI DWORD WINAPI GetKerningPairsA(HDC,DWORD,LPKERNINGPAIR);
2712 WINGDIAPI DWORD WINAPI GetKerningPairsW(HDC,DWORD,LPKERNINGPAIR);
2713 WINGDIAPI BOOL WINAPI GetLogColorSpaceA(HCOLORSPACE,LPLOGCOLORSPACEA,DWORD);
2714 WINGDIAPI BOOL WINAPI GetLogColorSpaceW(HCOLORSPACE,LPLOGCOLORSPACEW,DWORD);
2715 WINGDIAPI int WINAPI GetMapMode(HDC);
2716 WINGDIAPI HMETAFILE WINAPI GetMetaFileA(LPCSTR);
2717 WINGDIAPI HMETAFILE WINAPI GetMetaFileW(LPCWSTR);
2718 WINGDIAPI UINT WINAPI GetMetaFileBitsEx(HMETAFILE,UINT,PVOID);
2719 WINGDIAPI int WINAPI GetMetaRgn(HDC,HRGN);
2720 WINGDIAPI BOOL WINAPI GetMiterLimit(HDC,PFLOAT);
2721 WINGDIAPI COLORREF WINAPI GetNearestColor(HDC,COLORREF);
2722 WINGDIAPI UINT WINAPI GetNearestPaletteIndex(HPALETTE,COLORREF);
2723 WINGDIAPI int WINAPI GetObjectA(HGDIOBJ,int,PVOID);
2724 WINGDIAPI int WINAPI GetObjectW(HGDIOBJ,int,PVOID);
2725 WINGDIAPI DWORD WINAPI GetObjectType(HGDIOBJ);
2726 WINGDIAPI UINT WINAPI GetOutlineTextMetricsA(HDC,UINT,LPOUTLINETEXTMETRICA);
2727 WINGDIAPI UINT WINAPI GetOutlineTextMetricsW(HDC,UINT,LPOUTLINETEXTMETRICW);
2728 WINGDIAPI UINT WINAPI GetPaletteEntries(HPALETTE,UINT,UINT,LPPALETTEENTRY);
2729 WINGDIAPI int WINAPI GetPath(HDC,LPPOINT,PBYTE,int);
2730 WINGDIAPI COLORREF WINAPI GetPixel(HDC,int,int);
2731 WINGDIAPI int WINAPI GetPixelFormat(HDC);
2732 WINGDIAPI int WINAPI GetPolyFillMode(HDC);
2733 WINGDIAPI BOOL WINAPI GetRasterizerCaps(LPRASTERIZER_STATUS,UINT);
2734 WINGDIAPI int WINAPI GetRandomRgn (HDC,HRGN,INT);
2735 WINGDIAPI DWORD WINAPI GetRegionData(HRGN,DWORD,LPRGNDATA);
2736 WINGDIAPI int WINAPI GetRgnBox(HRGN,LPRECT);
2737 WINGDIAPI int WINAPI GetROP2(HDC);
2738 WINGDIAPI HGDIOBJ WINAPI GetStockObject(int);
2739 WINGDIAPI int WINAPI GetStretchBltMode(HDC);
2740 WINGDIAPI UINT WINAPI GetSystemPaletteEntries(HDC,UINT,UINT,LPPALETTEENTRY);
2741 WINGDIAPI UINT WINAPI GetSystemPaletteUse(HDC);
2742 WINGDIAPI UINT WINAPI GetTextAlign(HDC);
2743 WINGDIAPI int WINAPI GetTextCharacterExtra(HDC);
2744 WINGDIAPI int WINAPI GetTextCharset(HDC);
2745 WINGDIAPI int WINAPI GetTextCharsetInfo(HDC,LPFONTSIGNATURE,DWORD);
2746 WINGDIAPI COLORREF WINAPI GetTextColor(HDC);
2747 WINGDIAPI BOOL WINAPI GetTextExtentExPointA(HDC,LPCSTR,int,int,LPINT,LPINT,LPSIZE);
2748 WINGDIAPI BOOL WINAPI GetTextExtentExPointW( HDC,LPCWSTR,int,int,LPINT,LPINT,LPSIZE );
2749 WINGDIAPI BOOL WINAPI GetTextExtentPointA(HDC,LPCSTR,int,LPSIZE);
2750 WINGDIAPI BOOL WINAPI GetTextExtentPointW(HDC,LPCWSTR,int,LPSIZE);
2753 extern BOOL GetTextExtentPoint32A(HDC,LPCSTR,int,LPSIZE);
2754 extern BOOL GetTextExtentPoint32W( HDC,LPCWSTR,int,LPSIZE);
2756 WINGDIAPI BOOL WINAPI GetTextExtentPoint32A(HDC,LPCSTR,int,LPSIZE);
2757 WINGDIAPI BOOL WINAPI GetTextExtentPoint32W( HDC,LPCWSTR,int,LPSIZE);
2760 WINGDIAPI int WINAPI GetTextFaceA(HDC,int,LPSTR);
2761 WINGDIAPI int WINAPI GetTextFaceW(HDC,int,LPWSTR);
2762 WINGDIAPI BOOL WINAPI GetTextMetricsA(HDC,LPTEXTMETRICA);
2763 WINGDIAPI BOOL WINAPI GetTextMetricsW(HDC,LPTEXTMETRICW);
2764 WINGDIAPI BOOL WINAPI GetViewportExtEx(HDC,LPSIZE);
2765 WINGDIAPI BOOL WINAPI GetViewportOrgEx(HDC,LPPOINT);
2766 WINGDIAPI BOOL WINAPI GetWindowExtEx(HDC,LPSIZE);
2767 WINGDIAPI BOOL WINAPI GetWindowOrgEx(HDC,LPPOINT);
2768 WINGDIAPI UINT WINAPI GetWinMetaFileBits(HENHMETAFILE,UINT,LPBYTE,INT,HDC);
2769 WINGDIAPI BOOL WINAPI GetWorldTransform(HDC,LPXFORM);
2770 WINGDIAPI int WINAPI IntersectClipRect(HDC,int,int,int,int);
2771 WINGDIAPI BOOL WINAPI InvertRgn(HDC,HRGN);
2772 WINGDIAPI BOOL WINAPI LineDDA(int,int,int,int,LINEDDAPROC,LPARAM);
2773 WINGDIAPI BOOL WINAPI LineTo(HDC,int,int);
2774 WINGDIAPI BOOL WINAPI LPtoDP(HDC,LPPOINT,int);
2775 WINGDIAPI BOOL WINAPI MaskBlt(HDC,int,int,int,int,HDC,int,int,HBITMAP,int,int,DWORD);
2776 WINGDIAPI BOOL WINAPI ModifyWorldTransform(HDC,const XFORM*,DWORD);
2777 WINGDIAPI BOOL WINAPI MoveToEx(HDC,int,int,LPPOINT);
2778 WINGDIAPI int WINAPI OffsetClipRgn(HDC,int,int);
2779 WINGDIAPI int WINAPI OffsetRgn(HRGN,int,int);
2780 WINGDIAPI BOOL WINAPI OffsetViewportOrgEx(HDC,int,int,LPPOINT);
2781 WINGDIAPI BOOL WINAPI OffsetWindowOrgEx(HDC,int,int,LPPOINT);
2782 WINGDIAPI BOOL WINAPI PaintRgn(HDC,HRGN);
2783 WINGDIAPI BOOL WINAPI PatBlt(HDC,int,int,int,int,DWORD);
2784 WINGDIAPI HRGN WINAPI PathToRegion(HDC);
2785 WINGDIAPI BOOL WINAPI Pie(HDC,int,int,int,int,int,int,int,int);
2786 WINGDIAPI BOOL WINAPI PlayEnhMetaFile(HDC,HENHMETAFILE,LPCRECT);
2787 WINGDIAPI BOOL WINAPI PlayEnhMetaFileRecord(HDC,LPHANDLETABLE,const ENHMETARECORD*,UINT);
2788 WINGDIAPI BOOL WINAPI PlayMetaFile(HDC,HMETAFILE);
2789 WINGDIAPI BOOL WINAPI PlayMetaFileRecord(HDC,LPHANDLETABLE,LPMETARECORD,UINT);
2790 WINGDIAPI BOOL WINAPI PlgBlt(HDC,const POINT*,HDC,int,int,int,int,HBITMAP,int,int);
2791 WINGDIAPI BOOL WINAPI PolyBezier(HDC,const POINT*,DWORD);
2792 WINGDIAPI BOOL WINAPI PolyBezierTo(HDC,const POINT*,DWORD);
2793 WINGDIAPI BOOL WINAPI PolyDraw(HDC,const POINT*,const BYTE*,int);
2794 WINGDIAPI BOOL WINAPI Polygon(HDC,const POINT*,int);
2795 WINGDIAPI BOOL WINAPI Polyline(HDC,const POINT*,int);
2796 WINGDIAPI BOOL WINAPI PolylineTo(HDC,const POINT*,DWORD);
2797 WINGDIAPI BOOL WINAPI PolyPolygon(HDC,const POINT*,const INT*,int);
2798 WINGDIAPI BOOL WINAPI PolyPolyline(HDC,const POINT*,const DWORD*,DWORD);
2799 WINGDIAPI BOOL WINAPI PolyTextOutA(HDC,const POLYTEXTA*,int);
2800 WINGDIAPI BOOL WINAPI PolyTextOutW(HDC,const POLYTEXTW*,int);
2801 WINGDIAPI BOOL WINAPI PtInRegion(HRGN,int,int);
2802 WINGDIAPI BOOL WINAPI PtVisible(HDC,int,int);
2803 WINGDIAPI UINT WINAPI RealizePalette(HDC);
2804 WINGDIAPI BOOL WINAPI Rectangle(HDC,int,int,int,int);
2805 WINGDIAPI BOOL WINAPI RectInRegion(HRGN,LPCRECT);
2806 WINGDIAPI BOOL WINAPI RectVisible(HDC,LPCRECT);
2807 WINGDIAPI BOOL WINAPI RemoveFontResourceA(LPCSTR);
2808 WINGDIAPI BOOL WINAPI RemoveFontResourceW(LPCWSTR);
2810 WINGDIAPI HDC WINAPI ResetDCA(HDC,const DEVMODEA*);
2811 WINGDIAPI HDC WINAPI ResetDCW(HDC,const DEVMODEW*);
2812 WINGDIAPI BOOL WINAPI ResizePalette(HPALETTE,UINT);
2813 WINGDIAPI BOOL WINAPI RestoreDC(HDC,int);
2814 WINGDIAPI BOOL WINAPI RoundRect(HDC,int,int,int,int,int,int);
2815 WINGDIAPI int WINAPI SaveDC(HDC);
2816 WINGDIAPI BOOL WINAPI ScaleViewportExtEx(HDC,int,int,int,int,LPSIZE);
2817 WINGDIAPI BOOL WINAPI ScaleWindowExtEx(HDC,int,int,int,int,LPSIZE);
2818 WINGDIAPI BOOL WINAPI SelectClipPath(HDC,int);
2819 WINGDIAPI int WINAPI SelectClipRgn(HDC,HRGN);
2820 WINGDIAPI HGDIOBJ WINAPI SelectObject(HDC,HGDIOBJ);
2821 WINGDIAPI HPALETTE WINAPI SelectPalette(HDC,HPALETTE,BOOL);
2822 WINGDIAPI int WINAPI SetAbortProc(HDC,ABORTPROC);
2823 WINGDIAPI int WINAPI SetArcDirection(HDC,int);
2824 WINGDIAPI LONG WINAPI SetBitmapBits(HBITMAP,DWORD,PCVOID);
2825 WINGDIAPI BOOL WINAPI SetBitmapDimensionEx(HBITMAP,int,int,LPSIZE);
2826 WINGDIAPI COLORREF WINAPI SetBkColor(HDC,COLORREF);
2827 WINGDIAPI int WINAPI SetBkMode(HDC,int);
2828 WINGDIAPI UINT WINAPI SetBoundsRect(HDC,LPCRECT,UINT);
2829 WINGDIAPI BOOL WINAPI SetBrushOrgEx(HDC,int,int,LPPOINT);
2830 WINGDIAPI BOOL WINAPI SetColorAdjustment(HDC,const COLORADJUSTMENT*);
2831 WINGDIAPI BOOL WINAPI SetColorSpace(HDC,HCOLORSPACE);
2833 WINGDIAPI BOOL WINAPI SetDeviceGammaRamp(HDC,PVOID);
2834 WINGDIAPI UINT WINAPI SetDIBColorTable(HDC,UINT,UINT,const RGBQUAD*);
2835 WINGDIAPI int WINAPI SetDIBits(HDC,HBITMAP,UINT,UINT,PCVOID,const BITMAPINFO*,UINT);
2836 WINGDIAPI int WINAPI SetDIBitsToDevice(HDC,int,int,DWORD,DWORD,int,int,UINT,UINT,PCVOID,const BITMAPINFO*,UINT);
2837 WINGDIAPI HENHMETAFILE WINAPI SetEnhMetaFileBits(UINT,const BYTE*);
2838 WINGDIAPI int WINAPI SetGraphicsMode(HDC,int);
2839 WINGDIAPI int WINAPI SetICMMode(HDC,int);
2840 WINGDIAPI BOOL WINAPI SetICMProfileA(HDC,LPSTR);
2841 WINGDIAPI BOOL WINAPI SetICMProfileW(HDC,LPWSTR);
2842 WINGDIAPI int WINAPI SetMapMode(HDC,int);
2843 WINGDIAPI DWORD WINAPI SetMapperFlags(HDC,DWORD);
2844 WINGDIAPI HMETAFILE WINAPI SetMetaFileBitsEx(UINT,const BYTE *);
2845 WINGDIAPI int WINAPI SetMetaRgn(HDC);
2846 WINGDIAPI BOOL WINAPI SetMiterLimit(HDC,FLOAT,PFLOAT);
2847 WINGDIAPI UINT WINAPI SetPaletteEntries(HPALETTE,UINT,UINT,const PALETTEENTRY*);
2848 WINGDIAPI COLORREF WINAPI SetPixel(HDC,int,int,COLORREF);
2849 WINGDIAPI BOOL WINAPI SetPixelFormat(HDC,int,const PIXELFORMATDESCRIPTOR*);
2850 WINGDIAPI BOOL WINAPI SetPixelV(HDC,int,int,COLORREF);
2851 WINGDIAPI int WINAPI SetPolyFillMode(HDC,int);
2852 WINGDIAPI BOOL WINAPI SetRectRgn(HRGN,int,int,int,int);
2853 WINGDIAPI int WINAPI SetROP2(HDC,int);
2854 WINGDIAPI int WINAPI SetStretchBltMode(HDC,int);
2855 WINGDIAPI UINT WINAPI SetSystemPaletteUse(HDC,UINT);
2856 WINGDIAPI UINT WINAPI SetTextAlign(HDC,UINT);
2857 WINGDIAPI int WINAPI SetTextCharacterExtra(HDC,int);
2858 WINGDIAPI COLORREF WINAPI SetTextColor(HDC,COLORREF);
2859 WINGDIAPI BOOL WINAPI SetTextJustification(HDC,int,int);
2860 WINGDIAPI BOOL WINAPI SetViewportExtEx(HDC,int,int,LPSIZE);
2861 WINGDIAPI BOOL WINAPI SetViewportOrgEx(HDC,int,int,LPPOINT);
2862 WINGDIAPI BOOL WINAPI SetWindowExtEx(HDC,int,int,LPSIZE);
2863 WINGDIAPI BOOL WINAPI SetWindowOrgEx(HDC,int,int,LPPOINT);
2864 WINGDIAPI HENHMETAFILE WINAPI SetWinMetaFileBits(UINT,const BYTE*,HDC,const METAFILEPICT*);
2865 WINGDIAPI BOOL WINAPI SetWorldTransform(HDC,const XFORM *);
2866 WINGDIAPI int WINAPI StartDocA(HDC,const DOCINFOA*);
2867 WINGDIAPI int WINAPI StartDocW(HDC,const DOCINFOW*);
2868 WINGDIAPI int WINAPI StartPage(HDC);
2869 WINGDIAPI BOOL WINAPI StretchBlt(HDC,int,int,int,int,HDC,int,int,int,int,DWORD);
2870 WINGDIAPI int WINAPI StretchDIBits(HDC,int,int,int,int,int,int,int,int,const VOID *,const BITMAPINFO *,UINT,DWORD);
2871 WINGDIAPI BOOL WINAPI StrokeAndFillPath(HDC);
2872 WINGDIAPI BOOL WINAPI StrokePath(HDC);
2873 WINGDIAPI BOOL WINAPI SwapBuffers(HDC);
2874 WINGDIAPI BOOL WINAPI TextOutA(HDC,int,int,LPCSTR,int);
2875 WINGDIAPI BOOL WINAPI TextOutW(HDC,int,int,LPCWSTR,int);
2876 WINGDIAPI BOOL WINAPI TranslateCharsetInfo(PDWORD,LPCHARSETINFO,DWORD);
2877 WINGDIAPI BOOL WINAPI UnrealizeObject(HGDIOBJ);
2878 WINGDIAPI BOOL WINAPI UpdateColors(HDC);
2879 WINGDIAPI BOOL WINAPI UpdateICMRegKeyA(DWORD,DWORD,LPSTR,UINT);
2880 WINGDIAPI BOOL WINAPI UpdateICMRegKeyW(DWORD,DWORD,LPWSTR,UINT);
2881 WINGDIAPI BOOL WINAPI WidenPath(HDC);
2882 WINGDIAPI BOOL WINAPI wglCopyContext(HGLRC,HGLRC,UINT);
2883 WINGDIAPI HGLRC WINAPI wglCreateContext(HDC);
2884 WINGDIAPI HGLRC WINAPI wglCreateLayerContext(HDC,int);
2885 WINGDIAPI BOOL WINAPI wglDeleteContext(HGLRC);
2886 WINGDIAPI BOOL WINAPI wglDescribeLayerPlane(HDC,int,int,UINT,LPLAYERPLANEDESCRIPTOR);
2887 WINGDIAPI HGLRC WINAPI wglGetCurrentContext(void);
2888 WINGDIAPI HDC WINAPI wglGetCurrentDC(void);
2889 WINGDIAPI int WINAPI wglGetLayerPaletteEntries(HDC,int,int,int,COLORREF*);
2890 WINGDIAPI PROC WINAPI wglGetProcAddress(LPCSTR);
2891 WINGDIAPI BOOL WINAPI wglMakeCurrent(HDC,HGLRC);
2892 WINGDIAPI BOOL WINAPI wglRealizeLayerPalette(HDC,int,BOOL);
2893 WINGDIAPI int WINAPI wglSetLayerPaletteEntries(HDC,int,int,int,const COLORREF*);
2894 WINGDIAPI BOOL WINAPI wglShareLists(HGLRC,HGLRC);
2895 WINGDIAPI BOOL WINAPI wglSwapLayerBuffers(HDC,UINT);
2896 WINGDIAPI BOOL WINAPI wglUseFontBitmapsA(HDC,DWORD,DWORD,DWORD);
2897 WINGDIAPI BOOL WINAPI wglUseFontBitmapsW(HDC,DWORD,DWORD,DWORD);
2898 WINGDIAPI BOOL WINAPI wglUseFontOutlinesA(HDC,DWORD,DWORD,DWORD,FLOAT,FLOAT,int,LPGLYPHMETRICSFLOAT);
2899 WINGDIAPI BOOL WINAPI wglUseFontOutlinesW(HDC,DWORD,DWORD,DWORD,FLOAT,FLOAT,int,LPGLYPHMETRICSFLOAT);
2901 /* Cannot use __AW(). */
2903 typedef WCHAR BCHAR;
2908 typedef __AW(DOCINFO) DOCINFO, *LPDOCINFO;
2909 typedef __AW(LOGFONT) LOGFONT,*PLOGFONT,*LPLOGFONT;
2910 typedef __AW(TEXTMETRIC) TEXTMETRIC,*PTEXTMETRIC,*LPTEXTMETRIC;
2911 #define ICMENUMPROC __AW(ICMENUMPROC)
2912 #define FONTENUMPROC __AW(FONTENUMPROC)
2913 typedef __AW(DEVMODE) DEVMODE,*PDEVMODE,*LPDEVMODE;
2914 typedef __AW(EXTLOGFONT) EXTLOGFONT,*PEXTLOGFONT,*LPEXTLOGFONT;
2915 typedef __AW(GCP_RESULTS) GCP_RESULTS,*LPGCP_RESULTS;
2916 typedef __AW(OUTLINETEXTMETRIC) OUTLINETEXTMETRIC,*POUTLINETEXTMETRIC,*LPOUTLINETEXTMETRIC;
2917 typedef __AW(POLYTEXT) POLYTEXT,*PPOLYTEXT,*LPPOLYTEXT;
2918 typedef __AW(LOGCOLORSPACE) LOGCOLORSPACE,*LPLOGCOLORSPACE;
2919 typedef __AW(NEWTEXTMETRIC) NEWTEXTMETRIC,*PNEWTEXTMETRIC,*LPNEWTEXTMETRIC;
2920 typedef __AW(NEWTEXTMETRICEX) NEWTEXTMETRICEX;
2921 typedef __AW(ENUMLOGFONT) ENUMLOGFONT,*LPENUMLOGFONT;
2922 typedef __AW(ENUMLOGFONTEX) ENUMLOGFONTEX,*LPENUMLOGFONTEX;
2923 typedef __AW(DISPLAY_DEVICE) DISPLAY_DEVICE, *PDISPLAY_DEVICE, *LPDISPLAY_DEVICE;
2924 #define AddFontResource __AW(AddFontResource)
2926 #define CopyEnhMetaFile __AW(CopyEnhMetaFile)
2927 #define CopyMetaFile __AW(CopyMetaFile)
2928 #define CreateColorSpace __AW(CreateColorSpace)
2929 #define CreateDC __AW(CreateDC)
2930 #define CreateEnhMetaFile __AW(CreateEnhMetaFile)
2931 #define CreateFont __AW(CreateFont)
2932 #define CreateFontIndirect __AW(CreateFontIndirect)
2933 #define CreateIC __AW(CreateIC)
2934 #define CreateMetaFile __AW(CreateMetaFile)
2935 #define CreateScalableFontResource __AW(CreateScalableFontResource)
2936 #define DeviceCapabilities __AW(DeviceCapabilities)
2937 #define EnumFontFamilies __AW(EnumFontFamilies)
2938 #define EnumFontFamiliesEx __AW(EnumFontFamiliesEx)
2939 #define EnumFonts __AW(EnumFonts)
2940 #define EnumICMProfiles __AW(EnumICMProfiles)
2941 #define ExtTextOut __AW(ExtTextOut)
2942 #define GetCharABCWidthsFloat __AW(GetCharABCWidthsFloat)
2943 #define GetCharABCWidths __AW(GetCharABCWidths)
2944 #define GetCharacterPlacement __AW(GetCharacterPlacement)
2945 #define GetCharWidth32 __AW(GetCharWidth32)
2946 #define GetCharWidthFloat __AW(GetCharWidthFloat)
2947 #define GetCharWidth __AW(GetCharWidth)
2948 #define GetEnhMetaFile __AW(GetEnhMetaFile)
2949 #define GetEnhMetaFileDescription __AW(GetEnhMetaFileDescription)
2950 #define GetGlyphOutline __AW(GetGlyphOutline)
2951 #define GetICMProfile __AW(GetICMProfile)
2952 #define GetKerningPairs __AW(GetKerningPairs)
2953 #define GetLogColorSpace __AW(GetLogColorSpace)
2954 #define GetMetaFile __AW(GetMetaFile)
2955 #define GetObject __AW(GetObject)
2956 #define GetOutlineTextMetrics __AW(GetOutlineTextMetrics)
2957 #define GetTextExtentPoint __AW(GetTextExtentPoint)
2958 #define GetTextExtentExPoint __AW(GetTextExtentExPoint)
2959 #define GetTextExtentPoint32 __AW(GetTextExtentPoint32)
2960 #define GetTextFace __AW(GetTextFace)
2961 #define GetTextMetrics __AW(GetTextMetrics)
2962 #define PolyTextOut __AW(PolyTextOut)
2963 #define RemoveFontResource __AW(RemoveFontResource)
2965 #define ResetDC __AW(ResetDC)
2966 #define SetICMProfile __AW(SetICMProfile)
2967 #define StartDoc __AW(StartDoc)
2968 #define TextOut __AW(TextOut)
2969 #define UpdateICMRegKey __AW(UpdateICMRegKey)
2970 #define wglUseFontBitmaps __AW(wglUseFontBitmaps)
2971 #define wglUseFontOutlines __AW(wglUseFontOutlines)
2973 #endif /* RC_INVOKED */
2975 #if (_WIN32_WINNT >= _WIN32_WINNT_WIN98)
2978 WINGDIAPI BOOL WINAPI ColorCorrectPalette(HDC,HPALETTE,DWORD,DWORD);
2979 WINGDIAPI BOOL WINAPI ColorMatchToTarget(HDC,HDC,DWORD);
2980 WINGDIAPI BOOL WINAPI AlphaBlend(HDC,int,int,int,int,HDC,int,int,int,int,BLENDFUNCTION);
2981 WINGDIAPI BOOL WINAPI GradientFill(HDC,PTRIVERTEX,ULONG,PVOID,ULONG,ULONG);
2982 WINGDIAPI BOOL WINAPI TransparentBlt(HDC,int,int,int,int,HDC,int,int,int,int,UINT);
2983 #endif /* ! RC_INVOKED */
2985 #endif /* (_WIN32_WINNT >= _WIN32_WINNT_WIN98) */
2987 #if (_WIN32_WINNT >= _WIN32_WINNT_WIN2K)
2988 #define FR_PRIVATE 0x10
2989 #define FR_NOT_ENUM 0x20
2990 #define CLEARTYPE_QUALITY 5
2991 #define DC_PERSONALITY 25
2992 #define DC_PRINTRATE 26
2993 #define DC_PRINTRATEUNIT 27
2994 #define DC_PRINTERMEM 28
2995 #define DC_MEDIAREADY 29
2996 #define DC_STAPLE 30
2997 #define DC_PRINTRATEPPM 31
2998 #define DC_COLORDEVICE 32
3000 #define ETO_PDY 0x2000
3001 #define SHADEBLENDCAPS 120
3002 #define SB_NONE 0x00
3003 #define SB_CONST_ALPHA 0x01
3004 #define SB_PIXEL_ALPHA 0x02
3005 #define SB_PREMULT_ALPHA 0x04
3006 #define SB_GRAD_RECT 0x10
3007 #define SB_GRAD_TRI 0x20
3008 #define COLORMGMTCAPS 121
3009 #define CM_NONE 0x00
3010 #define CM_DEVICE_ICM 0x01
3011 #define CM_GAMMA_RAMP 0x02
3012 #define CM_CMYK_COLOR 0x04
3013 #define GGO_UNHINTED 256
3016 #define DMPAPER_DBL_JAPANESE_POSTCARD 69
3017 #define DMPAPER_A6 70
3018 #define DMPAPER_JENV_KAKU2 71
3019 #define DMPAPER_JENV_KAKU3 72
3020 #define DMPAPER_JENV_CHOU3 73
3021 #define DMPAPER_JENV_CHOU4 74
3022 #define DMPAPER_LETTER_ROTATED 75
3023 #define DMPAPER_A3_ROTATED 76
3024 #define DMPAPER_A4_ROTATED 77
3025 #define DMPAPER_A5_ROTATED 78
3026 #define DMPAPER_B4_JIS_ROTATED 79
3027 #define DMPAPER_B5_JIS_ROTATED 80
3028 #define DMPAPER_JAPANESE_POSTCARD_ROTATED 81
3029 #define DMPAPER_DBL_JAPANESE_POSTCARD_ROTATED 82
3030 #define DMPAPER_A6_ROTATED 83
3031 #define DMPAPER_JENV_KAKU2_ROTATED 84
3032 #define DMPAPER_JENV_KAKU3_ROTATED 85
3033 #define DMPAPER_JENV_CHOU3_ROTATED 86
3034 #define DMPAPER_JENV_CHOU4_ROTATED 87
3035 #define DMPAPER_B6_JIS 88
3036 #define DMPAPER_B6_JIS_ROTATED 89
3037 #define DMPAPER_12X11 90
3038 #define DMPAPER_JENV_YOU4 91
3039 #define DMPAPER_JENV_YOU4_ROTATED 92
3040 #define DMPAPER_P16K 93
3041 #define DMPAPER_P32K 94
3042 #define DMPAPER_P32KBIG 95
3043 #define DMPAPER_PENV_1 96
3044 #define DMPAPER_PENV_2 97
3045 #define DMPAPER_PENV_3 98
3046 #define DMPAPER_PENV_4 99
3047 #define DMPAPER_PENV_5 100
3048 #define DMPAPER_PENV_6 101
3049 #define DMPAPER_PENV_7 102
3050 #define DMPAPER_PENV_8 103
3051 #define DMPAPER_PENV_9 104
3052 #define DMPAPER_PENV_10 105
3053 #define DMPAPER_P16K_ROTATED 106
3054 #define DMPAPER_P32K_ROTATED 107
3055 #define DMPAPER_P32KBIG_ROTATED 108
3056 #define DMPAPER_PENV_1_ROTATED 109
3057 #define DMPAPER_PENV_2_ROTATED 110
3058 #define DMPAPER_PENV_3_ROTATED 111
3059 #define DMPAPER_PENV_4_ROTATED 112
3060 #define DMPAPER_PENV_5_ROTATED 113
3061 #define DMPAPER_PENV_6_ROTATED 114
3062 #define DMPAPER_PENV_7_ROTATED 115
3063 #define DMPAPER_PENV_8_ROTATED 116
3064 #define DMPAPER_PENV_9_ROTATED 117
3065 #define DMPAPER_PENV_10_ROTATED 118
3067 #define DMPAPER_LAST 118
3068 #define DM_PANNINGWIDTH 0x08000000
3069 #define DM_PANNINGHEIGHT 0x10000000
3070 #define GRADIENT_FILL_RECT_H 0x00
3071 #define GRADIENT_FILL_RECT_V 0x01
3072 #define GRADIENT_FILL_TRIANGLE 0x02
3073 #define GRADIENT_FILL_OP_FLAG 0xff
3074 #define COLORMATCHTOTARGET_EMBEDED 0x00000001
3075 #define CREATECOLORSPACE_EMBEDED 0x00000001
3076 #define SETICMPROFILE_EMBEDED 0x00000001
3077 #define NTM_NONNEGATIVE_AC 0x00010000
3078 #define NTM_PS_OPENTYPE 0x00020000
3079 #define NTM_TT_OPENTYPE 0x00040000
3080 #define NTM_MULTIPLEMASTER 0x00080000
3081 #define NTM_TYPE1 0x00100000
3082 #define NTM_DSIG 0x00200000
3083 #define GGI_MARK_NONEXISTING_GLYPHS 1
3086 typedef struct tagWCRANGE
3090 } WCRANGE, *PWCRANGE, *LPWCRANGE;
3091 typedef struct tagGLYPHSET
3095 DWORD cGlyphsSupported;
3098 } GLYPHSET, *PGLYPHSET, *LPGLYPHSET;
3099 typedef struct tagENUMLOGFONTEXDVA
3101 ENUMLOGFONTEXA elfEnumLogfontEx;
3102 DESIGNVECTOR elfDesignVector;
3103 } ENUMLOGFONTEXDVA, *PENUMLOGFONTEXDVA, *LPENUMLOGFONTEXDVA;
3104 typedef struct tagENUMLOGFONTEXDVW
3106 ENUMLOGFONTEXW elfEnumLogfontEx;
3107 DESIGNVECTOR elfDesignVector;
3108 } ENUMLOGFONTEXDVW, *PENUMLOGFONTEXDVW, *LPENUMLOGFONTEXDVW;
3109 WINGDIAPI HANDLE WINAPI AddFontMemResourceEx(PVOID,DWORD,PVOID,DWORD *);
3110 WINGDIAPI int WINAPI AddFontResourceExA(LPCSTR,DWORD,PVOID);
3111 WINGDIAPI int WINAPI AddFontResourceExW(LPCWSTR,DWORD,PVOID);
3112 WINGDIAPI COLORREF WINAPI GetDCBrushColor(HDC);
3113 WINGDIAPI COLORREF WINAPI GetDCPenColor(HDC);
3114 WINGDIAPI BOOL WINAPI GetTextExtentExPointI(HDC, LPWORD, int, int, LPINT, LPINT, LPSIZE);
3115 WINGDIAPI BOOL WINAPI RemoveFontMemResourceEx(HANDLE);
3116 WINGDIAPI BOOL WINAPI RemoveFontResourceExA(LPCSTR,DWORD,PVOID);
3117 WINGDIAPI BOOL WINAPI RemoveFontResourceExW(LPCWSTR,DWORD,PVOID);
3118 WINGDIAPI COLORREF WINAPI SetDCBrushColor(HDC,COLORREF);
3119 WINGDIAPI COLORREF WINAPI SetDCPenColor(HDC,COLORREF);
3120 WINGDIAPI DWORD WINAPI GetFontUnicodeRanges(HDC,LPGLYPHSET);
3121 WINGDIAPI DWORD WINAPI GetGlyphIndicesA(HDC,LPCSTR,int,LPWORD,DWORD);
3122 WINGDIAPI DWORD WINAPI GetGlyphIndicesW(HDC,LPCWSTR,int,LPWORD,DWORD);
3123 WINGDIAPI DWORD WINAPI GetLayout(HDC);
3124 WINGDIAPI DWORD WINAPI SetLayout(HDC, DWORD);
3125 typedef __AW(ENUMLOGFONTEXDV) ENUMLOGFONTEXDV;
3126 typedef __AW(PENUMLOGFONTEXDV) PENUMLOGFONTEXDV;
3127 typedef __AW(LPENUMLOGFONTEXDV) LPENUMLOGFONTEXDV;
3128 #define AddFontResourceEx __AW(AddFontResourceEx)
3129 #define RemoveFontResourceEx __AW(RemoveFontResourceEx)
3130 #define GetGlyphIndices __AW(GetGlyphIndices)
3131 #endif /* ! RC_INVOKED */
3133 #endif /* (_WIN32_WINNT >= _WIN32_WINNT_WIN2K) */
3135 #if (_WIN32_WINNT >= _WIN32_WINNT_WINXP)
3136 #define DC_MEDIATYPENAMES 34
3137 #define DC_MEDIATYPES 35
3138 #define DM_DISPLAYFIXEDOUTPUT 0x20000000
3139 #define DM_DISPLAYORIENTATION 0x00000080
3140 #define DMDO_DEFAULT 0x00000000
3141 #define DMDO_90 0x00000001
3142 #define DMDO_180 0x00000002
3143 #define DMDO_270 0x00000003
3144 #define DMDFO_DEFAULT 0x00000000
3145 #define DMDFO_STRETCH 0x00000001
3146 #define DMDFO_CENTER 0x00000002
3147 #endif /* (_WIN32_WINNT >= _WIN32_WINNT_WINXP) */