'' '' '' wingdi -- header translated with help of SWIG FB wrapper '' '' NOTICE: This file is part of the FreeBASIC Compiler package and can't '' be included in other distributions without authorization. '' '' #ifndef __win_wingdi_bi__ #define __win_wingdi_bi__ #define BI_RGB 0 #define BI_RLE8 1 #define BI_RLE4 2 #define BI_BITFIELDS 3 #define BI_JPEG 4 #define BI_PNG 5 #define LF_FACESIZE 32 #define LF_FULLFACESIZE 64 #define CA_NEGATIVE 1 #define CA_LOG_FILTER 2 #define ILLUMINANT_DEVICE_DEFAULT 0 #define ILLUMINANT_A 1 #define ILLUMINANT_B 2 #define ILLUMINANT_C 3 #define ILLUMINANT_D50 4 #define ILLUMINANT_D55 5 #define ILLUMINANT_D65 6 #define ILLUMINANT_D75 7 #define ILLUMINANT_F2 8 #define ILLUMINANT_MAX_INDEX ILLUMINANT_F2 #define ILLUMINANT_TUNGSTEN ILLUMINANT_A #define ILLUMINANT_DAYLIGHT ILLUMINANT_C #define ILLUMINANT_FLUORESCENT ILLUMINANT_F2 #define ILLUMINANT_NTSC ILLUMINANT_C #define RGB_GAMMA_MIN 2500 #define RGB_GAMMA_MAX 65000 #define REFERENCE_WHITE_MIN 6000 #define REFERENCE_WHITE_MAX 10000 #define REFERENCE_BLACK_MIN 0 #define REFERENCE_BLACK_MAX 4000 #define COLOR_ADJ_MIN (-100) #define COLOR_ADJ_MAX 100 #define CCHDEVICENAME 32 #define CCHFORMNAME 32 #define DI_COMPAT 4 #define DI_DEFAULTSIZE 8 #define DI_IMAGE 2 #define DI_MASK 1 #define DI_NORMAL 3 #define DI_APPBANDING 1 #define EMR_HEADER 1 #define EMR_POLYBEZIER 2 #define EMR_POLYGON 3 #define EMR_POLYLINE 4 #define EMR_POLYBEZIERTO 5 #define EMR_POLYLINETO 6 #define EMR_POLYPOLYLINE 7 #define EMR_POLYPOLYGON 8 #define EMR_SETWINDOWEXTEX 9 #define EMR_SETWINDOWORGEX 10 #define EMR_SETVIEWPORTEXTEX 11 #define EMR_SETVIEWPORTORGEX 12 #define EMR_SETBRUSHORGEX 13 #define EMR_EOF 14 #define EMR_SETPIXELV 15 #define EMR_SETMAPPERFLAGS 16 #define EMR_SETMAPMODE 17 #define EMR_SETBKMODE 18 #define EMR_SETPOLYFILLMODE 19 #define EMR_SETROP2 20 #define EMR_SETSTRETCHBLTMODE 21 #define EMR_SETTEXTALIGN 22 #define EMR_SETCOLORADJUSTMENT 23 #define EMR_SETTEXTCOLOR 24 #define EMR_SETBKCOLOR 25 #define EMR_OFFSETCLIPRGN 26 #define EMR_MOVETOEX 27 #define EMR_SETMETARGN 28 #define EMR_EXCLUDECLIPRECT 29 #define EMR_INTERSECTCLIPRECT 30 #define EMR_SCALEVIEWPORTEXTEX 31 #define EMR_SCALEWINDOWEXTEX 32 #define EMR_SAVEDC 33 #define EMR_RESTOREDC 34 #define EMR_SETWORLDTRANSFORM 35 #define EMR_MODIFYWORLDTRANSFORM 36 #define EMR_SELECTOBJECT 37 #define EMR_CREATEPEN 38 #define EMR_CREATEBRUSHINDIRECT 39 #define EMR_DELETEOBJECT 40 #define EMR_ANGLEARC 41 #define EMR_ELLIPSE 42 #define EMR_RECTANGLE 43 #define EMR_ROUNDRECT 44 #define EMR_ARC 45 #define EMR_CHORD 46 #define EMR_PIE 47 #define EMR_SELECTPALETTE 48 #define EMR_CREATEPALETTE 49 #define EMR_SETPALETTEENTRIES 50 #define EMR_RESIZEPALETTE 51 #define EMR_REALIZEPALETTE 52 #define EMR_EXTFLOODFILL 53 #define EMR_LINETO 54 #define EMR_ARCTO 55 #define EMR_POLYDRAW 56 #define EMR_SETARCDIRECTION 57 #define EMR_SETMITERLIMIT 58 #define EMR_BEGINPATH 59 #define EMR_ENDPATH 60 #define EMR_CLOSEFIGURE 61 #define EMR_FILLPATH 62 #define EMR_STROKEANDFILLPATH 63 #define EMR_STROKEPATH 64 #define EMR_FLATTENPATH 65 #define EMR_WIDENPATH 66 #define EMR_SELECTCLIPPATH 67 #define EMR_ABORTPATH 68 #define EMR_GDICOMMENT 70 #define EMR_FILLRGN 71 #define EMR_FRAMERGN 72 #define EMR_INVERTRGN 73 #define EMR_PAINTRGN 74 #define EMR_EXTSELECTCLIPRGN 75 #define EMR_BITBLT 76 #define EMR_STRETCHBLT 77 #define EMR_MASKBLT 78 #define EMR_PLGBLT 79 #define EMR_SETDIBITSTODEVICE 80 #define EMR_STRETCHDIBITS 81 #define EMR_EXTCREATEFONTINDIRECTW 82 #define EMR_EXTTEXTOUTA 83 #define EMR_EXTTEXTOUTW 84 #define EMR_POLYBEZIER16 85 #define EMR_POLYGON16 86 #define EMR_POLYLINE16 87 #define EMR_POLYBEZIERTO16 88 #define EMR_POLYLINETO16 89 #define EMR_POLYPOLYLINE16 90 #define EMR_POLYPOLYGON16 91 #define EMR_POLYDRAW16 92 #define EMR_CREATEMONOBRUSH 93 #define EMR_CREATEDIBPATTERNBRUSHPT 94 #define EMR_EXTCREATEPEN 95 #define EMR_POLYTEXTOUTA 96 #define EMR_POLYTEXTOUTW 97 #define EMR_SETICMMODE 98 #define EMR_CREATECOLORSPACE 99 #define EMR_SETCOLORSPACE 100 #define EMR_DELETECOLORSPACE 101 #define EMR_GLSRECORD 102 #define EMR_GLSBOUNDEDRECORD 103 #define EMR_PIXELFORMAT 104 #define ENHMETA_SIGNATURE 1179469088 #define EPS_SIGNATURE &h46535045 #if (_WIN32_WINNT >= &h0500) #define FR_PRIVATE &h10 #define FR_NOT_ENUM &h20 #endif #define META_SETBKCOLOR &h201 #define META_SETBKMODE &h102 #define META_SETMAPMODE &h103 #define META_SETROP2 &h104 #define META_SETRELABS &h105 #define META_SETPOLYFILLMODE &h106 #define META_SETSTRETCHBLTMODE &h107 #define META_SETTEXTCHAREXTRA &h108 #define META_SETTEXTCOLOR &h209 #define META_SETTEXTJUSTIFICATION &h20A #define META_SETWINDOWORG &h20B #define META_SETWINDOWEXT &h20C #define META_SETVIEWPORTORG &h20D #define META_SETVIEWPORTEXT &h20E #define META_OFFSETWINDOWORG &h20F #define META_SCALEWINDOWEXT &h410 #define META_OFFSETVIEWPORTORG &h211 #define META_SCALEVIEWPORTEXT &h412 #define META_LINETO &h213 #define META_MOVETO &h214 #define META_EXCLUDECLIPRECT &h415 #define META_INTERSECTCLIPRECT &h416 #define META_ARC &h817 #define META_ELLIPSE &h418 #define META_FLOODFILL &h419 #define META_PIE &h81A #define META_RECTANGLE &h41B #define META_ROUNDRECT &h61C #define META_PATBLT &h61D #define META_SAVEDC &h1E #define META_SETPIXEL &h41F #define META_OFFSETCLIPRGN &h220 #define META_TEXTOUT &h521 #define META_BITBLT &h922 #define META_STRETCHBLT &hB23 #define META_POLYGON &h324 #define META_POLYLINE &h325 #define META_ESCAPE &h626 #define META_RESTOREDC &h127 #define META_FILLREGION &h228 #define META_FRAMEREGION &h429 #define META_INVERTREGION &h12A #define META_PAINTREGION &h12B #define META_SELECTCLIPREGION &h12C #define META_SELECTOBJECT &h12D #define META_SETTEXTALIGN &h12E #define META_CHORD &h830 #define META_SETMAPPERFLAGS &h231 #define META_EXTTEXTOUT &ha32 #define META_SETDIBTODEV &hd33 #define META_SELECTPALETTE &h234 #define META_REALIZEPALETTE &h35 #define META_ANIMATEPALETTE &h436 #define META_SETPALENTRIES &h37 #define META_POLYPOLYGON &h538 #define META_RESIZEPALETTE &h139 #define META_DIBBITBLT &h940 #define META_DIBSTRETCHBLT &hb41 #define META_DIBCREATEPATTERNBRUSH &h142 #define META_STRETCHDIB &hf43 #define META_EXTFLOODFILL &h548 #define META_DELETEOBJECT &h1f0 #define META_CREATEPALETTE &hf7 #define META_CREATEPATTERNBRUSH &h1F9 #define META_CREATEPENINDIRECT &h2FA #define META_CREATEFONTINDIRECT &h2FB #define META_CREATEBRUSHINDIRECT &h2FC #define META_CREATEREGION &h6FF #define PT_MOVETO 6 #define PT_LINETO 2 #define PT_BEZIERTO 4 #define PT_CLOSEFIGURE 1 #define ELF_VENDOR_SIZE 4 #define ELF_VERSION 0 #define ELF_CULTURE_LATIN 0 #define PFD_TYPE_RGBA 0 #define PFD_TYPE_COLORINDEX 1 #define PFD_MAIN_PLANE 0 #define PFD_OVERLAY_PLANE 1 #define PFD_UNDERLAY_PLANE (-1) #define PFD_DOUBLEBUFFER 1 #define PFD_STEREO 2 #define PFD_DRAW_TO_WINDOW 4 #define PFD_DRAW_TO_BITMAP 8 #define PFD_SUPPORT_GDI 16 #define PFD_SUPPORT_OPENGL 32 #define PFD_GENERIC_FORMAT 64 #define PFD_NEED_PALETTE 128 #define PFD_NEED_SYSTEM_PALETTE &h00000100 #define PFD_SWAP_EXCHANGE &h00000200 #define PFD_SWAP_COPY &h00000400 #define PFD_SWAP_LAYER_BUFFERS &h00000800 #define PFD_GENERIC_ACCELERATED &h00001000 #define PFD_DEPTH_DONTCARE &h20000000 #define PFD_DOUBLEBUFFER_DONTCARE &h40000000 #define PFD_STEREO_DONTCARE &h80000000 #define SP_ERROR (-1) #define SP_OUTOFDISK (-4) #define SP_OUTOFMEMORY (-5) #define SP_USERABORT (-3) #define SP_APPABORT (-2) #define BLACKNESS &h42 #define NOTSRCERASE &h1100A6 #define NOTSRCCOPY &h330008 #define SRCERASE &h440328 #define DSTINVERT &h550009 #define PATINVERT &h5A0049 #define SRCINVERT &h660046 #define SRCAND &h8800C6 #define MERGEPAINT &hBB0226 #define MERGECOPY &hC000CA #define SRCCOPY &hCC0020 #define SRCPAINT &hEE0086 #define PATCOPY &hF00021 #define PATPAINT &hFB0A09 #define WHITENESS &hFF0062 #define CAPTUREBLT &h40000000 #define NOMIRRORBITMAP &h80000000 #define R2_BLACK 1 #define R2_COPYPEN 13 #define R2_MASKNOTPEN 3 #define R2_MASKPEN 9 #define R2_MASKPENNOT 5 #define R2_MERGENOTPEN 12 #define R2_MERGEPEN 15 #define R2_MERGEPENNOT 14 #define R2_NOP 11 #define R2_NOT 6 #define R2_NOTCOPYPEN 4 #define R2_NOTMASKPEN 8 #define R2_NOTMERGEPEN 2 #define R2_NOTXORPEN 10 #define R2_WHITE 16 #define R2_XORPEN 7 #define CM_OUT_OF_GAMUT 255 #define CM_IN_GAMUT 0 #define RGN_AND 1 #define RGN_COPY 5 #define RGN_DIFF 4 #define RGN_OR 2 #define RGN_XOR 3 #define NULLREGION 1 #define SIMPLEREGION 2 #define COMPLEXREGION 3 #define ERROR_ 0 #define CBM_INIT 4 #define DIB_PAL_COLORS 1 #define DIB_RGB_COLORS 0 #define FW_DONTCARE 0 #define FW_THIN 100 #define FW_EXTRALIGHT 200 #define FW_ULTRALIGHT FW_EXTRALIGHT #define FW_LIGHT 300 #define FW_NORMAL 400 #define FW_REGULAR 400 #define FW_MEDIUM 500 #define FW_SEMIBOLD 600 #define FW_DEMIBOLD FW_SEMIBOLD #define FW_BOLD 700 #define FW_EXTRABOLD 800 #define FW_ULTRABOLD FW_EXTRABOLD #define FW_HEAVY 900 #define FW_BLACK FW_HEAVY #define ANSI_CHARSET 0 #define DEFAULT_CHARSET 1 #define SYMBOL_CHARSET 2 #define SHIFTJIS_CHARSET 128 #define HANGEUL_CHARSET 129 #define HANGUL_CHARSET 129 #define GB2312_CHARSET 134 #define CHINESEBIG5_CHARSET 136 #define GREEK_CHARSET 161 #define TURKISH_CHARSET 162 #define HEBREW_CHARSET 177 #define ARABIC_CHARSET 178 #define BALTIC_CHARSET 186 #define RUSSIAN_CHARSET 204 #define THAI_CHARSET 222 #define EASTEUROPE_CHARSET 238 #define OEM_CHARSET 255 #define JOHAB_CHARSET 130 #define VIETNAMESE_CHARSET 163 #define MAC_CHARSET 77 #define OUT_DEFAULT_PRECIS 0 #define OUT_STRING_PRECIS 1 #define OUT_CHARACTER_PRECIS 2 #define OUT_STROKE_PRECIS 3 #define OUT_TT_PRECIS 4 #define OUT_DEVICE_PRECIS 5 #define OUT_RASTER_PRECIS 6 #define OUT_TT_ONLY_PRECIS 7 #define OUT_OUTLINE_PRECIS 8 #define OUT_PS_ONLY_PRECIS 10 #define CLIP_DEFAULT_PRECIS 0 #define CLIP_CHARACTER_PRECIS 1 #define CLIP_STROKE_PRECIS 2 #define CLIP_MASK 15 #define CLIP_LH_ANGLES 16 #define CLIP_TT_ALWAYS 32 #define CLIP_EMBEDDED 128 #define DEFAULT_QUALITY 0 #define DRAFT_QUALITY 1 #define PROOF_QUALITY 2 #define NONANTIALIASED_QUALITY 3 #define ANTIALIASED_QUALITY 4 #if _WIN32_WINNT >= &h0500 #define CLEARTYPE_QUALITY 5 #endif #define DEFAULT_PITCH 0 #define FIXED_PITCH 1 #define VARIABLE_PITCH 2 #define MONO_FONT 8 #define FF_DECORATIVE 80 #define FF_DONTCARE 0 #define FF_MODERN 48 #define FF_ROMAN 16 #define FF_SCRIPT 64 #define FF_SWISS 32 #define PANOSE_COUNT 10 #define PAN_FAMILYTYPE_INDEX 0 #define PAN_SERIFSTYLE_INDEX 1 #define PAN_WEIGHT_INDEX 2 #define PAN_PROPORTION_INDEX 3 #define PAN_CONTRAST_INDEX 4 #define PAN_STROKEVARIATION_INDEX 5 #define PAN_ARMSTYLE_INDEX 6 #define PAN_LETTERFORM_INDEX 7 #define PAN_MIDLINE_INDEX 8 #define PAN_XHEIGHT_INDEX 9 #define PAN_CULTURE_LATIN 0 #define PAN_ANY 0 #define PAN_NO_FIT 1 #define PAN_FAMILY_TEXT_DISPLAY 2 #define PAN_FAMILY_SCRIPT 3 #define PAN_FAMILY_DECORATIVE 4 #define PAN_FAMILY_PICTORIAL 5 #define PAN_SERIF_COVE 2 #define PAN_SERIF_OBTUSE_COVE 3 #define PAN_SERIF_SQUARE_COVE 4 #define PAN_SERIF_OBTUSE_SQUARE_COVE 5 #define PAN_SERIF_SQUARE 6 #define PAN_SERIF_THIN 7 #define PAN_SERIF_BONE 8 #define PAN_SERIF_EXAGGERATED 9 #define PAN_SERIF_TRIANGLE 10 #define PAN_SERIF_NORMAL_SANS 11 #define PAN_SERIF_OBTUSE_SANS 12 #define PAN_SERIF_PERP_SANS 13 #define PAN_SERIF_FLARED 14 #define PAN_SERIF_ROUNDED 15 #define PAN_WEIGHT_VERY_LIGHT 2 #define PAN_WEIGHT_LIGHT 3 #define PAN_WEIGHT_THIN 4 #define PAN_WEIGHT_BOOK 5 #define PAN_WEIGHT_MEDIUM 6 #define PAN_WEIGHT_DEMI 7 #define PAN_WEIGHT_BOLD 8 #define PAN_WEIGHT_HEAVY 9 #define PAN_WEIGHT_BLACK 10 #define PAN_WEIGHT_NORD 11 #define PAN_PROP_OLD_STYLE 2 #define PAN_PROP_MODERN 3 #define PAN_PROP_EVEN_WIDTH 4 #define PAN_PROP_EXPANDED 5 #define PAN_PROP_CONDENSED 6 #define PAN_PROP_VERY_EXPANDED 7 #define PAN_PROP_VERY_CONDENSED 8 #define PAN_PROP_MONOSPACED 9 #define PAN_CONTRAST_NONE 2 #define PAN_CONTRAST_VERY_LOW 3 #define PAN_CONTRAST_LOW 4 #define PAN_CONTRAST_MEDIUM_LOW 5 #define PAN_CONTRAST_MEDIUM 6 #define PAN_CONTRAST_MEDIUM_HIGH 7 #define PAN_CONTRAST_HIGH 8 #define PAN_CONTRAST_VERY_HIGH 9 #define PAN_STROKE_GRADUAL_DIAG 2 #define PAN_STROKE_GRADUAL_TRAN 3 #define PAN_STROKE_GRADUAL_VERT 4 #define PAN_STROKE_GRADUAL_HORZ 5 #define PAN_STROKE_RAPID_VERT 6 #define PAN_STROKE_RAPID_HORZ 7 #define PAN_STROKE_INSTANT_VERT 8 #define PAN_STRAIGHT_ARMS_HORZ 2 #define PAN_STRAIGHT_ARMS_WEDGE 3 #define PAN_STRAIGHT_ARMS_VERT 4 #define PAN_STRAIGHT_ARMS_SINGLE_SERIF 5 #define PAN_STRAIGHT_ARMS_DOUBLE_SERIF 6 #define PAN_BENT_ARMS_HORZ 7 #define PAN_BENT_ARMS_WEDGE 8 #define PAN_BENT_ARMS_VERT 9 #define PAN_BENT_ARMS_SINGLE_SERIF 10 #define PAN_BENT_ARMS_DOUBLE_SERIF 11 #define PAN_LETT_NORMAL_CONTACT 2 #define PAN_LETT_NORMAL_WEIGHTED 3 #define PAN_LETT_NORMAL_BOXED 4 #define PAN_LETT_NORMAL_FLATTENED 5 #define PAN_LETT_NORMAL_ROUNDED 6 #define PAN_LETT_NORMAL_OFF_CENTER 7 #define PAN_LETT_NORMAL_SQUARE 8 #define PAN_LETT_OBLIQUE_CONTACT 9 #define PAN_LETT_OBLIQUE_WEIGHTED 10 #define PAN_LETT_OBLIQUE_BOXED 11 #define PAN_LETT_OBLIQUE_FLATTENED 12 #define PAN_LETT_OBLIQUE_ROUNDED 13 #define PAN_LETT_OBLIQUE_OFF_CENTER 14 #define PAN_LETT_OBLIQUE_SQUARE 15 #define PAN_MIDLINE_STANDARD_TRIMMED 2 #define PAN_MIDLINE_STANDARD_POINTED 3 #define PAN_MIDLINE_STANDARD_SERIFED 4 #define PAN_MIDLINE_HIGH_TRIMMED 5 #define PAN_MIDLINE_HIGH_POINTED 6 #define PAN_MIDLINE_HIGH_SERIFED 7 #define PAN_MIDLINE_CONSTANT_TRIMMED 8 #define PAN_MIDLINE_CONSTANT_POINTED 9 #define PAN_MIDLINE_CONSTANT_SERIFED 10 #define PAN_MIDLINE_LOW_TRIMMED 11 #define PAN_MIDLINE_LOW_POINTED 12 #define PAN_MIDLINE_LOW_SERIFED 13 #define PAN_XHEIGHT_CONSTANT_SMALL 2 #define PAN_XHEIGHT_CONSTANT_STD 3 #define PAN_XHEIGHT_CONSTANT_LARGE 4 #define PAN_XHEIGHT_DUCKING_SMALL 5 #define PAN_XHEIGHT_DUCKING_STD 6 #define PAN_XHEIGHT_DUCKING_LARGE 7 #define FS_LATIN1 1 #define FS_LATIN2 2 #define FS_CYRILLIC 4 #define FS_GREEK 8 #define FS_TURKISH 16 #define FS_HEBREW 32 #define FS_ARABIC 64 #define FS_BALTIC 128 #define FS_THAI &h10000 #define FS_JISJAPAN &h20000 #define FS_CHINESESIMP &h40000 #define FS_WANSUNG &h80000 #define FS_CHINESETRAD &h100000 #define FS_JOHAB &h200000 #define FS_SYMBOL &h80000000 #define HS_BDIAGONAL 3 #define HS_CROSS 4 #define HS_DIAGCROSS 5 #define HS_FDIAGONAL 2 #define HS_HORIZONTAL 0 #define HS_VERTICAL 1 #define PS_GEOMETRIC 65536 #define PS_COSMETIC 0 #define PS_ALTERNATE 8 #define PS_SOLID 0 #define PS_DASH 1 #define PS_DOT 2 #define PS_DASHDOT 3 #define PS_DASHDOTDOT 4 #define PS_NULL 5 #define PS_USERSTYLE 7 #define PS_INSIDEFRAME 6 #define PS_ENDCAP_ROUND 0 #define PS_ENDCAP_SQUARE 256 #define PS_ENDCAP_FLAT 512 #define PS_JOIN_BEVEL 4096 #define PS_JOIN_MITER 8192 #define PS_JOIN_ROUND 0 #define PS_STYLE_MASK 15 #define PS_ENDCAP_MASK 3840 #define PS_TYPE_MASK 983040 #define ALTERNATE 1 #define WINDING 2 #define DC_BINNAMES 12 #define DC_BINS 6 #define DC_COPIES 18 #define DC_DRIVER 11 #define DC_DATATYPE_PRODUCED 21 #define DC_DUPLEX 7 #define DC_EMF_COMPLIANT 20 #define DC_ENUMRESOLUTIONS 13 #define DC_EXTRA 9 #define DC_FIELDS 1 #define DC_FILEDEPENDENCIES 14 #define DC_MAXEXTENT 5 #define DC_MINEXTENT 4 #define DC_ORIENTATION 17 #define DC_PAPERNAMES 16 #define DC_PAPERS 2 #define DC_PAPERSIZE 3 #define DC_SIZE 8 #define DC_TRUETYPE 15 #define DCTT_BITMAP 1 #define DCTT_DOWNLOAD 2 #define DCTT_SUBDEV 4 #define DCTT_DOWNLOAD_OUTLINE 8 #define DC_VERSION 10 #define DC_BINADJUST 19 #define DC_EMF_COMPLIANT 20 #define DC_DATATYPE_PRODUCED 21 #define DC_MANUFACTURER 23 #define DC_MODEL 24 #if (WINVER >= &h0500) #define DC_PERSONALITY 25 #define DC_PRINTRATE 26 #define DC_PRINTRATEUNIT 27 #define DC_PRINTERMEM 28 #define DC_MEDIAREADY 29 #define DC_STAPLE 30 #define DC_PRINTRATEPPM 31 #define DC_COLORDEVICE 32 #define DC_NUP 33 #endif #if (WINVER >= &h0501) #define DC_MEDIATYPENAMES 34 #define DC_MEDIATYPES 35 #endif #define DCBA_FACEUPNONE 0 #define DCBA_FACEUPCENTER 1 #define DCBA_FACEUPLEFT 2 #define DCBA_FACEUPRIGHT 3 #define DCBA_FACEDOWNNONE 256 #define DCBA_FACEDOWNCENTER 257 #define DCBA_FACEDOWNLEFT 258 #define DCBA_FACEDOWNRIGHT 259 #define FLOODFILLBORDER 0 #define FLOODFILLSURFACE 1 #define ETO_CLIPPED 4 #define ETO_GLYPH_INDEX 16 #define ETO_OPAQUE 2 #define ETO_NUMERICSLATIN &h0800 #define ETO_NUMERICSLOCAL &h0400 #define ETO_RTLREADING &h0080 #if (_WIN32_WINNT >= &h0400) #define ETO_IGNORELANGUAGE &h1000 #endif #if (_WIN32_WINNT >= &h0500) #define ETO_PDY &h2000 #endif #define GDICOMMENT_WINDOWS_METAFILE (-2147483647) #define GDICOMMENT_BEGINGROUP 2 #define GDICOMMENT_ENDGROUP 3 #define GDICOMMENT_MULTIFORMATS 1073741828 #define GDICOMMENT_IDENTIFIER 1128875079 #define AD_COUNTERCLOCKWISE 1 #define AD_CLOCKWISE 2 #define RDH_RECTANGLES 1 #define GCPCLASS_LATIN 1 #define GCPCLASS_HEBREW 2 #define GCPCLASS_ARABIC 2 #define GCPCLASS_NEUTRAL 3 #define GCPCLASS_LOCALNUMBER 4 #define GCPCLASS_LATINNUMBER 5 #define GCPCLASS_LATINNUMERICTERMINATOR 6 #define GCPCLASS_LATINNUMERICSEPARATOR 7 #define GCPCLASS_NUMERICSEPARATOR 8 #define GCPCLASS_PREBOUNDLTR 128 #define GCPCLASS_PREBOUNDRTL 64 #define GCPCLASS_POSTBOUNDLTR 32 #define GCPCLASS_POSTBOUNDRTL 16 #define GCPGLYPH_LINKBEFORE &h8000 #define GCPGLYPH_LINKAFTER &h4000 #define DCB_DISABLE 8 #define DCB_ENABLE 4 #define DCB_RESET 1 #define DCB_SET 3 #define DCB_ACCUMULATE 2 #define DCB_DIRTY 2 #define OBJ_BRUSH 2 #define OBJ_PEN 1 #define OBJ_PAL 5 #define OBJ_FONT 6 #define OBJ_BITMAP 7 #define OBJ_EXTPEN 11 #define OBJ_REGION 8 #define OBJ_DC 3 #define OBJ_MEMDC 10 #define OBJ_METAFILE 9 #define OBJ_METADC 4 #define OBJ_ENHMETAFILE 13 #define OBJ_ENHMETADC 12 #define DRIVERVERSION 0 #define TECHNOLOGY 2 #define DT_PLOTTER 0 #define DT_RASDISPLAY 1 #define DT_RASPRINTER 2 #define DT_RASCAMERA 3 #define DT_CHARSTREAM 4 #define DT_METAFILE 5 #define DT_DISPFILE 6 #define HORZSIZE 4 #define VERTSIZE 6 #define HORZRES 8 #define VERTRES 10 #define LOGPIXELSX 88 #define LOGPIXELSY 90 #define BITSPIXEL_ 12 #define PLANES_ 14 #define NUMBRUSHES 16 #define NUMPENS 18 #define NUMFONTS 22 #define NUMCOLORS 24 #define NUMMARKERS 20 #define ASPECTX 40 #define ASPECTY 42 #define ASPECTXY 44 #define PDEVICESIZE 26 #define CLIPCAPS 36 #define SIZEPALETTE 104 #define NUMRESERVED 106 #define COLORRES 108 #define PHYSICALWIDTH 110 #define PHYSICALHEIGHT 111 #define PHYSICALOFFSETX 112 #define PHYSICALOFFSETY 113 #define SCALINGFACTORX 114 #define SCALINGFACTORY 115 #define VREFRESH 116 #define DESKTOPHORZRES 118 #define DESKTOPVERTRES 117 #define BLTALIGNMENT 119 #if(WINVER >= &h0500) #define SHADEBLENDCAPS 120 #define SB_NONE &h00 #define SB_CONST_ALPHA &h01 #define SB_PIXEL_ALPHA &h02 #define SB_PREMULT_ALPHA &h04 #define SB_GRAD_RECT &h10 #define SB_GRAD_TRI &h20 #define COLORMGMTCAPS 121 #define CM_NONE &h00 #define CM_DEVICE_ICM &h01 #define CM_GAMMA_RAMP &h02 #define CM_CMYK_COLOR &h04 #endif #define RASTERCAPS 38 #define RC_BANDING 2 #define RC_BITBLT 1 #define RC_BITMAP64 8 #define RC_DI_BITMAP 128 #define RC_DIBTODEV 512 #define RC_FLOODFILL 4096 #define RC_GDI20_OUTPUT 16 #define RC_PALETTE 256 #define RC_SCALING 4 #define RC_STRETCHBLT 2048 #define RC_STRETCHDIB 8192 #define RC_DEVBITS &h8000 #define RC_OP_DX_OUTPUT &h4000 #define CURVECAPS 28 #define CC_NONE 0 #define CC_CIRCLES 1 #define CC_PIE 2 #define CC_CHORD 4 #define CC_ELLIPSES 8 #define CC_WIDE 16 #define CC_STYLED 32 #define CC_WIDESTYLED 64 #define CC_INTERIORS 128 #define CC_ROUNDRECT 256 #define LINECAPS 30 #define LC_NONE 0 #define LC_POLYLINE 2 #define LC_MARKER 4 #define LC_POLYMARKER 8 #define LC_WIDE 16 #define LC_STYLED 32 #define LC_WIDESTYLED 64 #define LC_INTERIORS 128 #define POLYGONALCAPS 32 #define RC_BANDING 2 #define RC_BIGFONT 1024 #define RC_BITBLT 1 #define RC_BITMAP64 8 #define RC_DEVBITS &h8000 #define RC_DI_BITMAP 128 #define RC_GDI20_OUTPUT 16 #define RC_GDI20_STATE 32 #define RC_NONE 0 #define RC_OP_DX_OUTPUT &h4000 #define RC_PALETTE 256 #define RC_SAVEBITMAP 64 #define RC_SCALING 4 #define PC_NONE 0 #define PC_POLYGON 1 #define PC_POLYPOLYGON 256 #define PC_PATHS 512 #define PC_RECTANGLE 2 #define PC_WINDPOLYGON 4 #define PC_SCANLINE 8 #define PC_TRAPEZOID 4 #define PC_WIDE 16 #define PC_STYLED 32 #define PC_WIDESTYLED 64 #define PC_INTERIORS 128 #define PC_PATHS 512 #define TEXTCAPS 34 #define TC_OP_CHARACTER 1 #define TC_OP_STROKE 2 #define TC_CP_STROKE 4 #define TC_CR_90 8 #define TC_CR_ANY 16 #define TC_SF_X_YINDEP 32 #define TC_SA_DOUBLE 64 #define TC_SA_INTEGER 128 #define TC_SA_CONTIN 256 #define TC_EA_DOUBLE 512 #define TC_IA_ABLE 1024 #define TC_UA_ABLE 2048 #define TC_SO_ABLE 4096 #define TC_RA_ABLE 8192 #define TC_VA_ABLE 16384 #define TC_RESERVED 32768 #define TC_SCROLLBLT 65536 #define GCP_DBCS 1 #define GCP_ERROR &h8000 #define GCP_CLASSIN &h80000 #define GCP_DIACRITIC 256 #define GCP_DISPLAYZWG &h400000 #define GCP_GLYPHSHAPE 16 #define GCP_JUSTIFY &h10000 #define GCP_JUSTIFYIN &h200000 #define GCP_KASHIDA 1024 #define GCP_LIGATE 32 #define GCP_MAXEXTENT &h100000 #define GCP_NEUTRALOVERRIDE &h2000000 #define GCP_NUMERICOVERRIDE &h1000000 #define GCP_NUMERICSLATIN &h4000000 #define GCP_NUMERICSLOCAL &h8000000 #define GCP_REORDER 2 #define GCP_SYMSWAPOFF &h800000 #define GCP_USEKERNING 8 #define FLI_GLYPHS &h40000 #define FLI_MASK &h103b #define GGO_METRICS 0 #define GGO_BITMAP 1 #define GGO_NATIVE 2 #define GGO_BEZIER 3 #define GGO_GRAY2_BITMAP 4 #define GGO_GRAY4_BITMAP 5 #define GGO_GRAY8_BITMAP 6 #define GGO_GLYPH_INDEX 128 #if (WINVER >= &h0500) #define GGO_UNHINTED 256 #endif #define GM_COMPATIBLE 1 #define GM_ADVANCED 2 #define MM_ANISOTROPIC 8 #define MM_HIENGLISH 5 #define MM_HIMETRIC 3 #define MM_ISOTROPIC 7 #define MM_LOENGLISH 4 #define MM_LOMETRIC 2 #define MM_TEXT 1 #define MM_TWIPS 6 #define MM_MAX_FIXEDSCALE MM_TWIPS #define ABSOLUTE 1 #define RELATIVE 2 #define PC_EXPLICIT 2 #define PC_NOCOLLAPSE 4 #define PC_RESERVED 1 #define CLR_NONE &hffffffff #define CLR_INVALID CLR_NONE #define CLR_DEFAULT &hff000000 #define PT_MOVETO 6 #define PT_LINETO 2 #define PT_BEZIERTO 4 #define PT_CLOSEFIGURE 1 #define TT_AVAILABLE 1 #define TT_ENABLED 2 #define BLACK_BRUSH 4 #define DKGRAY_BRUSH 3 #define GRAY_BRUSH 2 #define HOLLOW_BRUSH 5 #define LTGRAY_BRUSH 1 #define NULL_BRUSH 5 #define WHITE_BRUSH 0 #define BLACK_PEN 7 #define NULL_PEN 8 #define WHITE_PEN 6 #define ANSI_FIXED_FONT 11 #define ANSI_VAR_FONT 12 #define DEVICE_DEFAULT_FONT 14 #define DEFAULT_GUI_FONT 17 #define OEM_FIXED_FONT 10 #define SYSTEM_FONT 13 #define SYSTEM_FIXED_FONT 16 #define DEFAULT_PALETTE 15 #if (_WIN32_WINNT >= &h0500) #define DC_BRUSH 18 #define DC_PEN 19 #endif #define SYSPAL_ERROR 0 #define SYSPAL_STATIC 1 #define SYSPAL_NOSTATIC 2 #define SYSPAL_NOSTATIC256 3 #define TA_BASELINE 24 #define TA_BOTTOM 8 #define TA_TOP 0 #define TA_CENTER 6 #define TA_LEFT 0 #define TA_RIGHT 2 #define TA_RTLREADING 256 #define TA_NOUPDATECP 0 #define TA_UPDATECP 1 #define TA_MASK (TA_BASELINE+TA_CENTER+TA_UPDATECP+TA_RTLREADING) #define VTA_BASELINE 24 #define VTA_CENTER 6 #define VTA_LEFT TA_BOTTOM #define VTA_RIGHT TA_TOP #define VTA_BOTTOM TA_RIGHT #define VTA_TOP TA_LEFT #define MWT_IDENTITY 1 #define MWT_LEFTMULTIPLY 2 #define MWT_RIGHTMULTIPLY 3 #define OPAQUE 2 #define TRANSPARENT 1 #define BLACKONWHITE 1 #define WHITEONBLACK 2 #define COLORONCOLOR 3 #define HALFTONE 4 #define MAXSTRETCHBLTMODE 4 #define STRETCH_ANDSCANS 1 #define STRETCH_DELETESCANS 3 #define STRETCH_HALFTONE 4 #define STRETCH_ORSCANS 2 #define TCI_SRCCHARSET 1 #define TCI_SRCCODEPAGE 2 #define TCI_SRCFONTSIG 3 #define ICM_ON 2 #define ICM_OFF 1 #define ICM_QUERY 3 #define NEWFRAME 1 #define ABORTDOC_ 2 #define NEXTBAND 3 #define SETCOLORTABLE 4 #define GETCOLORTABLE 5 #define FLUSHOUTPUT 6 #define DRAFTMODE 7 #define QUERYESCSUPPORT 8 #define SETABORTPROC_ 9 #define STARTDOC_ 10 #define ENDDOC_ 11 #define GETPHYSPAGESIZE 12 #define GETPRINTINGOFFSET 13 #define GETSCALINGFACTOR 14 #define MFCOMMENT 15 #define GETPENWIDTH 16 #define SETCOPYCOUNT 17 #define SELECTPAPERSOURCE 18 #define DEVICEDATA 19 #define PASSTHROUGH 19 #define GETTECHNOLGY 20 #define GETTECHNOLOGY 20 #define SETLINECAP 21 #define SETLINEJOIN 22 #define SETMITERLIMIT_ 23 #define BANDINFO 24 #define DRAWPATTERNRECT 25 #define GETVECTORPENSIZE 26 #define GETVECTORBRUSHSIZE 27 #define ENABLEDUPLEX 28 #define GETSETPAPERBINS 29 #define GETSETPRINTORIENT 30 #define ENUMPAPERBINS 31 #define SETDIBSCALING 32 #define EPSPRINTING 33 #define ENUMPAPERMETRICS 34 #define GETSETPAPERMETRICS 35 #define POSTSCRIPT_DATA 37 #define POSTSCRIPT_IGNORE 38 #define MOUSETRAILS 39 #define GETDEVICEUNITS 42 #define GETEXTENDEDTEXTMETRICS 256 #define GETEXTENTTABLE 257 #define GETPAIRKERNTABLE 258 #define GETTRACKKERNTABLE 259 #define EXTTEXTOUT_ 512 #define GETFACENAME 513 #define DOWNLOADFACE 514 #define ENABLERELATIVEWIDTHS 768 #define ENABLEPAIRKERNING 769 #define SETKERNTRACK 770 #define SETALLJUSTVALUES 771 #define SETCHARSET 772 #define STRETCHBLT_ 2048 #define GETSETSCREENPARAMS 3072 #define QUERYDIBSUPPORT 3073 #define BEGIN_PATH 4096 #define CLIP_TO_PATH 4097 #define END_PATH 4098 #define EXT_DEVICE_CAPS 4099 #define RESTORE_CTM 4100 #define SAVE_CTM 4101 #define SET_ARC_DIRECTION 4102 #define SET_BACKGROUND_COLOR 4103 #define SET_POLY_MODE 4104 #define SET_SCREEN_ANGLE 4105 #define SET_SPREAD 4106 #define TRANSFORM_CTM 4107 #define SET_CLIP_BOX 4108 #define SET_BOUNDS 4109 #define SET_MIRROR_MODE 4110 #define OPENCHANNEL 4110 #define DOWNLOADHEADER 4111 #define CLOSECHANNEL 4112 #define POSTSCRIPT_PASSTHROUGH 4115 #define ENCAPSULATED_POSTSCRIPT 4116 #define QDI_SETDIBITS 1 #define QDI_GETDIBITS 2 #define QDI_DIBTOSCREEN 4 #define QDI_STRETCHDIB 8 #define SP_NOTREPORTED &h4000 #define PR_JOBSTATUS 0 #define ASPECT_FILTERING 1 #define BS_SOLID 0 #define BS_NULL 1 #define BS_HOLLOW 1 #define BS_HATCHED 2 #define BS_PATTERN 3 #define BS_INDEXED 4 #define BS_DIBPATTERN 5 #define BS_DIBPATTERNPT 6 #define BS_PATTERN8X8 7 #define BS_DIBPATTERN8X8 8 #define LCS_CALIBRATED_RGB 0 #define LCS_DEVICE_RGB 1 #define LCS_DEVICE_CMYK 2 #define LCS_GM_BUSINESS 1 #define LCS_GM_GRAPHICS 2 #define LCS_GM_IMAGES 4 #define RASTER_FONTTYPE 1 #define DEVICE_FONTTYPE 2 #define TRUETYPE_FONTTYPE 4 #define DMORIENT_PORTRAIT 1 #define DMORIENT_LANDSCAPE 2 #define DMPAPER_FIRST 1 #define DMPAPER_LETTER 1 #define DMPAPER_LETTERSMALL 2 #define DMPAPER_TABLOID 3 #define DMPAPER_LEDGER 4 #define DMPAPER_LEGAL 5 #define DMPAPER_STATEMENT 6 #define DMPAPER_EXECUTIVE 7 #define DMPAPER_A3 8 #define DMPAPER_A4 9 #define DMPAPER_A4SMALL 10 #define DMPAPER_A5 11 #define DMPAPER_B4 12 #define DMPAPER_B5 13 #define DMPAPER_FOLIO 14 #define DMPAPER_QUARTO 15 #define DMPAPER_10X14 16 #define DMPAPER_11X17 17 #define DMPAPER_NOTE 18 #define DMPAPER_ENV_9 19 #define DMPAPER_ENV_10 20 #define DMPAPER_ENV_11 21 #define DMPAPER_ENV_12 22 #define DMPAPER_ENV_14 23 #define DMPAPER_CSHEET 24 #define DMPAPER_DSHEET 25 #define DMPAPER_ESHEET 26 #define DMPAPER_ENV_DL 27 #define DMPAPER_ENV_C5 28 #define DMPAPER_ENV_C3 29 #define DMPAPER_ENV_C4 30 #define DMPAPER_ENV_C6 31 #define DMPAPER_ENV_C65 32 #define DMPAPER_ENV_B4 33 #define DMPAPER_ENV_B5 34 #define DMPAPER_ENV_B6 35 #define DMPAPER_ENV_ITALY 36 #define DMPAPER_ENV_MONARCH 37 #define DMPAPER_ENV_PERSONAL 38 #define DMPAPER_FANFOLD_US 39 #define DMPAPER_FANFOLD_STD_GERMAN 40 #define DMPAPER_FANFOLD_LGL_GERMAN 41 #define DMPAPER_ISO_B4 42 #define DMPAPER_JAPANESE_POSTCARD 43 #define DMPAPER_9X11 44 #define DMPAPER_10X11 45 #define DMPAPER_15X11 46 #define DMPAPER_ENV_INVITE 47 #define DMPAPER_RESERVED_48 48 #define DMPAPER_RESERVED_49 49 #define DMPAPER_LETTER_EXTRA 50 #define DMPAPER_LEGAL_EXTRA 51 #define DMPAPER_TABLOID_EXTRA 52 #define DMPAPER_A4_EXTRA 53 #define DMPAPER_LETTER_TRANSVERSE 54 #define DMPAPER_A4_TRANSVERSE 55 #define DMPAPER_LETTER_EXTRA_TRANSVERSE 56 #define DMPAPER_A_PLUS 57 #define DMPAPER_B_PLUS 58 #define DMPAPER_LETTER_PLUS 59 #define DMPAPER_A4_PLUS 60 #define DMPAPER_A5_TRANSVERSE 61 #define DMPAPER_B5_TRANSVERSE 62 #define DMPAPER_A3_EXTRA 63 #define DMPAPER_A5_EXTRA 64 #define DMPAPER_B5_EXTRA 65 #define DMPAPER_A2 66 #define DMPAPER_A3_TRANSVERSE 67 #define DMPAPER_A3_EXTRA_TRANSVERSE 68 #if (WINVER >= &h0500) #define DMPAPER_DBL_JAPANESE_POSTCARD 69 #define DMPAPER_A6 70 #define DMPAPER_JENV_KAKU2 71 #define DMPAPER_JENV_KAKU3 72 #define DMPAPER_JENV_CHOU3 73 #define DMPAPER_JENV_CHOU4 74 #define DMPAPER_LETTER_ROTATED 75 #define DMPAPER_A3_ROTATED 76 #define DMPAPER_A4_ROTATED 77 #define DMPAPER_A5_ROTATED 78 #define DMPAPER_B4_JIS_ROTATED 79 #define DMPAPER_B5_JIS_ROTATED 80 #define DMPAPER_JAPANESE_POSTCARD_ROTATED 81 #define DMPAPER_DBL_JAPANESE_POSTCARD_ROTATED 82 #define DMPAPER_A6_ROTATED 83 #define DMPAPER_JENV_KAKU2_ROTATED 84 #define DMPAPER_JENV_KAKU3_ROTATED 85 #define DMPAPER_JENV_CHOU3_ROTATED 86 #define DMPAPER_JENV_CHOU4_ROTATED 87 #define DMPAPER_B6_JIS 88 #define DMPAPER_B6_JIS_ROTATED 89 #define DMPAPER_12X11 90 #define DMPAPER_JENV_YOU4 91 #define DMPAPER_JENV_YOU4_ROTATED 92 #define DMPAPER_P16K 93 #define DMPAPER_P32K 94 #define DMPAPER_P32KBIG 95 #define DMPAPER_PENV_1 96 #define DMPAPER_PENV_2 97 #define DMPAPER_PENV_3 98 #define DMPAPER_PENV_4 99 #define DMPAPER_PENV_5 100 #define DMPAPER_PENV_6 101 #define DMPAPER_PENV_7 102 #define DMPAPER_PENV_8 103 #define DMPAPER_PENV_9 104 #define DMPAPER_PENV_10 105 #define DMPAPER_P16K_ROTATED 106 #define DMPAPER_P32K_ROTATED 107 #define DMPAPER_P32KBIG_ROTATED 108 #define DMPAPER_PENV_1_ROTATED 109 #define DMPAPER_PENV_2_ROTATED 110 #define DMPAPER_PENV_3_ROTATED 111 #define DMPAPER_PENV_4_ROTATED 112 #define DMPAPER_PENV_5_ROTATED 113 #define DMPAPER_PENV_6_ROTATED 114 #define DMPAPER_PENV_7_ROTATED 115 #define DMPAPER_PENV_8_ROTATED 116 #define DMPAPER_PENV_9_ROTATED 117 #define DMPAPER_PENV_10_ROTATED 118 #define DMPAPER_LAST 118 #else #define DMPAPER_LAST 68 #endif #define DMPAPER_USER 256 #define DMBIN_FIRST 1 #define DMBIN_UPPER 1 #define DMBIN_ONLYONE 1 #define DMBIN_LOWER 2 #define DMBIN_MIDDLE 3 #define DMBIN_MANUAL 4 #define DMBIN_ENVELOPE 5 #define DMBIN_ENVMANUAL 6 #define DMBIN_AUTO 7 #define DMBIN_TRACTOR 8 #define DMBIN_SMALLFMT 9 #define DMBIN_LARGEFMT 10 #define DMBIN_LARGECAPACITY 11 #define DMBIN_CASSETTE 14 #define DMBIN_FORMSOURCE 15 #define DMBIN_LAST 15 #define DMBIN_USER 256 #define DMRES_DRAFT (-1) #define DMRES_LOW (-2) #define DMRES_MEDIUM (-3) #define DMRES_HIGH (-4) #define DMCOLOR_MONOCHROME 1 #define DMCOLOR_COLOR 2 #define DMDUP_SIMPLEX 1 #define DMDUP_VERTICAL 2 #define DMDUP_HORIZONTAL 3 #define DMTT_BITMAP 1 #define DMTT_DOWNLOAD 2 #define DMTT_SUBDEV 3 #define DMTT_DOWNLOAD_OUTLINE 4 #define DMCOLLATE_FALSE 0 #define DMCOLLATE_TRUE 1 #define DM_SPECVERSION 800 #define DM_GRAYSCALE 1 #define DM_INTERLACED 2 #define DM_UPDATE 1 #define DM_COPY 2 #define DM_PROMPT 4 #define DM_MODIFY 8 #define DM_IN_BUFFER DM_MODIFY #define DM_IN_PROMPT DM_PROMPT #define DM_OUT_BUFFER DM_COPY #define DM_OUT_DEFAULT DM_UPDATE #define DM_ORIENTATION 1 #define DM_PAPERSIZE 2 #define DM_PAPERLENGTH 4 #define DM_PAPERWIDTH 8 #define DM_SCALE 16 #define DM_POSITION &h20 #define DM_COPIES 256 #define DM_DEFAULTSOURCE 512 #define DM_PRINTQUALITY 1024 #define DM_COLOR 2048 #define DM_DUPLEX 4096 #define DM_YRESOLUTION 8192 #define DM_TTOPTION 16384 #define DM_COLLATE 32768 #define DM_FORMNAME 65536 #define DM_LOGPIXELS &h20000 #define DM_BITSPERPEL &h40000 #define DM_PELSWIDTH &h80000 #define DM_PELSHEIGHT &h100000 #define DM_DISPLAYFLAGS &h200000 #define DM_DISPLAYFREQUENCY &h400000 #define DM_ICMMETHOD &h800000 #define DM_ICMINTENT &h1000000 #define DM_MEDIATYPE &h2000000 #define DM_DITHERTYPE &h4000000 #if(WINVER >= &h0500) #define DM_PANNINGWIDTH &h08000000 #define DM_PANNINGHEIGHT &h10000000 #endif #if(WINVER >= &h0501) #define DM_DISPLAYFIXEDOUTPUT &h20000000 #define DM_DISPLAYORIENTATION &h00000080 #define DMDO_DEFAULT &h00000000 #define DMDO_90 &h00000001 #define DMDO_180 &h00000002 #define DMDO_270 &h00000003 #define DMDFO_DEFAULT &h00000000 #define DMDFO_STRETCH &h00000001 #define DMDFO_CENTER &h00000002 #endif #define DMICMMETHOD_NONE 1 #define DMICMMETHOD_SYSTEM 2 #define DMICMMETHOD_DRIVER 3 #define DMICMMETHOD_DEVICE 4 #define DMICMMETHOD_USER 256 #define DMICM_SATURATE 1 #define DMICM_CONTRAST 2 #define DMICM_COLORMETRIC 3 #define DMICM_USER 256 #define DMMEDIA_STANDARD 1 #define DMMEDIA_TRANSPARENCY 2 #define DMMEDIA_GLOSSY 3 #define DMMEDIA_USER 256 #define DMDITHER_NONE 1 #define DMDITHER_COARSE 2 #define DMDITHER_FINE 3 #define DMDITHER_LINEART 4 #define DMDITHER_ERRORDIFFUSION 5 #define DMDITHER_RESERVED6 6 #define DMDITHER_RESERVED7 7 #define DMDITHER_RESERVED8 8 #define DMDITHER_RESERVED9 9 #define DMDITHER_GRAYSCALE 10 #define DMDITHER_USER 256 #define GDI_ERROR &hFFFFFFFF #define HGDI_ERROR (GDI_ERROR) #define TMPF_FIXED_PITCH 1 #define TMPF_VECTOR 2 #define TMPF_TRUETYPE 4 #define TMPF_DEVICE 8 #define NTM_ITALIC 1 #define NTM_BOLD 32 #define NTM_REGULAR 64 #define TT_POLYGON_TYPE 24 #define TT_PRIM_LINE 1 #define TT_PRIM_QSPLINE 2 #define TT_PRIM_CSPLINE 3 #define FONTMAPPER_MAX 10 #define ENHMETA_STOCK_OBJECT &h80000000 #define WGL_FONT_LINES 0 #define WGL_FONT_POLYGONS 1 #define LPD_DOUBLEBUFFER 1 #define LPD_STEREO 2 #define LPD_SUPPORT_GDI 16 #define LPD_SUPPORT_OPENGL 32 #define LPD_SHARE_DEPTH 64 #define LPD_SHARE_STENCIL 128 #define LPD_SHARE_ACCUM 256 #define LPD_SWAP_EXCHANGE 512 #define LPD_SWAP_COPY 1024 #define LPD_TRANSPARENT 4096 #define LPD_TYPE_RGBA 0 #define LPD_TYPE_COLORINDEX 1 #define WGL_SWAP_MAIN_PLANE 1 #define WGL_SWAP_OVERLAY1 2 #define WGL_SWAP_OVERLAY2 4 #define WGL_SWAP_OVERLAY3 8 #define WGL_SWAP_OVERLAY4 16 #define WGL_SWAP_OVERLAY5 32 #define WGL_SWAP_OVERLAY6 64 #define WGL_SWAP_OVERLAY7 128 #define WGL_SWAP_OVERLAY8 256 #define WGL_SWAP_OVERLAY9 512 #define WGL_SWAP_OVERLAY10 1024 #define WGL_SWAP_OVERLAY11 2048 #define WGL_SWAP_OVERLAY12 4096 #define WGL_SWAP_OVERLAY13 8192 #define WGL_SWAP_OVERLAY14 16384 #define WGL_SWAP_OVERLAY15 32768 #define WGL_SWAP_UNDERLAY1 65536 #define WGL_SWAP_UNDERLAY2 &h20000 #define WGL_SWAP_UNDERLAY3 &h40000 #define WGL_SWAP_UNDERLAY4 &h80000 #define WGL_SWAP_UNDERLAY5 &h100000 #define WGL_SWAP_UNDERLAY6 &h200000 #define WGL_SWAP_UNDERLAY7 &h400000 #define WGL_SWAP_UNDERLAY8 &h800000 #define WGL_SWAP_UNDERLAY9 &h1000000 #define WGL_SWAP_UNDERLAY10 &h2000000 #define WGL_SWAP_UNDERLAY11 &h4000000 #define WGL_SWAP_UNDERLAY12 &h8000000 #define WGL_SWAP_UNDERLAY13 &h10000000 #define WGL_SWAP_UNDERLAY14 &h20000000 #define WGL_SWAP_UNDERLAY15 &h40000000 #define AC_SRC_OVER &h00 #define AC_SRC_ALPHA &h01 #define AC_SRC_NO_PREMULT_ALPHA &h01 #define AC_SRC_NO_ALPHA &h02 #define AC_DST_NO_PREMULT_ALPHA &h10 #define AC_DST_NO_ALPHA &h20 #define LAYOUT_RTL 1 #define LAYOUT_BITMAPORIENTATIONPRESERVED 8 #if (WINVER >= &h0400) #define CS_ENABLE &h00000001 #define CS_DISABLE &h00000002 #define CS_DELETE_TRANSFORM &h00000003 #endif #if (WINVER >= &h0500) #define GRADIENT_FILL_RECT_H &h00 #define GRADIENT_FILL_RECT_V &h01 #define GRADIENT_FILL_TRIANGLE &h02 #define GRADIENT_FILL_OP_FLAG &hff #define COLORMATCHTOTARGET_EMBEDED &h00000001 #define CREATECOLORSPACE_EMBEDED &h00000001 #define SETICMPROFILE_EMBEDED &h00000001 #endif #define DISPLAY_DEVICE_ATTACHED_TO_DESKTOP &h00000001 #define DISPLAY_DEVICE_MULTI_DRIVER &h00000002 #define DISPLAY_DEVICE_PRIMARY_DEVICE &h00000004 #define DISPLAY_DEVICE_MIRRORING_DRIVER &h00000008 #define DISPLAY_DEVICE_VGA_COMPATIBLE &h00000010 #define DISPLAY_DEVICE_REMOVABLE &h00000020 #define DISPLAY_DEVICE_MODESPRUNED &h08000000 #if (_WIN32_WINNT >= &h0500) #define NTM_NONNEGATIVE_AC &h00010000 #define NTM_PS_OPENTYPE &h00020000 #define NTM_TT_OPENTYPE &h00040000 #define NTM_MULTIPLEMASTER &h00080000 #define NTM_TYPE1 &h00100000 #define NTM_DSIG &h00200000 #endif #if (_WIN32_WINNT >= &h0500) #define GGI_MARK_NONEXISTING_GLYPHS 1 #endif type ABC abcA as integer abcB as UINT abcC as integer end type type LPABC as ABC ptr type ABCFLOAT abcfA as FLOAT abcfB as FLOAT abcfC as FLOAT end type type LPABCFLOAT as ABCFLOAT ptr type BITMAP bmType as LONG bmWidth as LONG bmHeight as LONG bmWidthBytes as LONG bmPlanes as WORD bmBitsPixel as WORD bmBits as LPVOID end type type PBITMAP as BITMAP ptr type LPBITMAP as BITMAP ptr type BITMAPCOREHEADER bcSize as DWORD bcWidth as WORD bcHeight as WORD bcPlanes as WORD bcBitCount as WORD end type type LPBITMAPCOREHEADER as BITMAPCOREHEADER ptr type PBITMAPCOREHEADER as BITMAPCOREHEADER ptr type RGBTRIPLE field=1 rgbtBlue as UBYTE rgbtGreen as UBYTE rgbtRed as UBYTE end type type LPRGBTRIPLE as RGBTRIPLE ptr type BITMAPFILEHEADER field=2 bfType as WORD bfSize as DWORD bfReserved1 as WORD bfReserved2 as WORD bfOffBits as DWORD end type type LPBITMAPFILEHEADER as BITMAPFILEHEADER ptr type PBITMAPFILEHEADER as BITMAPFILEHEADER ptr type BITMAPCOREINFO bmciHeader as BITMAPCOREHEADER bmciColors(0 to 1-1) as RGBTRIPLE end type type LPBITMAPCOREINFO as BITMAPCOREINFO ptr type PBITMAPCOREINFO as BITMAPCOREINFO ptr type BITMAPINFOHEADER biSize as DWORD biWidth as LONG biHeight as LONG biPlanes as WORD biBitCount as WORD biCompression as DWORD biSizeImage as DWORD biXPelsPerMeter as LONG biYPelsPerMeter as LONG biClrUsed as DWORD biClrImportant as DWORD end type type LPBITMAPINFOHEADER as BITMAPINFOHEADER ptr type PBITMAPINFOHEADER as BITMAPINFOHEADER ptr type RGBQUAD rgbBlue as UBYTE rgbGreen as UBYTE rgbRed as UBYTE rgbReserved as UBYTE end type type LPRGBQUAD as RGBQUAD ptr type BITMAPINFO bmiHeader as BITMAPINFOHEADER bmiColors(0 to 1-1) as RGBQUAD end type type LPBITMAPINFO as BITMAPINFO ptr type PBITMAPINFO as BITMAPINFO ptr type FXPT16DOT16 as integer type LPFXPT16DOT16 as integer ptr type FXPT2DOT30 as integer type LPFXPT2DOT30 as integer ptr type CIEXYZ ciexyzX as FXPT2DOT30 ciexyzY as FXPT2DOT30 ciexyzZ as FXPT2DOT30 end type type LPCIEXYZ as CIEXYZ ptr type CIEXYZTRIPLE ciexyzRed as CIEXYZ ciexyzGreen as CIEXYZ ciexyzBlue as CIEXYZ end type type LPCIEXYZTRIPLE as CIEXYZTRIPLE ptr type BITMAPV4HEADER bV4Size as DWORD bV4Width as LONG bV4Height as LONG bV4Planes as WORD bV4BitCount as WORD ''TODO: http://msdn.microsoft.com/en-us/library/windows/desktop/dd183380%28v=vs.85%29.aspx bV4V4Compression as DWORD bV4SizeImage as DWORD bV4XPelsPerMeter as LONG bV4YPelsPerMeter as LONG bV4ClrUsed as DWORD bV4ClrImportant as DWORD bV4RedMask as DWORD bV4GreenMask as DWORD bV4BlueMask as DWORD bV4AlphaMask as DWORD bV4CSType as DWORD bV4Endpoints as CIEXYZTRIPLE bV4GammaRed as DWORD bV4GammaGreen as DWORD bV4GammaBlue as DWORD end type type LPBITMAPV4HEADER as BITMAPV4HEADER ptr type PBITMAPV4HEADER as BITMAPV4HEADER ptr type BITMAPV5HEADER bV5Size as DWORD bV5Width as LONG bV5Height as LONG bV5Planes as WORD bV5BitCount as WORD bV5Compression as DWORD bV5SizeImage as DWORD bV5XPelsPerMeter as LONG bV5YPelsPerMeter as LONG bV5ClrUsed as DWORD bV5ClrImportant as DWORD bV5RedMask as DWORD bV5GreenMask as DWORD bV5BlueMask as DWORD bV5AlphaMask as DWORD bV5CSType as DWORD bV5Endpoints as CIEXYZTRIPLE bV5GammaRed as DWORD bV5GammaGreen as DWORD bV5GammaBlue as DWORD bV5Intent as DWORD bV5ProfileData as DWORD bV5ProfileSize as DWORD bV5Reserved as DWORD end type type LPBITMAPV5HEADER as BITMAPV5HEADER ptr type PBITMAPV5HEADER as BITMAPV5HEADER ptr type FONTSIGNATURE fsUsb(0 to 4-1) as DWORD fsCsb(0 to 2-1) as DWORD end type type LPFONTSIGNATURE as FONTSIGNATURE ptr type CHARSETINFO ciCharset as UINT ciACP as UINT fs as FONTSIGNATURE end type type LPCHARSETINFO as CHARSETINFO ptr type COLORADJUSTMENT caSize as WORD caFlags as WORD caIlluminantIndex as WORD caRedGamma as WORD caGreenGamma as WORD caBlueGamma as WORD caReferenceBlack as WORD caReferenceWhite as WORD caContrast as SHORT caBrightness as SHORT caColorfulness as SHORT caRedGreenTint as SHORT end type type LPCOLORADJUSTMENT as COLORADJUSTMENT ptr #ifndef UNICODE type DEVMODEA dmDeviceName(0 to 32-1) as UBYTE dmSpecVersion as WORD dmDriverVersion as WORD dmSize as WORD dmDriverExtra as WORD dmFields as DWORD union type dmOrientation as short dmPaperSize as short dmPaperLength as short dmPaperWidth as short dmScale as short dmCopies as short dmDefaultSource as short dmPrintQuality as short end type dmPosition as POINTL dmDisplayOrientation as DWORD dmDisplayFixedOutput as DWORD end union dmColor as short dmDuplex as short dmYResolution as short dmTTOption as short dmCollate as short dmFormName(0 to 32-1) as UBYTE dmLogPixels as WORD dmBitsPerPel as DWORD dmPelsWidth as DWORD dmPelsHeight as DWORD union dmDisplayFlags as DWORD dmNup as DWORD end union dmDisplayFrequency as DWORD #if(WINVER >= &h0400) dmICMMethod as DWORD dmICMIntent as DWORD dmMediaType as DWORD dmDitherType as DWORD dmReserved1 as DWORD dmReserved2 as DWORD #if (WINVER >= &h0500) or (_WIN32_WINNT >= &h0400) dmPanningWidth as DWORD dmPanningHeight as DWORD #endif #endif end type type LPDEVMODEA as DEVMODEA ptr type PDEVMODEA as DEVMODEA ptr #else ''UNICODE type DEVMODEW dmDeviceName as wstring * 32 dmSpecVersion as WORD dmDriverVersion as WORD dmSize as WORD dmDriverExtra as WORD dmFields as DWORD union type dmOrientation as short dmPaperSize as short dmPaperLength as short dmPaperWidth as short dmScale as short dmCopies as short dmDefaultSource as short dmPrintQuality as short end type dmPosition as POINTL dmDisplayOrientation as DWORD dmDisplayFixedOutput as DWORD end union dmColor as short dmDuplex as short dmYResolution as short dmTTOption as short dmCollate as short dmFormName as wstring * 32 dmLogPixels as WORD dmBitsPerPel as DWORD dmPelsWidth as DWORD dmPelsHeight as DWORD union dmDisplayFlags as DWORD dmNup as DWORD end union dmDisplayFrequency as DWORD dmICMMethod as DWORD dmICMIntent as DWORD dmMediaType as DWORD dmDitherType as DWORD dmReserved1 as DWORD dmReserved2 as DWORD dmPanningWidth as DWORD dmPanningHeight as DWORD end type type LPDEVMODEW as DEVMODEW ptr type PDEVMODEW as DEVMODEW ptr #endif ''UNICODE type DIBSECTION dsBm as BITMAP dsBmih as BITMAPINFOHEADER dsBitfields(0 to 3-1) as DWORD dshSection as HANDLE dsOffset as DWORD end type #ifndef UNICODE type DOCINFOA cbSize as integer lpszDocName as LPCSTR lpszOutput as LPCSTR lpszDatatype as LPCSTR fwType as DWORD end type type LPDOCINFOA as DOCINFOA ptr #else ''UNICODE type DOCINFOW cbSize as integer lpszDocName as LPCWSTR lpszOutput as LPCWSTR lpszDatatype as LPCWSTR fwType as DWORD end type type LPDOCINFOW as DOCINFOW ptr #endif ''UNICODE type EMR iType as DWORD nSize as DWORD end type type PEMR as EMR ptr type EMRANGLEARC emr as EMR ptlCenter as POINTL nRadius as DWORD eStartAngle as FLOAT eSweepAngle as FLOAT end type type PEMRANGLEARC as EMRANGLEARC ptr type EMRARC emr as EMR rclBox as RECTL ptlStart as POINTL ptlEnd as POINTL end type type PEMRARC as EMRARC ptr type EMRARCTO as EMRARC type PEMRARCTO as EMRARC ptr type EMRCHORD as EMRARC type PEMRCHORD as EMRARC ptr type EMRPIE as EMRARC type PEMRPIE as EMRARC ptr type XFORM eM11 as FLOAT eM12 as FLOAT eM21 as FLOAT eM22 as FLOAT eDx as FLOAT eDy as FLOAT end type type PXFORM as XFORM ptr type LPXFORM as XFORM ptr type EMRBITBLT emr as EMR rclBounds as RECTL xDest as LONG yDest as LONG cxDest as LONG cyDest as LONG dwRop as DWORD xSrc as LONG ySrc as LONG xformSrc as XFORM crBkColorSrc as COLORREF iUsageSrc as DWORD offBmiSrc as DWORD offBitsSrc as DWORD cbBitsSrc as DWORD end type type PEMRBITBLT as EMRBITBLT ptr type LOGBRUSH lbStyle as UINT lbColor as COLORREF lbHatch as LONG end type type PLOGBRUSH as LOGBRUSH ptr type LPLOGBRUSH as LOGBRUSH ptr type PATTERN as LOGBRUSH type PPATTERN as LOGBRUSH ptr type LPPATTERN as LOGBRUSH ptr type EMRCREATEBRUSHINDIRECT emr as EMR ihBrush as DWORD lb as LOGBRUSH end type type PEMRCREATEBRUSHINDIRECT as EMRCREATEBRUSHINDIRECT ptr type LCSCSTYPE as LONG type LCSGAMUTMATCH as LONG #ifndef UNICODE type LOGCOLORSPACEA lcsSignature as DWORD lcsVersion as DWORD lcsSize as DWORD lcsCSType as LCSCSTYPE lcsIntent as LCSGAMUTMATCH lcsEndpoints as CIEXYZTRIPLE lcsGammaRed as DWORD lcsGammaGreen as DWORD lcsGammaBlue as DWORD lcsFilename as zstring * 260 end type type LPLOGCOLORSPACEA as LOGCOLORSPACEA ptr #else ''UNICODE type LOGCOLORSPACEW lcsSignature as DWORD lcsVersion as DWORD lcsSize as DWORD lcsCSType as LCSCSTYPE lcsIntent as LCSGAMUTMATCH lcsEndpoints as CIEXYZTRIPLE lcsGammaRed as DWORD lcsGammaGreen as DWORD lcsGammaBlue as DWORD lcsFilename as wstring * 260 end type type LPLOGCOLORSPACEW as LOGCOLORSPACEW ptr type EMRCREATECOLORSPACE emr as EMR ihCS as DWORD lcs as LOGCOLORSPACEW end type type PEMRCREATECOLORSPACE as EMRCREATECOLORSPACE ptr #endif ''UNICODE type EMRCREATEDIBPATTERNBRUSHPT emr as EMR ihBrush as DWORD iUsage as DWORD offBmi as DWORD cbBmi as DWORD offBits as DWORD cbBits as DWORD end type type PEMRCREATEDIBPATTERNBRUSHPT as EMRCREATEDIBPATTERNBRUSHPT ptr type EMRCREATEMONOBRUSH emr as EMR ihBrush as DWORD iUsage as DWORD offBmi as DWORD cbBmi as DWORD offBits as DWORD cbBits as DWORD end type type PEMRCREATEMONOBRUSH as EMRCREATEMONOBRUSH ptr type PALETTEENTRY peRed as UBYTE peGreen as UBYTE peBlue as UBYTE peFlags as UBYTE end type type LPPALETTEENTRY as PALETTEENTRY ptr type PPALETTEENTRY as PALETTEENTRY ptr type LOGPALETTE palVersion as WORD palNumEntries as WORD palPalEntry(0 to 1-1) as PALETTEENTRY end type type NPLOGPALETTE as LOGPALETTE ptr type PLOGPALETTE as LOGPALETTE ptr type LPLOGPALETTE as LOGPALETTE ptr type EMRCREATEPALETTE emr as EMR ihPal as DWORD lgpl as LOGPALETTE end type type PEMRCREATEPALETTE as EMRCREATEPALETTE ptr type LOGPEN lopnStyle as UINT lopnWidth as POINT lopnColor as COLORREF end type type PLOGPEN as LOGPEN ptr type LPLOGPEN as LOGPEN ptr type EMRCREATEPEN emr as EMR ihPen as DWORD lopn as LOGPEN end type type PEMRCREATEPEN as EMRCREATEPEN ptr type EMRELLIPSE emr as EMR rclBox as RECTL end type type PEMRELLIPSE as EMRELLIPSE ptr type EMRRECTANGLE as EMRELLIPSE type PEMRRECTANGLE as EMRELLIPSE ptr type EMREOF emr as EMR nPalEntries as DWORD offPalEntries as DWORD nSizeLast as DWORD end type type PEMREOF as EMREOF ptr type EMREXCLUDECLIPRECT emr as EMR rclClip as RECTL end type type PEMREXCLUDECLIPRECT as EMREXCLUDECLIPRECT ptr type EMRINTERSECTCLIPRECT as EMREXCLUDECLIPRECT type PEMRINTERSECTCLIPRECT as EMREXCLUDECLIPRECT ptr type PANOSE bFamilyType as UBYTE bSerifStyle as UBYTE bWeight as UBYTE bProportion as UBYTE bContrast as UBYTE bStrokeVariation as UBYTE bArmStyle as UBYTE bLetterform as UBYTE bMidline as UBYTE bXHeight as UBYTE end type #ifndef UNICODE type LOGFONTA lfHeight as LONG lfWidth as LONG lfEscapement as LONG lfOrientation as LONG lfWeight as LONG lfItalic as UBYTE lfUnderline as UBYTE lfStrikeOut as UBYTE lfCharSet as UBYTE lfOutPrecision as UBYTE lfClipPrecision as UBYTE lfQuality as UBYTE lfPitchAndFamily as UBYTE lfFaceName as zstring * 32 end type type PLOGFONTA as LOGFONTA ptr type LPLOGFONTA as LOGFONTA ptr #else ''UNICODE type LOGFONTW lfHeight as LONG lfWidth as LONG lfEscapement as LONG lfOrientation as LONG lfWeight as LONG lfItalic as UBYTE lfUnderline as UBYTE lfStrikeOut as UBYTE lfCharSet as UBYTE lfOutPrecision as UBYTE lfClipPrecision as UBYTE lfQuality as UBYTE lfPitchAndFamily as UBYTE lfFaceName as wstring * 32 end type type PLOGFONTW as LOGFONTW ptr type LPLOGFONTW as LOGFONTW ptr #endif ''UNICODE #ifndef UNICODE type EXTLOGFONTA elfLogFont as LOGFONTA elfFullName(0 to 64-1) as UBYTE elfStyle(0 to 32-1) as UBYTE elfVersion as DWORD elfStyleSize as DWORD elfMatch as DWORD elfReserved as DWORD elfVendorId(0 to 4-1) as UBYTE elfCulture as DWORD elfPanose as PANOSE end type type PEXTLOGFONTA as EXTLOGFONTA ptr type LPEXTLOGFONTA as EXTLOGFONTA ptr #else ''UNICODE type EXTLOGFONTW elfLogFont as LOGFONTW elfFullName as wstring * 64 elfStyle as wstring * 32 elfVersion as DWORD elfStyleSize as DWORD elfMatch as DWORD elfReserved as DWORD elfVendorId(0 to 4-1) as UBYTE elfCulture as DWORD elfPanose as PANOSE end type type PEXTLOGFONTW as EXTLOGFONTW ptr type LPEXTLOGFONTW as EXTLOGFONTW ptr type EMREXTCREATEFONTINDIRECTW emr as EMR ihFont as DWORD elfw as EXTLOGFONTW end type type PEMREXTCREATEFONTINDIRECTW as EMREXTCREATEFONTINDIRECTW ptr #endif ''UNICODE type EXTLOGPEN elpPenStyle as UINT elpWidth as UINT elpBrushStyle as UINT elpColor as COLORREF elpHatch as LONG elpNumEntries as DWORD elpStyleEntry(0 to 1-1) as DWORD end type type PEXTLOGPEN as EXTLOGPEN ptr type LPEXTLOGPEN as EXTLOGPEN ptr type EMREXTCREATEPEN emr as EMR ihPen as DWORD offBmi as DWORD cbBmi as DWORD offBits as DWORD cbBits as DWORD elp as EXTLOGPEN end type type PEMREXTCREATEPEN as EMREXTCREATEPEN ptr type EMREXTFLOODFILL emr as EMR ptlStart as POINTL crColor as COLORREF iMode as DWORD end type type PEMREXTFLOODFILL as EMREXTFLOODFILL ptr type EMREXTSELECTCLIPRGN emr as EMR cbRgnData as DWORD iMode as DWORD RgnData(0 to 1-1) as UBYTE end type type PEMREXTSELECTCLIPRGN as EMREXTSELECTCLIPRGN ptr type EMRTEXT ptlReference as POINTL nChars as DWORD offString as DWORD fOptions as DWORD rcl as RECTL offDx as DWORD end type type PEMRTEXT as EMRTEXT ptr type EMREXTTEXTOUTA emr as EMR rclBounds as RECTL iGraphicsMode as DWORD exScale as FLOAT eyScale as FLOAT emrtext as EMRTEXT end type type PEMREXTTEXTOUTA as EMREXTTEXTOUTA ptr type EMREXTTEXTOUTW as EMREXTTEXTOUTA type PEMREXTTEXTOUTW as EMREXTTEXTOUTA ptr type EMRFILLPATH emr as EMR rclBounds as RECTL end type type PEMRFILLPATH as EMRFILLPATH ptr type EMRSTROKEANDFILLPATH as EMRFILLPATH type PEMRSTROKEANDFILLPATH as EMRFILLPATH ptr type EMRSTROKEPATH as EMRFILLPATH type PEMRSTROKEPATH as EMRFILLPATH ptr type EMRFILLRGN emr as EMR rclBounds as RECTL cbRgnData as DWORD ihBrush as DWORD RgnData(0 to 1-1) as UBYTE end type type PEMRFILLRGN as EMRFILLRGN ptr type EMRFORMAT dSignature as DWORD nVersion as DWORD cbData as DWORD offData as DWORD end type type EMRFRAMERGN emr as EMR rclBounds as RECTL cbRgnData as DWORD ihBrush as DWORD szlStroke as SIZEL RgnData(0 to 1-1) as UBYTE end type type PEMRFRAMERGN as EMRFRAMERGN ptr type EMRGDICOMMENT emr as EMR cbData as DWORD Data(0 to 1-1) as UBYTE end type type PEMRGDICOMMENT as EMRGDICOMMENT ptr type EMRINVERTRGN emr as EMR rclBounds as RECTL cbRgnData as DWORD RgnData(0 to 1-1) as UBYTE end type type PEMRINVERTRGN as EMRINVERTRGN ptr type EMRPAINTRGN as EMRINVERTRGN type PEMRPAINTRGN as EMRINVERTRGN ptr type EMRLINETO emr as EMR ptl as POINTL end type type PEMRLINETO as EMRLINETO ptr type EMRMOVETOEX as EMRLINETO type PEMRMOVETOEX as EMRLINETO ptr type EMRMASKBLT emr as EMR rclBounds as RECTL xDest as LONG yDest as LONG cxDest as LONG cyDest as LONG dwRop as DWORD xSrc as LONG ySrc as LONG xformSrc as XFORM crBkColorSrc as COLORREF iUsageSrc as DWORD offBmiSrc as DWORD cbBmiSrc as DWORD offBitsSrc as DWORD cbBitsSrc as DWORD xMask as LONG yMask as LONG iUsageMask as DWORD offBmiMask as DWORD cbBmiMask as DWORD offBitsMask as DWORD cbBitsMask as DWORD end type type PEMRMASKBLT as EMRMASKBLT ptr type EMRMODIFYWORLDTRANSFORM emr as EMR xform as XFORM iMode as DWORD end type type PEMRMODIFYWORLDTRANSFORM as EMRMODIFYWORLDTRANSFORM ptr type EMROFFSETCLIPRGN emr as EMR ptlOffset as POINTL end type type PEMROFFSETCLIPRGN as EMROFFSETCLIPRGN ptr type EMRPLGBLT emr as EMR rclBounds as RECTL aptlDest(0 to 3-1) as POINTL xSrc as LONG ySrc as LONG cxSrc as LONG cySrc as LONG xformSrc as XFORM crBkColorSrc as COLORREF iUsageSrc as DWORD offBmiSrc as DWORD cbBmiSrc as DWORD offBitsSrc as DWORD cbBitsSrc as DWORD xMask as LONG yMask as LONG iUsageMask as DWORD offBmiMask as DWORD cbBmiMask as DWORD offBitsMask as DWORD cbBitsMask as DWORD end type type PEMRPLGBLT as EMRPLGBLT ptr type EMRPOLYDRAW emr as EMR rclBounds as RECTL cptl as DWORD aptl(0 to 1-1) as POINTL abTypes(0 to 1-1) as UBYTE end type type PEMRPOLYDRAW as EMRPOLYDRAW ptr type EMRPOLYDRAW16 emr as EMR rclBounds as RECTL cpts as DWORD apts(0 to 1-1) as POINTS abTypes(0 to 1-1) as UBYTE end type type PEMRPOLYDRAW16 as EMRPOLYDRAW16 ptr type EMRPOLYLINE emr as EMR rclBounds as RECTL cptl as DWORD aptl(0 to 1-1) as POINTL end type type PEMRPOLYLINE as EMRPOLYLINE ptr type EMRPOLYBEZIER as EMRPOLYLINE type PEMRPOLYBEZIER as EMRPOLYLINE ptr type EMRPOLYGON as EMRPOLYLINE type PEMRPOLYGON as EMRPOLYLINE ptr type EMRPOLYBEZIERTO as EMRPOLYLINE type PEMRPOLYBEZIERTO as EMRPOLYLINE ptr type EMRPOLYLINETO as EMRPOLYLINE type PEMRPOLYLINETO as EMRPOLYLINE ptr type EMRPOLYLINE16 emr as EMR rclBounds as RECTL cpts as DWORD apts(0 to 1-1) as POINTL end type type PEMRPOLYLINE16 as EMRPOLYLINE16 ptr type EMRPOLYBEZIER16 as EMRPOLYLINE16 type PEMRPOLYBEZIER16 as EMRPOLYLINE16 ptr type EMRPOLYGON16 as EMRPOLYLINE16 type PEMRPOLYGON16 as EMRPOLYLINE16 ptr type EMRPOLYBEZIERTO16 as EMRPOLYLINE16 type PEMRPOLYBEZIERTO16 as EMRPOLYLINE16 ptr type EMRPOLYLINETO16 as EMRPOLYLINE16 type PEMRPOLYLINETO16 as EMRPOLYLINE16 ptr type EMRPOLYPOLYLINE emr as EMR rclBounds as RECTL nPolys as DWORD cptl as DWORD aPolyCounts(0 to 1-1) as DWORD aptl(0 to 1-1) as POINTL end type type PEMRPOLYPOLYLINE as EMRPOLYPOLYLINE ptr type EMRPOLYPOLYGON as EMRPOLYPOLYLINE type PEMRPOLYPOLYGON as EMRPOLYPOLYLINE ptr type EMRPOLYPOLYLINE16 emr as EMR rclBounds as RECTL nPolys as DWORD cpts as DWORD aPolyCounts(0 to 1-1) as DWORD apts(0 to 1-1) as POINTS end type type PEMRPOLYPOLYLINE16 as EMRPOLYPOLYLINE16 ptr type EMRPOLYPOLYGON16 as EMRPOLYPOLYLINE16 type PEMRPOLYPOLYGON16 as EMRPOLYPOLYLINE16 ptr type EMRPOLYTEXTOUTA emr as EMR rclBounds as RECTL iGraphicsMode as DWORD exScale as FLOAT eyScale as FLOAT cStrings as LONG aemrtext(0 to 1-1) as EMRTEXT end type type PEMRPOLYTEXTOUTA as EMRPOLYTEXTOUTA ptr type EMRPOLYTEXTOUTW as EMRPOLYTEXTOUTA type PEMRPOLYTEXTOUTW as EMRPOLYTEXTOUTA ptr type EMRRESIZEPALETTE emr as EMR ihPal as DWORD cEntries as DWORD end type type PEMRRESIZEPALETTE as EMRRESIZEPALETTE ptr type EMRRESTOREDC emr as EMR iRelative as LONG end type type PEMRRESTOREDC as EMRRESTOREDC ptr type EMRROUNDRECT emr as EMR rclBox as RECTL szlCorner as SIZEL end type type PEMRROUNDRECT as EMRROUNDRECT ptr type EMRSCALEVIEWPORTEXTEX emr as EMR xNum as LONG xDenom as LONG yNum as LONG yDenom as LONG end type type PEMRSCALEVIEWPORTEXTEX as EMRSCALEVIEWPORTEXTEX ptr type EMRSCALEWINDOWEXTEX as EMRSCALEVIEWPORTEXTEX type PEMRSCALEWINDOWEXTEX as EMRSCALEVIEWPORTEXTEX ptr type EMRSELECTCOLORSPACE emr as EMR ihCS as DWORD end type type PEMRSELECTCOLORSPACE as EMRSELECTCOLORSPACE ptr type EMRDELETECOLORSPACE as EMRSELECTCOLORSPACE type PEMRDELETECOLORSPACE as EMRSELECTCOLORSPACE ptr type EMRSELECTOBJECT emr as EMR ihObject as DWORD end type type PEMRSELECTOBJECT as EMRSELECTOBJECT ptr type EMRDELETEOBJECT as EMRSELECTOBJECT type PEMRDELETEOBJECT as EMRSELECTOBJECT ptr type EMRSELECTPALETTE emr as EMR ihPal as DWORD end type type PEMRSELECTPALETTE as EMRSELECTPALETTE ptr type EMRSETARCDIRECTION emr as EMR iArcDirection as DWORD end type type PEMRSETARCDIRECTION as EMRSETARCDIRECTION ptr type EMRSETTEXTCOLOR emr as EMR crColor as COLORREF end type type PEMRSETBKCOLOR as EMRSETTEXTCOLOR ptr type PEMRSETTEXTCOLOR as EMRSETTEXTCOLOR ptr type EMRSETCOLORADJUSTMENT emr as EMR ColorAdjustment as COLORADJUSTMENT end type type PEMRSETCOLORADJUSTMENT as EMRSETCOLORADJUSTMENT ptr type EMRSETDIBITSTODEVICE emr as EMR rclBounds as RECTL xDest as LONG yDest as LONG xSrc as LONG ySrc as LONG cxSrc as LONG cySrc as LONG offBmiSrc as DWORD cbBmiSrc as DWORD offBitsSrc as DWORD cbBitsSrc as DWORD iUsageSrc as DWORD iStartScan as DWORD cScans as DWORD end type type PEMRSETDIBITSTODEVICE as EMRSETDIBITSTODEVICE ptr type EMRSETMAPPERFLAGS emr as EMR dwFlags as DWORD end type type PEMRSETMAPPERFLAGS as EMRSETMAPPERFLAGS ptr type EMRSETMITERLIMIT emr as EMR eMiterLimit as FLOAT end type type PEMRSETMITERLIMIT as EMRSETMITERLIMIT ptr type EMRSETPALETTEENTRIES emr as EMR ihPal as DWORD iStart as DWORD cEntries as DWORD aPalEntries(0 to 1-1) as PALETTEENTRY end type type PEMRSETPALETTEENTRIES as EMRSETPALETTEENTRIES ptr type EMRSETPIXELV emr as EMR ptlPixel as POINTL crColor as COLORREF end type type PEMRSETPIXELV as EMRSETPIXELV ptr type EMRSETVIEWPORTEXTEX emr as EMR szlExtent as SIZEL end type type PEMRSETVIEWPORTEXTEX as EMRSETVIEWPORTEXTEX ptr type EMRSETWINDOWEXTEX as EMRSETVIEWPORTEXTEX type PEMRSETWINDOWEXTEX as EMRSETVIEWPORTEXTEX ptr type EMRSETVIEWPORTORGEX emr as EMR ptlOrigin as POINTL end type type PEMRSETVIEWPORTORGEX as EMRSETVIEWPORTORGEX ptr type EMRSETWINDOWORGEX as EMRSETVIEWPORTORGEX type PEMRSETWINDOWORGEX as EMRSETVIEWPORTORGEX ptr type EMRSETBRUSHORGEX as EMRSETVIEWPORTORGEX type PEMRSETBRUSHORGEX as EMRSETVIEWPORTORGEX ptr type EMRSETWORLDTRANSFORM emr as EMR xform as XFORM end type type PEMRSETWORLDTRANSFORM as EMRSETWORLDTRANSFORM ptr type EMRSTRETCHBLT emr as EMR rclBounds as RECTL xDest as LONG yDest as LONG cxDest as LONG cyDest as LONG dwRop as DWORD xSrc as LONG ySrc as LONG xformSrc as XFORM crBkColorSrc as COLORREF iUsageSrc as DWORD offBmiSrc as DWORD cbBmiSrc as DWORD offBitsSrc as DWORD cbBitsSrc as DWORD cxSrc as LONG cySrc as LONG end type type PEMRSTRETCHBLT as EMRSTRETCHBLT ptr type EMRSTRETCHDIBITS emr as EMR rclBounds as RECTL xDest as LONG yDest as LONG xSrc as LONG ySrc as LONG cxSrc as LONG cySrc as LONG offBmiSrc as DWORD cbBmiSrc as DWORD offBitsSrc as DWORD cbBitsSrc as DWORD iUsageSrc as DWORD dwRop as DWORD cxDest as LONG cyDest as LONG end type type PEMRSTRETCHDIBITS as EMRSTRETCHDIBITS ptr type ABORTPATH emr as EMR end type type PEMRABORTPATH as ABORTPATH ptr type EMRBEGINPATH as ABORTPATH type PEMRBEGINPATH as ABORTPATH ptr type EMRENDPATH as ABORTPATH type PEMRENDPATH as ABORTPATH ptr type EMRCLOSEFIGURE as ABORTPATH type PEMRCLOSEFIGURE as ABORTPATH ptr type EMRFLATTENPATH as ABORTPATH type PEMRFLATTENPATH as ABORTPATH ptr type EMRWIDENPATH as ABORTPATH type PEMRWIDENPATH as ABORTPATH ptr type EMRSETMETARGN as ABORTPATH type PEMRSETMETARGN as ABORTPATH ptr type EMRSAVEDC as ABORTPATH type PEMRSAVEDC as ABORTPATH ptr type EMRREALIZEPALETTE as ABORTPATH type PEMRREALIZEPALETTE as ABORTPATH ptr type EMRSELECTCLIPPATH emr as EMR iMode as DWORD end type type PEMRSELECTCLIPPATH as EMRSELECTCLIPPATH ptr type EMRSETBKMODE as EMRSELECTCLIPPATH type PEMRSETBKMODE as EMRSELECTCLIPPATH ptr type EMRSETMAPMODE as EMRSELECTCLIPPATH type PEMRSETMAPMODE as EMRSELECTCLIPPATH ptr type EMRSETPOLYFILLMODE as EMRSELECTCLIPPATH type PEMRSETPOLYFILLMODE as EMRSELECTCLIPPATH ptr type EMRSETROP2 as EMRSELECTCLIPPATH type PEMRSETROP2 as EMRSELECTCLIPPATH ptr type EMRSETSTRETCHBLTMODE as EMRSELECTCLIPPATH type PEMRSETSTRETCHBLTMODE as EMRSELECTCLIPPATH ptr type EMRSETTEXTALIGN as EMRSELECTCLIPPATH type PEMRSETTEXTALIGN as EMRSELECTCLIPPATH ptr type EMRENABLEICM as EMRSELECTCLIPPATH type PEMRENABLEICM as EMRSELECTCLIPPATH ptr type METAHEADER field=2 mtType as WORD mtHeaderSize as WORD mtVersion as WORD mtSize as DWORD mtNoObjects as WORD mtMaxRecord as DWORD mtNoParameters as WORD end type type PMETAHEADER as METAHEADER ptr type LPMETAHEADER as METAHEADER ptr type ENHMETAHEADER iType as DWORD nSize as DWORD rclBounds as RECTL rclFrame as RECTL dSignature as DWORD nVersion as DWORD nBytes as DWORD nRecords as DWORD nHandles as WORD sReserved as WORD nDescription as DWORD offDescription as DWORD nPalEntries as DWORD szlDevice as SIZEL szlMillimeters as SIZEL #if (WINVER >= &h0400) cbPixelFormat as DWORD offPixelFormat as DWORD bOpenGL as DWORD #endif #if (WINVER >= &h0500) szlMicrometers as SIZEL #endif end type type LPENHMETAHEADER as ENHMETAHEADER ptr type METARECORD rdSize as DWORD rdFunction as WORD rdParm(0 to 1-1) as WORD end type type PMETARECORD as METARECORD ptr type LPMETARECORD as METARECORD ptr type ENHMETARECORD iType as DWORD nSize as DWORD dParm(0 to 1-1) as DWORD end type type LPENHMETARECORD as ENHMETARECORD ptr type HANDLETABLE objectHandle(0 to 1-1) as HGDIOBJ end type type LPHANDLETABLE as HANDLETABLE ptr #ifndef UNICODE type TEXTMETRICA tmHeight as LONG tmAscent as LONG tmDescent as LONG tmInternalLeading as LONG tmExternalLeading as LONG tmAveCharWidth as LONG tmMaxCharWidth as LONG tmWeight as LONG tmOverhang as LONG tmDigitizedAspectX as LONG tmDigitizedAspectY as LONG tmFirstChar as UBYTE tmLastChar as UBYTE tmDefaultChar as UBYTE tmBreakChar as UBYTE tmItalic as UBYTE tmUnderlined as UBYTE tmStruckOut as UBYTE tmPitchAndFamily as UBYTE tmCharSet as UBYTE end type type PTEXTMETRICA as TEXTMETRICA ptr type LPTEXTMETRICA as TEXTMETRICA ptr #else ''UNICODE type TEXTMETRICW tmHeight as LONG tmAscent as LONG tmDescent as LONG tmInternalLeading as LONG tmExternalLeading as LONG tmAveCharWidth as LONG tmMaxCharWidth as LONG tmWeight as LONG tmOverhang as LONG tmDigitizedAspectX as LONG tmDigitizedAspectY as LONG tmFirstChar as WCHAR tmLastChar as WCHAR tmDefaultChar as WCHAR tmBreakChar as WCHAR tmItalic as UBYTE tmUnderlined as UBYTE tmStruckOut as UBYTE tmPitchAndFamily as UBYTE tmCharSet as UBYTE end type type PTEXTMETRICW as TEXTMETRICW ptr type LPTEXTMETRICW as TEXTMETRICW ptr #endif ''UNICODE type RGNDATAHEADER dwSize as DWORD iType as DWORD nCount as DWORD nRgnSize as DWORD rcBound as RECT end type type RGNDATA rdh as RGNDATAHEADER Buffer as zstring * 1 end type type PRGNDATA as RGNDATA ptr type LPRGNDATA as RGNDATA ptr #define SYSRGN 4 #ifndef UNICODE type GCP_RESULTSA lStructSize as DWORD lpOutString as LPSTR lpOrder as UINT ptr lpDx as INT_ ptr lpCaretPos as INT_ ptr lpClass as LPSTR lpGlyphs as LPWSTR nGlyphs as UINT nMaxFit as UINT end type type LPGCP_RESULTSA as GCP_RESULTSA ptr #else ''UNICODE type GCP_RESULTSW lStructSize as DWORD lpOutString as LPWSTR lpOrder as UINT ptr lpDx as INT_ ptr lpCaretPos as INT_ ptr lpClass as LPWSTR lpGlyphs as LPWSTR nGlyphs as UINT nMaxFit as UINT end type type LPGCP_RESULTSW as GCP_RESULTSW ptr #endif ''UNICODE type GLYPHMETRICS gmBlackBoxX as UINT gmBlackBoxY as UINT gmptGlyphOrigin as POINT gmCellIncX as short gmCellIncY as short end type type LPGLYPHMETRICS as GLYPHMETRICS ptr type WCRANGE wcLow as WCHAR cGlyphs as USHORT end type type PWCRANGE as WCRANGE ptr type LPWCRANGE as WCRANGE ptr type GLYPHSET cbThis as DWORD flAccel as DWORD cGlyphsSupported as DWORD cRanges as DWORD ranges(0 to 1-1) as WCRANGE end type type PGLYPHSET as GLYPHSET ptr type LPGLYPHSET as GLYPHSET ptr type KERNINGPAIR wFirst as WORD wSecond as WORD iKernAmount as integer end type type LPKERNINGPAIR as KERNINGPAIR ptr type FIXED fract as WORD value as short end type type MAT2 eM11 as FIXED eM12 as FIXED eM21 as FIXED eM22 as FIXED end type type LPMAT2 as MAT2 ptr #ifndef UNICODE type OUTLINETEXTMETRICA otmSize as UINT otmTextMetrics as TEXTMETRICA otmFiller as UBYTE otmPanoseNumber as PANOSE otmfsSelection as UINT otmfsType as UINT otmsCharSlopeRise as integer otmsCharSlopeRun as integer otmItalicAngle as integer otmEMSquare as UINT otmAscent as integer otmDescent as integer otmLineGap as UINT otmsCapEmHeight as UINT otmsXHeight as UINT otmrcFontBox as RECT otmMacAscent as integer otmMacDescent as integer otmMacLineGap as UINT otmusMinimumPPEM as UINT otmptSubscriptSize as POINT otmptSubscriptOffset as POINT otmptSuperscriptSize as POINT otmptSuperscriptOffset as POINT otmsStrikeoutSize as UINT otmsStrikeoutPosition as integer otmsUnderscoreSize as integer otmsUnderscorePosition as integer otmpFamilyName as PSTR otmpFaceName as PSTR otmpStyleName as PSTR otmpFullName as PSTR end type type POUTLINETEXTMETRICA as OUTLINETEXTMETRICA ptr type LPOUTLINETEXTMETRICA as OUTLINETEXTMETRICA ptr #else ''UNICODE type OUTLINETEXTMETRICW otmSize as UINT otmTextMetrics as TEXTMETRICW otmFiller as UBYTE otmPanoseNumber as PANOSE otmfsSelection as UINT otmfsType as UINT otmsCharSlopeRise as integer otmsCharSlopeRun as integer otmItalicAngle as integer otmEMSquare as UINT otmAscent as integer otmDescent as integer otmLineGap as UINT otmsCapEmHeight as UINT otmsXHeight as UINT otmrcFontBox as RECT otmMacAscent as integer otmMacDescent as integer otmMacLineGap as UINT otmusMinimumPPEM as UINT otmptSubscriptSize as POINT otmptSubscriptOffset as POINT otmptSuperscriptSize as POINT otmptSuperscriptOffset as POINT otmsStrikeoutSize as UINT otmsStrikeoutPosition as integer otmsUnderscoreSize as integer otmsUnderscorePosition as integer otmpFamilyName as PSTR otmpFaceName as PSTR otmpStyleName as PSTR otmpFullName as PSTR end type type POUTLINETEXTMETRICW as OUTLINETEXTMETRICW ptr type LPOUTLINETEXTMETRICW as OUTLINETEXTMETRICW ptr #endif ''UNICODE type RASTERIZER_STATUS nSize as short wFlags as short nLanguageID as short end type type LPRASTERIZER_STATUS as RASTERIZER_STATUS ptr #ifndef UNICODE type POLYTEXTA x as integer y as integer n as UINT lpstr as LPCSTR uiFlags as UINT rcl as RECT pdx as integer ptr end type type PPOLYTEXTA as POLYTEXTA ptr #else ''UNICODE type POLYTEXTW x as integer y as integer n as UINT lpstr as LPCWSTR uiFlags as UINT rcl as RECT pdx as integer ptr end type type PPOLYTEXTW as POLYTEXTW ptr #endif ''UNICODE type PIXELFORMATDESCRIPTOR nSize as WORD nVersion as WORD dwFlags as DWORD iPixelType as UBYTE cColorBits as UBYTE cRedBits as UBYTE cRedShift as UBYTE cGreenBits as UBYTE cGreenShift as UBYTE cBlueBits as UBYTE cBlueShift as UBYTE cAlphaBits as UBYTE cAlphaShift as UBYTE cAccumBits as UBYTE cAccumRedBits as UBYTE cAccumGreenBits as UBYTE cAccumBlueBits as UBYTE cAccumAlphaBits as UBYTE cDepthBits as UBYTE cStencilBits as UBYTE cAuxBuffers as UBYTE iLayerType as UBYTE bReserved as UBYTE dwLayerMask as DWORD dwVisibleMask as DWORD dwDamageMask as DWORD end type type PPIXELFORMATDESCRIPTOR as PIXELFORMATDESCRIPTOR ptr type LPPIXELFORMATDESCRIPTOR as PIXELFORMATDESCRIPTOR ptr type METAFILEPICT mm as LONG xExt as LONG yExt as LONG hMF as HMETAFILE end type type LPMETAFILEPICT as METAFILEPICT ptr type LOCALESIGNATURE lsUsb(0 to 4-1) as DWORD lsCsbDefault(0 to 2-1) as DWORD lsCsbSupported(0 to 2-1) as DWORD end type type PLOCALESIGNATURE as LOCALESIGNATURE ptr type LPLOCALESIGNATURE as LOCALESIGNATURE ptr type LCSTYPE as LONG #ifndef UNICODE type NEWTEXTMETRICA tmHeight as LONG tmAscent as LONG tmDescent as LONG tmInternalLeading as LONG tmExternalLeading as LONG tmAveCharWidth as LONG tmMaxCharWidth as LONG tmWeight as LONG tmOverhang as LONG tmDigitizedAspectX as LONG tmDigitizedAspectY as LONG tmFirstChar as UBYTE tmLastChar as UBYTE tmDefaultChar as UBYTE tmBreakChar as UBYTE tmItalic as UBYTE tmUnderlined as UBYTE tmStruckOut as UBYTE tmPitchAndFamily as UBYTE tmCharSet as UBYTE ntmFlags as DWORD ntmSizeEM as UINT ntmCellHeight as UINT ntmAvgWidth as UINT end type type PNEWTEXTMETRICA as NEWTEXTMETRICA ptr type LPNEWTEXTMETRICA as NEWTEXTMETRICA ptr #else ''UNICODE type NEWTEXTMETRICW tmHeight as LONG tmAscent as LONG tmDescent as LONG tmInternalLeading as LONG tmExternalLeading as LONG tmAveCharWidth as LONG tmMaxCharWidth as LONG tmWeight as LONG tmOverhang as LONG tmDigitizedAspectX as LONG tmDigitizedAspectY as LONG tmFirstChar as WCHAR tmLastChar as WCHAR tmDefaultChar as WCHAR tmBreakChar as WCHAR tmItalic as UBYTE tmUnderlined as UBYTE tmStruckOut as UBYTE tmPitchAndFamily as UBYTE tmCharSet as UBYTE ntmFlags as DWORD ntmSizeEM as UINT ntmCellHeight as UINT ntmAvgWidth as UINT end type type PNEWTEXTMETRICW as NEWTEXTMETRICW ptr type LPNEWTEXTMETRICW as NEWTEXTMETRICW ptr #endif ''UNICODE #ifndef UNICODE type NEWTEXTMETRICEXA ntmTm as NEWTEXTMETRICA ntmFontSig as FONTSIGNATURE end type #else ''UNICODE type NEWTEXTMETRICEXW ntmTm as NEWTEXTMETRICW ntmFontSig as FONTSIGNATURE end type #endif ''UNICODE type PELARRAY paXCount as LONG paYCount as LONG paXExt as LONG paYExt as LONG paRGBs as UBYTE end type type PPELARRAY as PELARRAY ptr type LPPELARRAY as PELARRAY ptr #ifndef UNICODE type ENUMLOGFONTA elfLogFont as LOGFONTA elfFullName(0 to 64-1) as UBYTE elfStyle(0 to 32-1) as UBYTE end type type LPENUMLOGFONTA as ENUMLOGFONTA ptr #else ''UNICODE type ENUMLOGFONTW elfLogFont as LOGFONTW elfFullName as wstring * 64 elfStyle as wstring * 32 end type type LPENUMLOGFONTW as ENUMLOGFONTW ptr #endif ''UNICODE #ifndef UNICODE type ENUMLOGFONTEXA elfLogFont as LOGFONTA elfFullName(0 to 64-1) as UBYTE elfStyle(0 to 32-1) as UBYTE elfScript(0 to 32-1) as UBYTE end type type LPENUMLOGFONTEXA as ENUMLOGFONTEXA ptr #else ''UNICODE type ENUMLOGFONTEXW elfLogFont as LOGFONTW elfFullName as wstring * 64 elfStyle(0 to 32-1) as UBYTE elfScript(0 to 32-1) as UBYTE end type type LPENUMLOGFONTEXW as ENUMLOGFONTEXW ptr #endif ''UNICODE type POINTFX x as FIXED y as FIXED end type type LPPOINTFX as POINTFX ptr type TTPOLYCURVE wType as WORD cpfx as WORD apfx(0 to 1-1) as POINTFX end type type LPTTPOLYCURVE as TTPOLYCURVE ptr type TTPOLYGONHEADER cb as DWORD dwType as DWORD pfxStart as POINTFX end type type LPTTPOLYGONHEADER as TTPOLYGONHEADER ptr type POINTFLOAT x as FLOAT y as FLOAT end type type PPOINTFLOAT as POINTFLOAT ptr type GLYPHMETRICSFLOAT gmfBlackBoxX as FLOAT gmfBlackBoxY as FLOAT gmfptGlyphOrigin as POINTFLOAT gmfCellIncX as FLOAT gmfCellIncY as FLOAT end type type PGLYPHMETRICSFLOAT as GLYPHMETRICSFLOAT ptr type LPGLYPHMETRICSFLOAT as GLYPHMETRICSFLOAT ptr type LAYERPLANEDESCRIPTOR nSize as WORD nVersion as WORD dwFlags as DWORD iPixelType as UBYTE cColorBits as UBYTE cRedBits as UBYTE cRedShift as UBYTE cGreenBits as UBYTE cGreenShift as UBYTE cBlueBits as UBYTE cBlueShift as UBYTE cAlphaBits as UBYTE cAlphaShift as UBYTE cAccumBits as UBYTE cAccumRedBits as UBYTE cAccumGreenBits as UBYTE cAccumBlueBits as UBYTE cAccumAlphaBits as UBYTE cDepthBits as UBYTE cStencilBits as UBYTE cAuxBuffers as UBYTE iLayerPlane as UBYTE bReserved as UBYTE crTransparent as COLORREF end type type PLAYERPLANEDESCRIPTOR as LAYERPLANEDESCRIPTOR ptr type LPLAYERPLANEDESCRIPTOR as LAYERPLANEDESCRIPTOR ptr type BLENDFUNCTION BlendOp as UBYTE BlendFlags as UBYTE SourceConstantAlpha as UBYTE AlphaFormat as UBYTE end type type PBLENDFUNCTION as BLENDFUNCTION ptr type LPBLENDFUNCTION as BLENDFUNCTION ptr #define MM_MAX_NUMAXES 16 type DESIGNVECTOR dvReserved as DWORD dvNumAxes as DWORD dvValues(0 to 16-1) as LONG end type type PDESIGNVECTOR as DESIGNVECTOR ptr type LPDESIGNVECTOR as DESIGNVECTOR ptr #ifndef UNICODE #if _WIN32_WINNT >= &h0500 type ENUMLOGFONTEXDVA elfEnumLogfontEx as ENUMLOGFONTEXA elfDesignVector as DESIGNVECTOR end type type PENUMLOGFONTEXDVA as ENUMLOGFONTEXDVA ptr type LPENUMLOGFONTEXDVA as ENUMLOGFONTEXDVA ptr #else type ENUMLOGFONTEXDVW elfEnumLogfontEx as ENUMLOGFONTEXW elfDesignVector as DESIGNVECTOR end type type PENUMLOGFONTEXDVW as ENUMLOGFONTEXDVW ptr type LPENUMLOGFONTEXDVW as ENUMLOGFONTEXDVW ptr #endif #endif type COLOR16 as USHORT type TRIVERTEX x as LONG y as LONG Red as COLOR16 Green as COLOR16 Blue as COLOR16 Alpha as COLOR16 end type type PTRIVERTEX as TRIVERTEX ptr type LPTRIVERTEX as TRIVERTEX ptr type GRADIENT_TRIANGLE Vertex1 as ULONG Vertex2 as ULONG Vertex3 as ULONG end type type PGRADIENT_TRIANGLE as GRADIENT_TRIANGLE ptr type LPGRADIENT_TRIANGLE as GRADIENT_TRIANGLE ptr type GRADIENT_RECT UpperLeft as ULONG LowerRight as ULONG end type type PGRADIENT_RECT as GRADIENT_RECT ptr type LPGRADIENT_RECT as GRADIENT_RECT ptr #ifndef UNICODE type DISPLAY_DEVICEA cb as DWORD DeviceName as zstring * 32 DeviceString as zstring * 128 StateFlags as DWORD DeviceID as zstring * 128 DeviceKey as zstring * 128 end type type PDISPLAY_DEVICEA as DISPLAY_DEVICEA ptr type LPDISPLAY_DEVICEA as DISPLAY_DEVICEA ptr #else ''UNICODE type DISPLAY_DEVICEW cb as DWORD DeviceName as wstring * 32 DeviceString as wstring * 128 StateFlags as DWORD DeviceID as wstring * 128 DeviceKey as wstring * 128 end type type PDISPLAY_DEVICEW as DISPLAY_DEVICEW ptr type LPDISPLAY_DEVICEW as DISPLAY_DEVICEW ptr #endif ''UNICODE #define DISPLAY_DEVICE_ATTACHED_TO_DESKTOP &h00000001 #define DISPLAY_DEVICE_MULTI_DRIVER &h00000002 #define DISPLAY_DEVICE_PRIMARY_DEVICE &h00000004 #define DISPLAY_DEVICE_MIRRORING_DRIVER &h00000008 #define DISPLAY_DEVICE_VGA_COMPATIBLE &h00000010 type ABORTPROC as function (byval as HDC, byval as integer) as BOOL type MFENUMPROC as function (byval as HDC, byval as HANDLETABLE ptr, byval as METARECORD ptr, byval as integer, byval as LPARAM) as integer type ENHMFENUMPROC as function (byval as HDC, byval as HANDLETABLE ptr, byval as const ENHMETARECORD ptr, byval as integer, byval as LPARAM) as integer type GOBJENUMPROC as sub (byval as LPVOID, byval as LPARAM) type LINEDDAPROC as sub (byval as integer, byval as integer, byval as LPARAM) #ifndef UNICODE type LPFNDEVMODE as function (byval as HWND, byval as HMODULE, byval as LPDEVMODEA, byval as LPSTR, byval as LPSTR, byval as LPDEVMODEA, byval as LPSTR, byval as UINT) as UINT type LPFNDEVCAPS as function (byval as LPSTR, byval as LPSTR, byval as UINT, byval as LPSTR, byval as LPDEVMODEA) as DWORD type OLDFONTENUMPROCA as function (byval as const LOGFONTA ptr, byval as const TEXTMETRICA ptr, byval as DWORD, byval as LPARAM) as integer type FONTENUMPROCA as OLDFONTENUMPROCA type ICMENUMPROCA as function (byval as LPSTR, byval as LPARAM) as integer #else ''UNICODE type LPFNDEVMODE as function (byval as HWND, byval as HMODULE, byval as LPDEVMODEW, byval as LPWSTR, byval as LPWSTR, byval as LPDEVMODEW, byval as LPWSTR, byval as UINT) as UINT type LPFNDEVCAPS as function (byval as LPWSTR, byval as LPWSTR, byval as UINT, byval as LPWSTR, byval as LPDEVMODEW) as DWORD type OLDFONTENUMPROCW as function (byval as const LOGFONTW ptr, byval as const TEXTMETRICW ptr, byval as DWORD, byval as LPARAM) as integer type FONTENUMPROCW as OLDFONTENUMPROCW type ICMENUMPROCW as function (byval as LPWSTR, byval as LPARAM) as integer #endif ''UNICODE #define BGR(r,g,b) (cuint(r) or (cuint(g) shl 8) or (cuint(b) shl 16)) #define BGRA(r,g,b,a) (cuint(r) or (cuint(g) shl 8) or (cuint(b) shl 16) or (cuint(a) shl 24)) #define MAKEPOINTS(l) *cptr( POINTS ptr, @(l) ) #define MAKEROP4(f,b) cuint((((b) shl 8) and &hFF000000) or (f)) #define PALETTEINDEX(i) (&h01000000 or cuint(i)) #define PALETTERGB(r,g,b) (&h02000000 or BGR(r,g,b)) extern "windows" lib "gdi32" declare function AbortDoc (byval as HDC) as integer declare function AbortPath (byval as HDC) as BOOL #if (_WIN32_WINNT >= &h0500) declare function AddFontMemResourceEx (byval as PVOID, byval as DWORD, byval as PVOID, byval as DWORD ptr) as HANDLE #endif declare function AngleArc (byval as HDC, byval as integer, byval as integer, byval as DWORD, byval as FLOAT, byval as FLOAT) as BOOL declare function AnimatePalette (byval as HPALETTE, byval as UINT, byval as UINT, byval as const PALETTEENTRY ptr) as BOOL declare function Arc (byval as HDC, byval as integer, byval as integer, byval as integer, byval as integer, byval as integer, byval as integer, byval as integer, byval as integer) as BOOL declare function ArcTo (byval as HDC, byval as integer, byval as integer, byval as integer, byval as integer, byval as integer, byval as integer, byval as integer, byval as integer) as BOOL declare function BeginPath (byval as HDC) as BOOL declare function BitBlt (byval as HDC, byval as integer, byval as integer, byval as integer, byval as integer, byval as HDC, byval as integer, byval as integer, byval as DWORD) as BOOL declare function CancelDC (byval as HDC) as BOOL declare function CheckColorsInGamut (byval as HDC, byval as PVOID, byval as PVOID, byval as DWORD) as BOOL declare function Chord (byval as HDC, byval as integer, byval as integer, byval as integer, byval as integer, byval as integer, byval as integer, byval as integer, byval as integer) as BOOL declare function ChoosePixelFormat (byval as HDC, byval as const PIXELFORMATDESCRIPTOR ptr) as integer declare function CloseEnhMetaFile (byval as HDC) as HENHMETAFILE declare function CloseFigure (byval as HDC) as BOOL declare function CloseMetaFile (byval as HDC) as HMETAFILE #if (_WIN32_WINDOWS >= &h0410 or _WIN32_WINNT >= &h0500) declare function ColorCorrectPalette (byval as HDC, byval as HPALETTE, byval as DWORD, byval as DWORD) as BOOL declare function ColorMatchToTarget (byval as HDC, byval as HDC, byval as DWORD) as BOOL #endif declare function CombineRgn (byval as HRGN, byval as HRGN, byval as HRGN, byval as integer) as integer declare function CombineTransform (byval as LPXFORM, byval as const XFORM ptr, byval as const XFORM ptr) as BOOL declare function CreateBitmap (byval as integer, byval as integer, byval as UINT, byval as UINT, byval as PCVOID) as HBITMAP declare function CreateBitmapIndirect (byval as const BITMAP ptr) as HBITMAP declare function CreateBrushIndirect (byval as const LOGBRUSH ptr) as HBRUSH declare function CreateCompatibleBitmap (byval as HDC, byval as integer, byval as integer) as HBITMAP declare function CreateCompatibleDC (byval as HDC) as HDC declare function CreateDIBitmap (byval as HDC, byval as const BITMAPINFOHEADER ptr, byval as DWORD, byval as PCVOID, byval as const BITMAPINFO ptr, byval as UINT) as HBITMAP declare function CreateDIBPatternBrush (byval as HGLOBAL, byval as UINT) as HBRUSH declare function CreateDIBPatternBrushPt (byval as PCVOID, byval as UINT) as HBRUSH declare function CreateDIBSection (byval as HDC, byval as const BITMAPINFO ptr, byval as UINT, byval as any ptr ptr, byval as HANDLE, byval as DWORD) as HBITMAP declare function CreateDiscardableBitmap (byval as HDC, byval as integer, byval as integer) as HBITMAP declare function CreateEllipticRgn (byval as integer, byval as integer, byval as integer, byval as integer) as HRGN declare function CreateEllipticRgnIndirect (byval as LPCRECT) as HRGN declare function CreateHalftonePalette (byval as HDC) as HPALETTE declare function CreateHatchBrush (byval as integer, byval as COLORREF) as HBRUSH declare function CreatePalette (byval as const LOGPALETTE ptr) as HPALETTE declare function CreatePatternBrush (byval as HBITMAP) as HBRUSH declare function CreatePen (byval as integer, byval as integer, byval as COLORREF) as HPEN declare function CreatePenIndirect (byval as const LOGPEN ptr) as HPEN declare function CreatePolygonRgn (byval as const POINT ptr, byval as integer, byval as integer) as HRGN declare function CreatePolyPolygonRgn (byval as const POINT ptr, byval as const INT_ ptr, byval as integer, byval as integer) as HRGN declare function CreateRectRgn (byval as integer, byval as integer, byval as integer, byval as integer) as HRGN declare function CreateRectRgnIndirect (byval as LPCRECT) as HRGN declare function CreateRoundRectRgn (byval as integer, byval as integer, byval as integer, byval as integer, byval as integer, byval as integer) as HRGN declare function CreateSolidBrush (byval as COLORREF) as HBRUSH declare function DeleteColorSpace (byval as HCOLORSPACE) as BOOL declare function DeleteDC (byval as HDC) as BOOL declare function DeleteEnhMetaFile (byval as HENHMETAFILE) as BOOL declare function DeleteMetaFile (byval as HMETAFILE) as BOOL declare function DeleteObject (byval as HGDIOBJ) as BOOL declare function DescribePixelFormat (byval as HDC, byval as integer, byval as UINT, byval as LPPIXELFORMATDESCRIPTOR) as integer declare function DPtoLP (byval as HDC, byval as LPPOINT, byval as integer) as BOOL declare function DrawEscape (byval as HDC, byval as integer, byval as integer, byval as LPCSTR) as integer declare function Ellipse (byval as HDC, byval as integer, byval as integer, byval as integer, byval as integer) as BOOL declare function EndDoc (byval as HDC) as integer declare function EndPage (byval as HDC) as integer declare function EndPath (byval as HDC) as BOOL declare function EnumEnhMetaFile (byval as HDC, byval as HENHMETAFILE, byval as ENHMFENUMPROC, byval as PVOID, byval as LPCRECT) as BOOL declare function EnumMetaFile (byval as HDC, byval as HMETAFILE, byval as MFENUMPROC, byval as LPARAM) as BOOL declare function EnumObjects (byval as HDC, byval as integer, byval as GOBJENUMPROC, byval as LPARAM) as integer declare function EqualRgn (byval as HRGN, byval as HRGN) as BOOL declare function Escape (byval as HDC, byval as integer, byval as integer, byval as LPCSTR, byval as PVOID) as integer declare function ExcludeClipRect (byval as HDC, byval as integer, byval as integer, byval as integer, byval as integer) as integer declare function ExcludeUpdateRgn (byval as HDC, byval as HWND) as integer declare function ExtCreatePen (byval as DWORD, byval as DWORD, byval as const LOGBRUSH ptr, byval as DWORD, byval as const DWORD ptr) as HPEN declare function ExtCreateRegion (byval as const XFORM ptr, byval as DWORD, byval as const RGNDATA ptr) as HRGN declare function ExtEscape (byval as HDC, byval as integer, byval as integer, byval as LPCSTR, byval as integer, byval as LPSTR) as integer declare function ExtFloodFill (byval as HDC, byval as integer, byval as integer, byval as COLORREF, byval as UINT) as BOOL declare function ExtSelectClipRgn (byval as HDC, byval as HRGN, byval as integer) as integer declare function FillPath (byval as HDC) as BOOL declare function FillRect (byval as HDC, byval as LPCRECT, byval as HBRUSH) as integer declare function FillRgn (byval as HDC, byval as HRGN, byval as HBRUSH) as integer declare function FixBrushOrgEx (byval as HDC, byval as integer, byval as integer, byval as LPPOINT) as BOOL declare function FlattenPath (byval as HDC) as BOOL declare function FloodFill (byval as HDC, byval as integer, byval as integer, byval as COLORREF) as BOOL declare function GdiComment (byval as HDC, byval as UINT, byval as const UBYTE ptr) as BOOL declare function GdiFlush () as BOOL declare function GdiGetBatchLimit () as DWORD declare function GdiSetBatchLimit (byval as DWORD) as DWORD declare function GetArcDirection (byval as HDC) as integer declare function GetAspectRatioFilterEx (byval as HDC, byval as LPSIZE) as BOOL declare function GetBitmapBits (byval as HBITMAP, byval as LONG, byval as PVOID) as LONG declare function GetBitmapDimensionEx (byval as HBITMAP, byval as LPSIZE) as BOOL declare function GetBkColor (byval as HDC) as COLORREF declare function GetBkMode (byval as HDC) as integer declare function GetBoundsRect (byval as HDC, byval as LPRECT, byval as UINT) as UINT declare function GetBrushOrgEx (byval as HDC, byval as LPPOINT) as BOOL declare function GetClipBox (byval as HDC, byval as LPRECT) as integer declare function GetClipRgn (byval as HDC, byval as HRGN) as integer declare function GetColorAdjustment (byval as HDC, byval as LPCOLORADJUSTMENT) as BOOL declare function GetColorSpace (byval as HDC) as HANDLE declare function GetCurrentObject (byval as HDC, byval as UINT) as HGDIOBJ declare function GetCurrentPositionEx (byval as HDC, byval as LPPOINT) as BOOL declare function GetCursor () as HCURSOR #if (WINVER >= &h0500) declare function GetDCBrushColor (byval as HDC) as COLORREF declare function GetDCPenColor (byval as HDC) as COLORREF #endif declare function GetDCOrgEx (byval as HDC, byval as LPPOINT) as BOOL declare function GetDeviceCaps (byval as HDC, byval as integer) as integer declare function GetDeviceGammaRamp (byval as HDC, byval as PVOID) as BOOL declare function GetDIBColorTable (byval as HDC, byval as UINT, byval as UINT, byval as RGBQUAD ptr) as UINT declare function GetDIBits (byval as HDC, byval as HBITMAP, byval as UINT, byval as UINT, byval as PVOID, byval as LPBITMAPINFO, byval as UINT) as integer declare function GetEnhMetaFileBits (byval as HENHMETAFILE, byval as UINT, byval as LPBYTE) as UINT declare function GetEnhMetaFileHeader (byval as HENHMETAFILE, byval as UINT, byval as LPENHMETAHEADER) as UINT declare function GetEnhMetaFilePaletteEntries (byval as HENHMETAFILE, byval as UINT, byval as LPPALETTEENTRY) as UINT declare function GetEnhMetaFilePixelFormat (byval as HENHMETAFILE, byval as DWORD, byval as const PIXELFORMATDESCRIPTOR ptr) as UINT declare function GetFontData (byval as HDC, byval as DWORD, byval as DWORD, byval as PVOID, byval as DWORD) as DWORD declare function GetFontLanguageInfo (byval as HDC) as DWORD declare function GetGraphicsMode (byval as HDC) as integer declare function GetMapMode (byval as HDC) as integer declare function GetMetaFileBitsEx (byval as HMETAFILE, byval as UINT, byval as PVOID) as UINT declare function GetMetaRgn (byval as HDC, byval as HRGN) as integer declare function GetMiterLimit (byval as HDC, byval as PFLOAT) as BOOL declare function GetNearestColor (byval as HDC, byval as COLORREF) as COLORREF declare function GetNearestPaletteIndex (byval as HPALETTE, byval as COLORREF) as UINT declare function GetObjectType (byval as HGDIOBJ) as DWORD declare function GetPaletteEntries (byval as HPALETTE, byval as UINT, byval as UINT, byval as LPPALETTEENTRY) as UINT declare function GetPath (byval as HDC, byval as LPPOINT, byval as PBYTE, byval as integer) as integer declare function GetPixel (byval as HDC, byval as integer, byval as integer) as COLORREF declare function GetPixelFormat (byval as HDC) as integer declare function GetPolyFillMode (byval as HDC) as integer declare function GetRasterizerCaps (byval as LPRASTERIZER_STATUS, byval as UINT) as BOOL declare function GetRandomRgn (byval as HDC, byval as HRGN, byval as INT_) as integer declare function GetRegionData (byval as HRGN, byval as DWORD, byval as LPRGNDATA) as DWORD declare function GetRgnBox (byval as HRGN, byval as LPRECT) as integer declare function GetROP2 (byval as HDC) as integer declare function GetStockObject (byval as integer) as HGDIOBJ declare function GetStretchBltMode (byval as HDC) as integer declare function GetSystemPaletteEntries (byval as HDC, byval as UINT, byval as UINT, byval as LPPALETTEENTRY) as UINT declare function GetSystemPaletteUse (byval as HDC) as UINT declare function GetTextAlign (byval as HDC) as UINT declare function GetTextCharacterExtra (byval as HDC) as integer declare function GetTextCharset (byval as HDC) as integer declare function GetTextCharsetInfo (byval as HDC, byval as LPFONTSIGNATURE, byval as DWORD) as integer declare function GetTextColor (byval as HDC) as COLORREF #if (_WIN32_WINNT >= &h0500) declare function GetTextExtentExPointI(byval as HDC, byval as LPWORD, byval as Integer, byval as Integer, byval as LPINT, byval as LPINT, byval as LPSIZE) as BOOL #endif declare function GetViewportExtEx (byval as HDC, byval as LPSIZE) as BOOL declare function GetViewportOrgEx (byval as HDC, byval as LPPOINT) as BOOL declare function GetWindowExtEx (byval as HDC, byval as LPSIZE) as BOOL declare function GetWindowOrgEx (byval as HDC, byval as LPPOINT) as BOOL declare function GetWinMetaFileBits (byval as HENHMETAFILE, byval as UINT, byval as LPBYTE, byval as INT_, byval as HDC) as UINT declare function GetWorldTransform (byval as HDC, byval as LPXFORM) as BOOL declare function IntersectClipRect (byval as HDC, byval as integer, byval as integer, byval as integer, byval as integer) as integer declare function InvertRgn (byval as HDC, byval as HRGN) as BOOL declare function LineDDA (byval as integer, byval as integer, byval as integer, byval as integer, byval as LINEDDAPROC, byval as LPARAM) as BOOL declare function LineTo (byval as HDC, byval as integer, byval as integer) as BOOL declare function LPtoDP (byval as HDC, byval as LPPOINT, byval as integer) as BOOL declare function MaskBlt (byval as HDC, byval as integer, byval as integer, byval as integer, byval as integer, byval as HDC, byval as integer, byval as integer, byval as HBITMAP, byval as integer, byval as integer, byval as DWORD) as BOOL declare function ModifyWorldTransform (byval as HDC, byval as const XFORM ptr, byval as DWORD) as BOOL declare function MoveToEx (byval as HDC, byval as integer, byval as integer, byval as LPPOINT) as BOOL declare function OffsetClipRgn (byval as HDC, byval as integer, byval as integer) as integer declare function OffsetRgn (byval as HRGN, byval as integer, byval as integer) as integer declare function OffsetViewportOrgEx (byval as HDC, byval as integer, byval as integer, byval as LPPOINT) as BOOL declare function OffsetWindowOrgEx (byval as HDC, byval as integer, byval as integer, byval as LPPOINT) as BOOL declare function PaintRgn (byval as HDC, byval as HRGN) as BOOL declare function PatBlt (byval as HDC, byval as integer, byval as integer, byval as integer, byval as integer, byval as DWORD) as BOOL declare function PathToRegion (byval as HDC) as HRGN declare function Pie (byval as HDC, byval as integer, byval as integer, byval as integer, byval as integer, byval as integer, byval as integer, byval as integer, byval as integer) as BOOL declare function PlayEnhMetaFile (byval as HDC, byval as HENHMETAFILE, byval as LPCRECT) as BOOL declare function PlayEnhMetaFileRecord (byval as HDC, byval as LPHANDLETABLE, byval as const ENHMETARECORD ptr, byval as UINT) as BOOL declare function PlayMetaFile (byval as HDC, byval as HMETAFILE) as BOOL declare function PlayMetaFileRecord (byval as HDC, byval as LPHANDLETABLE, byval as LPMETARECORD, byval as UINT) as BOOL declare function PlgBlt (byval as HDC, byval as const POINT ptr, byval as HDC, byval as integer, byval as integer, byval as integer, byval as integer, byval as HBITMAP, byval as integer, byval as integer) as BOOL declare function PolyBezier (byval as HDC, byval as const POINT ptr, byval as DWORD) as BOOL declare function PolyBezierTo (byval as HDC, byval as const POINT ptr, byval as DWORD) as BOOL declare function PolyDraw (byval as HDC, byval as const POINT ptr, byval as const UBYTE ptr, byval as integer) as BOOL declare function Polygon (byval as HDC, byval as const POINT ptr, byval as integer) as BOOL declare function Polyline (byval as HDC, byval as const POINT ptr, byval as integer) as BOOL declare function PolylineTo (byval as HDC, byval as const POINT ptr, byval as DWORD) as BOOL declare function PolyPolygon (byval as HDC, byval as const POINT ptr, byval as const INT_ ptr, byval as integer) as BOOL declare function PolyPolyline (byval as HDC, byval as const POINT ptr, byval as DWORD ptr, byval as DWORD) as BOOL declare function PtInRegion (byval as HRGN, byval as integer, byval as integer) as BOOL declare function PtVisible (byval as HDC, byval as integer, byval as integer) as BOOL declare function RealizePalette (byval as HDC) as UINT declare function Rectangle (byval as HDC, byval as integer, byval as integer, byval as integer, byval as integer) as BOOL declare function RectInRegion (byval as HRGN, byval as LPCRECT) as BOOL declare function RectVisible (byval as HDC, byval as LPCRECT) as BOOL #if (_WIN32_WINNT >= &h0500) declare function RemoveFontMemResourceEx (byval as HANDLE) as BOOL #endif declare function ResizePalette (byval as HPALETTE, byval as UINT) as BOOL declare function RestoreDC (byval as HDC, byval as integer) as BOOL declare function RoundRect (byval as HDC, byval as integer, byval as integer, byval as integer, byval as integer, byval as integer, byval as integer) as BOOL declare function SaveDC (byval as HDC) as integer declare function ScaleViewportExtEx (byval as HDC, byval as integer, byval as integer, byval as integer, byval as integer, byval as LPSIZE) as BOOL declare function ScaleWindowExtEx (byval as HDC, byval as integer, byval as integer, byval as integer, byval as integer, byval as LPSIZE) as BOOL declare function SelectClipPath (byval as HDC, byval as integer) as BOOL declare function SelectClipRgn (byval as HDC, byval as HRGN) as integer declare function SelectObject (byval as HDC, byval as HGDIOBJ) as HGDIOBJ declare function SelectPalette (byval as HDC, byval as HPALETTE, byval as BOOL) as HPALETTE declare function SetAbortProc (byval as HDC, byval as ABORTPROC) as integer declare function SetArcDirection (byval as HDC, byval as integer) as integer declare function SetBitmapBits (byval as HBITMAP, byval as DWORD, byval as PCVOID) as LONG declare function SetBitmapDimensionEx (byval as HBITMAP, byval as integer, byval as integer, byval as LPSIZE) as BOOL declare function SetBkColor (byval as HDC, byval as COLORREF) as COLORREF declare function SetBkMode (byval as HDC, byval as integer) as integer declare function SetBoundsRect (byval as HDC, byval as LPCRECT, byval as UINT) as UINT declare function SetBrushOrgEx (byval as HDC, byval as integer, byval as integer, byval as LPPOINT) as BOOL declare function SetColorAdjustment (byval as HDC, byval as const COLORADJUSTMENT ptr) as BOOL declare function SetColorSpace (byval as HDC, byval as HCOLORSPACE) as BOOL #if (_WIN32_WINNT >= &h0500) declare function SetDCBrushColor (byval as HDC, byval as COLORREF) as COLORREF declare function SetDCPenColor (byval as HDC, byval as COLORREF) as COLORREF #endif declare function SetDeviceGammaRamp (byval as HDC, byval as PVOID) as BOOL declare function SetDIBColorTable (byval as HDC, byval as UINT, byval as UINT, byval as const RGBQUAD ptr) as UINT declare function SetDIBits (byval as HDC, byval as HBITMAP, byval as UINT, byval as UINT, byval as PCVOID, byval as const BITMAPINFO ptr, byval as UINT) as integer declare function SetDIBitsToDevice (byval as HDC, byval as integer, byval as integer, byval as DWORD, byval as DWORD, byval as integer, byval as integer, byval as UINT, byval as UINT, byval as PCVOID, byval as const BITMAPINFO ptr, byval as UINT) as integer declare function SetEnhMetaFileBits (byval as UINT, byval as const UBYTE ptr) as HENHMETAFILE declare function SetGraphicsMode (byval as HDC, byval as integer) as integer declare function SetICMMode (byval as HDC, byval as integer) as integer declare function SetMapMode (byval as HDC, byval as integer) as integer declare function SetMapperFlags (byval as HDC, byval as DWORD) as DWORD declare function SetMetaFileBitsEx (byval as UINT, byval as const UBYTE ptr) as HMETAFILE declare function SetMetaRgn (byval as HDC) as integer declare function SetMiterLimit (byval as HDC, byval as FLOAT, byval as PFLOAT) as BOOL declare function SetPaletteEntries (byval as HPALETTE, byval as UINT, byval as UINT, byval as const PALETTEENTRY ptr) as UINT declare function SetPixel (byval as HDC, byval as integer, byval as integer, byval as COLORREF) as COLORREF declare function SetPixelFormat (byval as HDC, byval as integer, byval as const PIXELFORMATDESCRIPTOR ptr) as BOOL declare function SetPixelV (byval as HDC, byval as integer, byval as integer, byval as COLORREF) as BOOL declare function SetPolyFillMode (byval as HDC, byval as integer) as integer declare function SetRectRgn (byval as HRGN, byval as integer, byval as integer, byval as integer, byval as integer) as BOOL declare function SetROP2 (byval as HDC, byval as integer) as integer declare function SetStretchBltMode (byval as HDC, byval as integer) as integer declare function SetSystemPaletteUse (byval as HDC, byval as UINT) as UINT declare function SetTextAlign (byval as HDC, byval as UINT) as UINT declare function SetTextCharacterExtra (byval as HDC, byval as integer) as integer declare function SetTextColor (byval as HDC, byval as COLORREF) as COLORREF declare function SetTextJustification (byval as HDC, byval as integer, byval as integer) as BOOL declare function SetViewportExtEx (byval as HDC, byval as integer, byval as integer, byval as LPSIZE) as BOOL declare function SetViewportOrgEx (byval as HDC, byval as integer, byval as integer, byval as LPPOINT) as BOOL declare function SetWindowExtEx (byval as HDC, byval as integer, byval as integer, byval as LPSIZE) as BOOL declare function SetWindowOrgEx (byval as HDC, byval as integer, byval as integer, byval as LPPOINT) as BOOL declare function SetWinMetaFileBits (byval as UINT, byval as const UBYTE ptr, byval as HDC, byval as const METAFILEPICT ptr) as HENHMETAFILE declare function SetWorldTransform (byval as HDC, byval as const XFORM ptr) as BOOL declare function StartPage (byval as HDC) as integer declare function StretchBlt (byval as HDC, byval as integer, byval as integer, byval as integer, byval as integer, byval as HDC, byval as integer, byval as integer, byval as integer, byval as integer, byval as DWORD) as BOOL declare function StretchDIBits (byval as HDC, byval as integer, byval as integer, byval as integer, byval as integer, byval as integer, byval as integer, byval as integer, byval as integer, byval as const any ptr, byval as const BITMAPINFO ptr, byval as UINT, byval as DWORD) as integer declare function StrokeAndFillPath (byval as HDC) as BOOL declare function StrokePath (byval as HDC) as BOOL declare function SwapBuffers (byval as HDC) as BOOL declare function TranslateCharsetInfo (byval as PDWORD, byval as LPCHARSETINFO, byval as DWORD) as BOOL declare function UnrealizeObject (byval as HGDIOBJ) as BOOL declare function UpdateColors (byval as HDC) as BOOL declare function WidenPath (byval as HDC) as BOOL declare function wglCopyContext (byval as HGLRC, byval as HGLRC, byval as UINT) as BOOL declare function wglCreateContext (byval as HDC) as HGLRC declare function wglCreateLayerContext (byval as HDC, byval as integer) as HGLRC declare function wglDeleteContext (byval as HGLRC) as BOOL declare function wglDescribeLayerPlane (byval as HDC, byval as integer, byval as integer, byval as UINT, byval as LPLAYERPLANEDESCRIPTOR) as BOOL declare function wglGetCurrentContext () as HGLRC declare function wglGetCurrentDC () as HDC declare function wglGetLayerPaletteEntries (byval as HDC, byval as integer, byval as integer, byval as integer, byval as COLORREF ptr) as integer declare function wglGetProcAddress (byval as LPCSTR) as PROC declare function wglMakeCurrent (byval as HDC, byval as HGLRC) as BOOL declare function wglRealizeLayerPalette (byval as HDC, byval as integer, byval as BOOL) as BOOL declare function wglSetLayerPaletteEntries (byval as HDC, byval as integer, byval as integer, byval as integer, byval as const COLORREF ptr) as integer declare function wglShareLists (byval as HGLRC, byval as HGLRC) as BOOL declare function wglSwapLayerBuffers (byval as HDC, byval as UINT) as BOOL #if (_WIN32_WINNT >= &h0500) declare function GetFontUnicodeRanges (byval as HDC, byval as LPGLYPHSET) as DWORD #endif #if (WINVER >= &h0500) declare function GetLayout(byval as HDC) as DWORD declare function SetLayout(byval as HDC, byval as DWORD) as DWORD #endif #ifdef UNICODE type BCHAR as WCHAR type DOCINFO as DOCINFOW type LPDOCINFO as DOCINFOW ptr type LOGFONT as LOGFONTW type PLOGFONT as LOGFONTW ptr type LPLOGFONT as LOGFONTW ptr type TEXTMETRIC as TEXTMETRICW type PTEXTMETRIC as TEXTMETRICW ptr type LPTEXTMETRIC as TEXTMETRICW ptr type DEVMODE as DEVMODEW type PDEVMODE as DEVMODEW ptr type LPDEVMODE as DEVMODEW ptr type ENUMLOGFONTEXDV as ENUMLOGFONTEXDVW type PENUMLOGFONTEXDV as PENUMLOGFONTEXDVW type LPENUMLOGFONTEXDV as LPENUMLOGFONTEXDVW type EXTLOGFONT as EXTLOGFONTW type PEXTLOGFONT as EXTLOGFONTW ptr type LPEXTLOGFONT as EXTLOGFONTW ptr type GCP_RESULTS as GCP_RESULTSW type LPGCP_RESULTS as GCP_RESULTSW ptr type OUTLINETEXTMETRIC as OUTLINETEXTMETRICW type POUTLINETEXTMETRIC as OUTLINETEXTMETRICW ptr type LPOUTLINETEXTMETRIC as OUTLINETEXTMETRICW ptr type POLYTEXT as POLYTEXTW type PPOLYTEXT as POLYTEXTA ptr type LPPOLYTEXT as POLYTEXTA ptr type LOGCOLORSPACE as LOGCOLORSPACEW type LPLOGCOLORSPACE as LOGCOLORSPACEW ptr type NEWTEXTMETRIC as NEWTEXTMETRICW type PNEWTEXTMETRIC as NEWTEXTMETRICW ptr type LPNEWTEXTMETRIC as NEWTEXTMETRICW ptr type NEWTEXTMETRICEX as NEWTEXTMETRICEXW type ENUMLOGFONT as ENUMLOGFONTW type LPENUMLOGFONT as ENUMLOGFONTW ptr type ENUMLOGFONTEX as ENUMLOGFONTEXW type LPENUMLOGFONTEX as ENUMLOGFONTEXW ptr type DISPLAY_DEVICE as DISPLAY_DEVICEW type PDISPLAY_DEVICE as DISPLAY_DEVICEW ptr type LPDISPLAY_DEVICE as DISPLAY_DEVICEW ptr #define ICMENUMPROC ICMENUMPROCW #define FONTENUMPROC FONTENUMPROCW declare function AddFontResource alias "AddFontResourceW" (byval as LPCWSTR) as integer #if (_WIN32_WINNT >= &h0500) declare function AddFontResourceEx alias "AddFontResourceExW" (byval as LPCWSTR, byval as DWORD, byval as PVOID) as integer #endif declare function CopyEnhMetaFile alias "CopyEnhMetaFileW" (byval as HENHMETAFILE, byval as LPCWSTR) as HENHMETAFILE declare function CopyMetaFile alias "CopyMetaFileW" (byval as HMETAFILE, byval as LPCWSTR) as HMETAFILE declare function CreateColorSpace alias "CreateColorSpaceW" (byval as LPLOGCOLORSPACEW) as HCOLORSPACE declare function CreateDC alias "CreateDCW" (byval as LPCWSTR, byval as LPCWSTR, byval as LPCWSTR, byval as const DEVMODEW ptr) as HDC declare function CreateEnhMetaFile alias "CreateEnhMetaFileW" (byval as HDC, byval as LPCWSTR, byval as LPCRECT, byval as LPCWSTR) as HDC declare function CreateFont alias "CreateFontW" (byval as integer, byval as integer, byval as integer, byval as integer, byval as integer, byval as DWORD, byval as DWORD, byval as DWORD, byval as DWORD, byval as DWORD, byval as DWORD, byval as DWORD, byval as DWORD, byval as LPCWSTR) as HFONT declare function CreateFontIndirect alias "CreateFontIndirectW" (byval as const LOGFONTW ptr) as HFONT declare function CreateIC alias "CreateICW" (byval as LPCWSTR, byval as LPCWSTR, byval as LPCWSTR, byval as const DEVMODEW ptr) as HDC declare function CreateMetaFile alias "CreateMetaFileW" (byval as LPCWSTR) as HDC declare function CreateScalableFontResource alias "CreateScalableFontResourceW" (byval as DWORD, byval as LPCWSTR, byval as LPCWSTR, byval as LPCWSTR) as BOOL declare function DeviceCapabilities alias "DeviceCapabilitiesW" (byval as LPCWSTR, byval as LPCWSTR, byval as WORD, byval as LPWSTR, byval as const DEVMODEW ptr) as DWORD declare function EnumFontFamilies alias "EnumFontFamiliesW" (byval as HDC, byval as LPCWSTR, byval as FONTENUMPROCW, byval as LPARAM) as integer declare function EnumFontFamiliesEx alias "EnumFontFamiliesExW" (byval as HDC, byval as PLOGFONTW, byval as FONTENUMPROCW, byval as LPARAM, byval as DWORD) as integer declare function EnumFonts alias "EnumFontsW" (byval as HDC, byval as LPCWSTR, byval as FONTENUMPROCW, byval as LPARAM) as integer declare function EnumICMProfiles alias "EnumICMProfilesW" (byval as HDC, byval as ICMENUMPROCW, byval as LPARAM) as integer declare function ExtTextOut alias "ExtTextOutW" (byval as HDC, byval as integer, byval as integer, byval as UINT, byval as LPCRECT, byval as LPCWSTR, byval as UINT, byval as const INT_ ptr) as BOOL declare function GetCharABCWidths alias "GetCharABCWidthsW" (byval as HDC, byval as UINT, byval as UINT, byval as LPABC) as BOOL declare function GetCharABCWidthsFloat alias "GetCharABCWidthsFloatW" (byval as HDC, byval as UINT, byval as UINT, byval as LPABCFLOAT) as BOOL declare function GetCharacterPlacement alias "GetCharacterPlacementW" (byval as HDC, byval as LPCWSTR, byval as integer, byval as integer, byval as LPGCP_RESULTSW, byval as DWORD) as DWORD declare function GetCharWidth32 alias "GetCharWidth32W" (byval as HDC, byval as UINT, byval as UINT, byval as LPINT) as BOOL declare function GetCharWidth alias "GetCharWidthW" (byval as HDC, byval as UINT, byval as UINT, byval as LPINT) as BOOL declare function GetCharWidthFloat alias "GetCharWidthFloatW" (byval as HDC, byval as UINT, byval as UINT, byval as PFLOAT) as BOOL declare function GetEnhMetaFile alias "GetEnhMetaFileW" (byval as LPCWSTR) as HENHMETAFILE declare function GetEnhMetaFileDescription alias "GetEnhMetaFileDescriptionW" (byval as HENHMETAFILE, byval as UINT, byval as LPWSTR) as UINT declare function GetGlyphOutline alias "GetGlyphOutlineW" (byval as HDC, byval as UINT, byval as UINT, byval as LPGLYPHMETRICS, byval as DWORD, byval as PVOID, byval as const MAT2 ptr) as DWORD declare function GetICMProfile alias "GetICMProfileW" (byval as HDC, byval as DWORD, byval as LPWSTR) as BOOL declare function GetKerningPairs alias "GetKerningPairsW" (byval as HDC, byval as DWORD, byval as LPKERNINGPAIR) as DWORD declare function GetLogColorSpace alias "GetLogColorSpaceW" (byval as HCOLORSPACE, byval as LPLOGCOLORSPACEW, byval as DWORD) as BOOL declare function GetMetaFile alias "GetMetaFileW" (byval as LPCWSTR) as HMETAFILE declare function GetObject alias "GetObjectW" (byval as HGDIOBJ, byval as integer, byval as PVOID) as integer declare function GetOutlineTextMetrics alias "GetOutlineTextMetricsW" (byval as HDC, byval as UINT, byval as LPOUTLINETEXTMETRICW) as UINT declare function GetTextExtentExPoint alias "GetTextExtentExPointW" (byval as HDC, byval as LPCWSTR, byval as integer, byval as integer, byval as LPINT, byval as LPINT, byval as LPSIZE) as BOOL declare function GetTextExtentPoint alias "GetTextExtentPointW" (byval as HDC, byval as LPCWSTR, byval as integer, byval as LPSIZE) as BOOL declare function GetTextExtentPoint32 alias "GetTextExtentPoint32W" (byval as HDC, byval as LPCWSTR, byval as integer, byval as LPSIZE) as BOOL declare function GetTextFace alias "GetTextFaceW" (byval as HDC, byval as integer, byval as LPWSTR) as integer declare function GetTextMetrics alias "GetTextMetricsW" (byval as HDC, byval as LPTEXTMETRICW) as BOOL declare function PolyTextOut alias "PolyTextOutW" (byval as HDC, byval as const POLYTEXTW ptr, byval as integer) as BOOL declare function RemoveFontResource alias "RemoveFontResourceW" (byval as LPCWSTR) as BOOL #if (_WIN32_WINNT >= &h0500) declare function RemoveFontResourceEx alias "RemoveFontResourceExW" (byval as LPCWSTR, byval as DWORD, byval as PVOID) as BOOL #endif declare function ResetDC alias "ResetDCW" (byval as HDC, byval as const DEVMODEW ptr) as HDC declare function SetICMProfile alias "SetICMProfileW" (byval as HDC, byval as LPWSTR) as BOOL declare function StartDoc alias "StartDocW" (byval as HDC, byval as const DOCINFOW ptr) as integer declare function TextOut alias "TextOutW" (byval as HDC, byval as integer, byval as integer, byval as LPCWSTR, byval as integer) as BOOL declare function UpdateICMRegKey alias "UpdateICMRegKeyW" (byval as DWORD, byval as DWORD, byval as LPWSTR, byval as UINT) as BOOL declare function wglUseFontBitmaps alias "wglUseFontBitmapsW" (byval as HDC, byval as DWORD, byval as DWORD, byval as DWORD) as BOOL declare function wglUseFontOutlines alias "wglUseFontOutlinesW" (byval as HDC, byval as DWORD, byval as DWORD, byval as DWORD, byval as FLOAT, byval as FLOAT, byval as integer, byval as LPGLYPHMETRICSFLOAT) as BOOL #if (_WIN32_WINNT >= &h0500) declare function GetGlyphIndices alias "GetGlyphIndicesW" (byval as HDC, byval as LPCWSTR, byval as integer, byval as LPWORD, byval as DWORD) as DWORD #endif #else ''UNICODE type BCHAR as UBYTE type DOCINFO as DOCINFOA type LPDOCINFO as DOCINFOA ptr type LOGFONT as LOGFONTA type PLOGFONT as LOGFONTA ptr type LPLOGFONT as LOGFONTA ptr type TEXTMETRIC as TEXTMETRICA type PTEXTMETRIC as TEXTMETRICA ptr type LPTEXTMETRIC as TEXTMETRICA ptr type DEVMODE as DEVMODEA type PDEVMODE as DEVMODEA ptr type LPDEVMODE as DEVMODEA ptr type ENUMLOGFONTEXDV as ENUMLOGFONTEXDVA type PENUMLOGFONTEXDV as PENUMLOGFONTEXDVA type LPENUMLOGFONTEXDV as LPENUMLOGFONTEXDVA type EXTLOGFONT as EXTLOGFONTA type PEXTLOGFONT as EXTLOGFONTA ptr type LPEXTLOGFONT as EXTLOGFONTA ptr type GCP_RESULTS as GCP_RESULTSA type LPGCP_RESULTS as GCP_RESULTSA ptr type OUTLINETEXTMETRIC as OUTLINETEXTMETRICA type POUTLINETEXTMETRIC as OUTLINETEXTMETRICA ptr type LPOUTLINETEXTMETRIC as OUTLINETEXTMETRICA ptr type POLYTEXT as POLYTEXTA type PPOLYTEXT as POLYTEXTA ptr type LPPOLYTEXT as POLYTEXTA ptr type LOGCOLORSPACE as LOGCOLORSPACEA type LPLOGCOLORSPACE as LOGCOLORSPACEA ptr type NEWTEXTMETRIC as NEWTEXTMETRICA type PNEWTEXTMETRIC as NEWTEXTMETRICA ptr type LPNEWTEXTMETRIC as NEWTEXTMETRICA ptr type NEWTEXTMETRICEX as NEWTEXTMETRICEXA type ENUMLOGFONT as ENUMLOGFONTA type LPENUMLOGFONT as ENUMLOGFONTA ptr type ENUMLOGFONTEX as ENUMLOGFONTEXA type LPENUMLOGFONTEX as ENUMLOGFONTEXA ptr type DISPLAY_DEVICE as DISPLAY_DEVICEA type PDISPLAY_DEVICE as DISPLAY_DEVICEA ptr type LPDISPLAY_DEVICE as DISPLAY_DEVICEA ptr #define ICMENUMPROC ICMENUMPROCA #define FONTENUMPROC FONTENUMPROCA declare function AddFontResource alias "AddFontResourceA" (byval as LPCSTR) as integer #if (_WIN32_WINNT >= &h0500) declare function AddFontResourceEx alias "AddFontResourceExA" (byval as LPCSTR, byval as DWORD, byval as PVOID) as integer #endif declare function CopyEnhMetaFile alias "CopyEnhMetaFileA" (byval as HENHMETAFILE, byval as LPCSTR) as HENHMETAFILE declare function CopyMetaFile alias "CopyMetaFileA" (byval as HMETAFILE, byval as LPCSTR) as HMETAFILE declare function CreateColorSpace alias "CreateColorSpaceA" (byval as LPLOGCOLORSPACEA) as HCOLORSPACE declare function CreateDC alias "CreateDCA" (byval as LPCSTR, byval as LPCSTR, byval as LPCSTR, byval as const DEVMODEA ptr) as HDC declare function CreateEnhMetaFile alias "CreateEnhMetaFileA" (byval as HDC, byval as LPCSTR, byval as LPCRECT, byval as LPCSTR) as HDC declare function CreateFont alias "CreateFontA" (byval as integer, byval as integer, byval as integer, byval as integer, byval as integer, byval as DWORD, byval as DWORD, byval as DWORD, byval as DWORD, byval as DWORD, byval as DWORD, byval as DWORD, byval as DWORD, byval as LPCSTR) as HFONT declare function CreateFontIndirect alias "CreateFontIndirectA" (byval as const LOGFONTA ptr) as HFONT declare function CreateIC alias "CreateICA" (byval as LPCSTR, byval as LPCSTR, byval as LPCSTR, byval as const DEVMODEA ptr) as HDC declare function CreateMetaFile alias "CreateMetaFileA" (byval as LPCSTR) as HDC declare function CreateScalableFontResource alias "CreateScalableFontResourceA" (byval as DWORD, byval as LPCSTR, byval as LPCSTR, byval as LPCSTR) as BOOL declare function DeviceCapabilities alias "DeviceCapabilitiesA" (byval as LPCSTR, byval as LPCSTR, byval as WORD, byval as LPSTR, byval as const DEVMODEA ptr) as DWORD declare function EnumFontFamilies alias "EnumFontFamiliesA" (byval as HDC, byval as LPCSTR, byval as FONTENUMPROCA, byval as LPARAM) as integer declare function EnumFontFamiliesEx alias "EnumFontFamiliesExA" (byval as HDC, byval as PLOGFONTA, byval as FONTENUMPROCA, byval as LPARAM, byval as DWORD) as integer declare function EnumFonts alias "EnumFontsA" (byval as HDC, byval as LPCSTR, byval as FONTENUMPROCA, byval as LPARAM) as integer declare function EnumICMProfiles alias "EnumICMProfilesA" (byval as HDC, byval as ICMENUMPROCA, byval as LPARAM) as integer declare function ExtTextOut alias "ExtTextOutA" (byval as HDC, byval as integer, byval as integer, byval as UINT, byval as LPCRECT, byval as LPCSTR, byval as UINT, byval as const INT_ ptr) as BOOL declare function GetCharABCWidths alias "GetCharABCWidthsA" (byval as HDC, byval as UINT, byval as UINT, byval as LPABC) as BOOL declare function GetCharABCWidthsFloat alias "GetCharABCWidthsFloatA" (byval as HDC, byval as UINT, byval as UINT, byval as LPABCFLOAT) as BOOL declare function GetCharacterPlacement alias "GetCharacterPlacementA" (byval as HDC, byval as LPCSTR, byval as integer, byval as integer, byval as LPGCP_RESULTSA, byval as DWORD) as DWORD declare function GetCharWidth32 alias "GetCharWidth32A" (byval as HDC, byval as UINT, byval as UINT, byval as LPINT) as BOOL declare function GetCharWidth alias "GetCharWidthA" (byval as HDC, byval as UINT, byval as UINT, byval as LPINT) as BOOL declare function GetCharWidthFloat alias "GetCharWidthFloatA" (byval as HDC, byval as UINT, byval as UINT, byval as PFLOAT) as BOOL declare function GetEnhMetaFile alias "GetEnhMetaFileA" (byval as LPCSTR) as HENHMETAFILE declare function GetEnhMetaFileDescription alias "GetEnhMetaFileDescriptionA" (byval as HENHMETAFILE, byval as UINT, byval as LPSTR) as UINT declare function GetGlyphOutline alias "GetGlyphOutlineA" (byval as HDC, byval as UINT, byval as UINT, byval as LPGLYPHMETRICS, byval as DWORD, byval as PVOID, byval as const MAT2 ptr) as DWORD declare function GetICMProfile alias "GetICMProfileA" (byval as HDC, byval as DWORD, byval as LPSTR) as BOOL declare function GetKerningPairs alias "GetKerningPairsA" (byval as HDC, byval as DWORD, byval as LPKERNINGPAIR) as DWORD declare function GetLogColorSpace alias "GetLogColorSpaceA" (byval as HCOLORSPACE, byval as LPLOGCOLORSPACEA, byval as DWORD) as BOOL declare function GetMetaFile alias "GetMetaFileA" (byval as LPCSTR) as HMETAFILE declare function GetObject alias "GetObjectA" (byval as HGDIOBJ, byval as integer, byval as PVOID) as integer declare function GetOutlineTextMetrics alias "GetOutlineTextMetricsA" (byval as HDC, byval as UINT, byval as LPOUTLINETEXTMETRICA) as UINT declare function GetTextExtentExPoint alias "GetTextExtentExPointA" (byval as HDC, byval as LPCSTR, byval as integer, byval as integer, byval as LPINT, byval as LPINT, byval as LPSIZE) as BOOL declare function GetTextExtentPoint alias "GetTextExtentPointA" (byval as HDC, byval as LPCSTR, byval as integer, byval as LPSIZE) as BOOL declare function GetTextExtentPoint32 alias "GetTextExtentPoint32A" (byval as HDC, byval as LPCSTR, byval as integer, byval as LPSIZE) as BOOL declare function GetTextFace alias "GetTextFaceA" (byval as HDC, byval as integer, byval as LPSTR) as integer declare function GetTextMetrics alias "GetTextMetricsA" (byval as HDC, byval as LPTEXTMETRICA) as BOOL declare function PolyTextOut alias "PolyTextOutA" (byval as HDC, byval as const POLYTEXTA ptr, byval as integer) as BOOL declare function RemoveFontResource alias "RemoveFontResourceA" (byval as LPCSTR) as BOOL #if (_WIN32_WINNT >= &h0500) declare function RemoveFontResourceEx alias "RemoveFontResourceExA" (byval as LPCSTR, byval as DWORD, byval as PVOID) as BOOL #endif declare function ResetDC alias "ResetDCA" (byval as HDC, byval as const DEVMODEA ptr) as HDC declare function SetICMProfile alias "SetICMProfileA" (byval as HDC, byval as LPSTR) as BOOL declare function StartDoc alias "StartDocA" (byval as HDC, byval as const DOCINFOA ptr) as integer declare function TextOut alias "TextOutA" (byval as HDC, byval as integer, byval as integer, byval as LPCSTR, byval as integer) as BOOL declare function UpdateICMRegKey alias "UpdateICMRegKeyA" (byval as DWORD, byval as DWORD, byval as LPSTR, byval as UINT) as BOOL declare function wglUseFontBitmaps alias "wglUseFontBitmapsA" (byval as HDC, byval as DWORD, byval as DWORD, byval as DWORD) as BOOL declare function wglUseFontOutlines alias "wglUseFontOutlinesA" (byval as HDC, byval as DWORD, byval as DWORD, byval as DWORD, byval as FLOAT, byval as FLOAT, byval as integer, byval as LPGLYPHMETRICSFLOAT) as BOOL #if (_WIN32_WINNT >= &h0500) declare function GetGlyphIndices alias "GetGlyphIndicesA" (byval as HDC, byval as LPCSTR, byval as integer, byval as LPWORD, byval as DWORD) as DWORD #endif #endif '' UNICODE #define GetCValue(cmyk) cubyte(cmyk) #define GetMValue(cmyk) cubyte((cmyk) shr 8) #define GetYValue(cmyk) cubyte((cmyk) shr 16) #define GetKValue(cmyk) cubyte((cmyk) shr 24) #define CMYK(c,m,y,k) ((c) or (cuint(m) shl 8) or (cuint(y) shl 16) or (cuint(k) shl 24)) #define GetRValue(c) cubyte(c) #define GetGValue(c) cubyte(cushort(c) shr 8) #define GetBValue(c) cubyte((c) shr 16) end extern extern "windows" lib "Msimg32" #if (WINVER >= &h0410) declare function AlphaBlend(byval as HDC, byval as Integer, byval as Integer, byval as Integer, byval as Integer, byval as HDC, byval as Integer, byval as Integer, byval as Integer, byval as Integer, byval as BLENDFUNCTION) as BOOL declare function GradientFill (byval as HDC, byval as PTRIVERTEX, byval as ULONG, byval as CONST PVOID, byval as ULONG, byval As ULONG) As BOOL declare function TransparentBlt(byval as HDC, byval as Integer, byval as Integer, byval as Integer, byval as Integer, byval as HDC, byval as Integer, byval as Integer, byval as Integer, byval as Integer, byval as UINT) as BOOL #endif end extern #endif