125#define U_PAN_CULTURE_LATIN 0
127#define U_SYSPAL_ERROR 0
128#define U_SYSPAL_STATIC 1
129#define U_SYSPAL_NOSTATIC 2
131#define U_ELF_VENDOR_SIZE 4
133#define UNUSED_PARAMETER(x) (void)(x)
141#define U_PI 3.14159265358979323846
144#define U_DV_SGNTR 0x08007664
145#define U_LP_VERSION 0x0300
146#define U_RDH_RECTANGLES 1
147#define U_RDH_OBJSIZE 0x20
148#define U_RGB_GAMMA_MIN (uint16_t)02500
149#define U_RGB_GAMMA_MAX (uint16_t)65000
150#define U_REFERENCE_WHITE_MIN (uint16_t)6000
151#define U_REFERENCE_WHITE_MAX (uint16_t)10000
152#define U_REFERENCE_BLACK_MIN (uint16_t)0
153#define U_REFERENCE_BLACK_MAX (uint16_t)4000
154#define U_COLOR_ADJ_MIN ((int16_t)-100)
155#define U_COLOR_ADJ_MAX (int16_t) 100
156#define U_MAX_PATH 1024
157#define U_LCS_SIGNATURE 0x50534F43
158#define U_LCS_VERSION 0x400
161#define U_ROW_ORDER_INVERT 1
162#define U_ROW_ORDER_SAME 0
166#define U_EMR_COMMENT_SPOOLFONTDEF 0x544F4E46
168#define U_ROUND(A) ( (A) > 0 ? floor((A)+0.5) : ( (A) < 0 ? -floor(-(A)+0.5) : (A) ) )
170#define MAKE_MIN_PTR(A,B) ( A < B ? A : B)
187#define IS_MEM_UNSAFE(A,B,C) ( (sizeof(B) < sizeof(int) || (int)(B) < 0) ? 1 : ((int8_t *)(A) > (int8_t *)(C) ? 1 : ((int8_t *)(C) - (int8_t *)(A) >= (int)(B) ? 0 : 1 )))
263#define U_R2_NOTMERGEPEN 2
264#define U_R2_MASKNOTPEN 3
265#define U_R2_NOTCOPYPEN 4
266#define U_R2_MASKPENNOT 5
269#define U_R2_NOTMASKPEN 8
270#define U_R2_MASKPEN 9
271#define U_R2_NOTXORPEN 10
273#define U_R2_MERGENOTPEN 12
274#define U_R2_COPYPEN 13
275#define U_R2_MERGEPENNOT 14
276#define U_R2_MERGEPEN 15
287#define U_BCBM_EXPLICIT 0
288#define U_BCBM_MONOCHROME 1
289#define U_BCBM_COLOR4 4
290#define U_BCBM_COLOR8 8
291#define U_BCBM_COLOR16 16
292#define U_BCBM_COLOR24 24
293#define U_BCBM_COLOR32 32
302#define U_BI_UNKNOWN -1
306#define U_BI_BITFIELDS 3
317#define U_LCS_GM_BUSINESS 0x00000001L
318#define U_LCS_GM_GRAPHICS 0x00000002L
319#define U_LCS_GM_IMAGES 0x00000004L
320#define U_LCS_GM_ABS_COLORIMETRIC 0x00000008L
329#define U_LCS_CALIBRATED_RGB 0x00000000L
330#define U_LCS_DEVICE_RGB 0x00000001L
331#define U_LCS_DEVICE_CMYK 0x00000002L
354#define U_SRCCOPY 0x00cc0020
355#define U_SRCPAINT 0x00ee0086
356#define U_SRCAND 0x008800c6
357#define U_SRCINVERT 0x00660046
358#define U_SRCERASE 0x00440328
359#define U_NOTSRCCOPY 0x00330008
360#define U_NOTSRCERASE 0x001100a6
361#define U_MERGECOPY 0x00c000ca
362#define U_MERGEPAINT 0x00bb0226
363#define U_PATCOPY 0x00f00021
364#define U_PATPAINT 0x00fb0a09
365#define U_PATINVERT 0x005a0049
366#define U_DSTINVERT 0x00550009
367#define U_BLACKNESS 0x00000042
368#define U_WHITENESS 0x00ff0062
369#define U_NOOP 0x00aa0029
370#define U_NOMIRRORBITMAP 0x80000000
396#define U_TA_DEFAULT 0x00
397#define U_TA_NOUPDATECP 0x00
398#define U_TA_UPDATECP 0x01
399#define U_TA_LEFT 0x00
400#define U_TA_RIGHT 0x02
401#define U_TA_CENTER 0x06
403#define U_TA_BOTTOM 0x08
404#define U_TA_BASEBIT 0x10
405#define U_TA_BASELINE 0x18
406#define U_TA_RTLREADING 0x100
407#define U_TA_MASK U_TA_BASELINE+U_TA_CENTER+U_TA_UPDATECP+U_TA_RTLREADING
409#define U_VTA_BASELINE U_TA_BASELINE
410#define U_VTA_LEFT U_TA_BOTTOM
411#define U_VTA_RIGHT U_TA_TOP
412#define U_VTA_CENTER U_TA_CENTER
413#define U_VTA_BOTTOM U_TA_RIGHT
414#define U_VTA_TOP U_TA_LEFT
440#define U_SIZE_BITMAPINFOHEADER (sizeof(U_BITMAPINFOHEADER))
520 char lcsFilename[U_MAX_PATH];
537 uint16_t lcsFilename[U_MAX_PATH];
600#define U_RCL_DEF (U_RECTL){0,0,-1,-1}
628#define U_LF_FACESIZE 32
629#define U_LF_FULLFACESIZE 64
638#define U_EMR_HEADER 1
639#define U_EMR_POLYBEZIER 2
640#define U_EMR_POLYGON 3
641#define U_EMR_POLYLINE 4
642#define U_EMR_POLYBEZIERTO 5
643#define U_EMR_POLYLINETO 6
644#define U_EMR_POLYPOLYLINE 7
645#define U_EMR_POLYPOLYGON 8
646#define U_EMR_SETWINDOWEXTEX 9
647#define U_EMR_SETWINDOWORGEX 10
648#define U_EMR_SETVIEWPORTEXTEX 11
649#define U_EMR_SETVIEWPORTORGEX 12
650#define U_EMR_SETBRUSHORGEX 13
652#define U_EMR_SETPIXELV 15
653#define U_EMR_SETMAPPERFLAGS 16
654#define U_EMR_SETMAPMODE 17
655#define U_EMR_SETBKMODE 18
656#define U_EMR_SETPOLYFILLMODE 19
657#define U_EMR_SETROP2 20
658#define U_EMR_SETSTRETCHBLTMODE 21
659#define U_EMR_SETTEXTALIGN 22
660#define U_EMR_SETCOLORADJUSTMENT 23
661#define U_EMR_SETTEXTCOLOR 24
662#define U_EMR_SETBKCOLOR 25
663#define U_EMR_OFFSETCLIPRGN 26
664#define U_EMR_MOVETOEX 27
665#define U_EMR_SETMETARGN 28
666#define U_EMR_EXCLUDECLIPRECT 29
667#define U_EMR_INTERSECTCLIPRECT 30
668#define U_EMR_SCALEVIEWPORTEXTEX 31
669#define U_EMR_SCALEWINDOWEXTEX 32
670#define U_EMR_SAVEDC 33
671#define U_EMR_RESTOREDC 34
672#define U_EMR_SETWORLDTRANSFORM 35
673#define U_EMR_MODIFYWORLDTRANSFORM 36
674#define U_EMR_SELECTOBJECT 37
675#define U_EMR_CREATEPEN 38
676#define U_EMR_CREATEBRUSHINDIRECT 39
677#define U_EMR_DELETEOBJECT 40
678#define U_EMR_ANGLEARC 41
679#define U_EMR_ELLIPSE 42
680#define U_EMR_RECTANGLE 43
681#define U_EMR_ROUNDRECT 44
683#define U_EMR_CHORD 46
685#define U_EMR_SELECTPALETTE 48
686#define U_EMR_CREATEPALETTE 49
687#define U_EMR_SETPALETTEENTRIES 50
688#define U_EMR_RESIZEPALETTE 51
689#define U_EMR_REALIZEPALETTE 52
690#define U_EMR_EXTFLOODFILL 53
691#define U_EMR_LINETO 54
692#define U_EMR_ARCTO 55
693#define U_EMR_POLYDRAW 56
694#define U_EMR_SETARCDIRECTION 57
695#define U_EMR_SETMITERLIMIT 58
696#define U_EMR_BEGINPATH 59
697#define U_EMR_ENDPATH 60
698#define U_EMR_CLOSEFIGURE 61
699#define U_EMR_FILLPATH 62
700#define U_EMR_STROKEANDFILLPATH 63
701#define U_EMR_STROKEPATH 64
702#define U_EMR_FLATTENPATH 65
703#define U_EMR_WIDENPATH 66
704#define U_EMR_SELECTCLIPPATH 67
705#define U_EMR_ABORTPATH 68
706#define U_EMR_UNDEF69 69
707#define U_EMR_COMMENT 70
708#define U_EMR_FILLRGN 71
709#define U_EMR_FRAMERGN 72
710#define U_EMR_INVERTRGN 73
711#define U_EMR_PAINTRGN 74
712#define U_EMR_EXTSELECTCLIPRGN 75
713#define U_EMR_BITBLT 76
714#define U_EMR_STRETCHBLT 77
715#define U_EMR_MASKBLT 78
716#define U_EMR_PLGBLT 79
717#define U_EMR_SETDIBITSTODEVICE 80
718#define U_EMR_STRETCHDIBITS 81
719#define U_EMR_EXTCREATEFONTINDIRECTW 82
720#define U_EMR_EXTTEXTOUTA 83
721#define U_EMR_EXTTEXTOUTW 84
722#define U_EMR_POLYBEZIER16 85
723#define U_EMR_POLYGON16 86
724#define U_EMR_POLYLINE16 87
725#define U_EMR_POLYBEZIERTO16 88
726#define U_EMR_POLYLINETO16 89
727#define U_EMR_POLYPOLYLINE16 90
728#define U_EMR_POLYPOLYGON16 91
729#define U_EMR_POLYDRAW16 92
730#define U_EMR_CREATEMONOBRUSH 93
731#define U_EMR_CREATEDIBPATTERNBRUSHPT 94
732#define U_EMR_EXTCREATEPEN 95
733#define U_EMR_POLYTEXTOUTA 96
734#define U_EMR_POLYTEXTOUTW 97
735#define U_EMR_SETICMMODE 98
736#define U_EMR_CREATECOLORSPACE 99
737#define U_EMR_SETCOLORSPACE 100
738#define U_EMR_DELETECOLORSPACE 101
739#define U_EMR_GLSRECORD 102
740#define U_EMR_GLSBOUNDEDRECORD 103
741#define U_EMR_PIXELFORMAT 104
742#define U_EMR_DRAWESCAPE 105
743#define U_EMR_EXTESCAPE 106
744#define U_EMR_UNDEF107 107
745#define U_EMR_SMALLTEXTOUT 108
746#define U_EMR_FORCEUFIMAPPING 109
747#define U_EMR_NAMEDESCAPE 110
748#define U_EMR_COLORCORRECTPALETTE 111
749#define U_EMR_SETICMPROFILEA 112
750#define U_EMR_SETICMPROFILEW 113
751#define U_EMR_ALPHABLEND 114
752#define U_EMR_SETLAYOUT 115
753#define U_EMR_TRANSPARENTBLT 116
754#define U_EMR_UNDEF117 117
755#define U_EMR_GRADIENTFILL 118
756#define U_EMR_SETLINKEDUFIS 119
757#define U_EMR_SETTEXTJUSTIFICATION 120
758#define U_EMR_COLORMATCHTOTARGETW 121
759#define U_EMR_CREATECOLORSPACEW 122
764#define U_EMR_INVALID 0xFFFFFFFF
772#define U_DRAW_NOTEMPTY 0x001
773#define U_DRAW_VISIBLE 0x002
774#define U_DRAW_CLOSED 0x004
775#define U_DRAW_ONLYTO 0x008
776#define U_DRAW_FORCE 0x010
777#define U_DRAW_ALTERS 0x020
778#define U_DRAW_PATH 0x040
779#define U_DRAW_TEXT 0x080
780#define U_DRAW_OBJECT 0x100
781#define U_DRAW_NOFILL 0x200
790#define U_AD_COUNTERCLOCKWISE 1
791#define U_AD_CLOCKWISE 2
800#define U_PAN_STRAIGHT_ARMS_HORZ 2
801#define U_PAN_STRAIGHT_ARMS_WEDGE 3
802#define U_PAN_STRAIGHT_ARMS_VERT 4
803#define U_PAN_STRAIGHT_ARMS_SINGLE_SERIF 5
804#define U_PAN_STRAIGHT_ARMS_DOUBLE_SERIF 6
805#define U_PAN_BENT_ARMS_HORZ 7
806#define U_PAN_BENT_ARMS_WEDGE 8
807#define U_PAN_BENT_ARMS_VERT 9
808#define U_PAN_BENT_ARMS_SINGLE_SERIF 10
809#define U_PAN_BENT_ARMS_DOUBLE_SERIF 11
818#define U_TRANSPARENT 1
828#define U_CA_NEGATIVE 0x0001
829#define U_CA_LOG_FILTER 0x0002
838#define U_COLORMATCHTOTARGET_NOTEMBEDDED 0
839#define U_COLORMATCHTOTARGET_EMBEDDED 1
849#define U_CS_DISABLE 2
850#define U_CS_DELETE_TRANSFORM 3
859#define U_PAN_NO_FIT 1
868#define U_PAN_CONTRAST_NONE 2
869#define U_PAN_CONTRAST_VERY_LOW 3
870#define U_PAN_CONTRAST_LOW 4
871#define U_PAN_CONTRAST_MEDIUM_LOW 5
872#define U_PAN_CONTRAST_MEDIUM 6
873#define U_PAN_CONTRAST_MEDIUM_HIGH 7
874#define U_PAN_CONTRAST_HIGH 8
875#define U_PAN_CONTRAST_VERY_HIGH 9
884#define U_DIB_RGB_COLORS 0
885#define U_DIB_PAL_COLORS 1
886#define U_DIB_PAL_INDICES 2
895#define U_EMR_COMMENT_WINDOWS_METAFILE 0x80000001
896#define U_EMR_COMMENT_BEGINGROUP 0x00000002
897#define U_EMR_COMMENT_ENDGROUP 0x00000003
898#define U_EMR_COMMENT_MULTIFORMATS 0x40000004
899#define U_EMR_COMMENT_UNICODE_STRING 0x00000040
900#define U_EMR_COMMENT_UNICODE_END 0x00000080
909#define U_ETO_NONE 0x00000000
910#define U_ETO_GRAYED 0x00000001
911#define U_ETO_OPAQUE 0x00000002
912#define U_ETO_CLIPPED 0x00000004
913#define U_ETO_GLYPH_INDEX 0x00000010
914#define U_ETO_RTLREADING 0x00000080
915#define U_ETO_NO_RECT 0x00000100
916#define U_ETO_SMALL_CHARS 0x00000200
917#define U_ETO_NUMERICSLOCAL 0x00000400
918#define U_ETO_NUMERICSLATIN 0x00000800
919#define U_ETO_IGNORELANGUAGE 0x00001000
920#define U_ETO_PDY 0x00002000
921#define U_ETO_REVERSE_INDEX_MAP 0x00010000
930#define U_PAN_FAMILY_TEXT_DISPLAY 2
931#define U_PAN_FAMILY_SCRIPT 3
932#define U_PAN_FAMILY_DECORATIVE 4
933#define U_PAN_FAMILY_PICTORIAL 5
942#define U_FLOODFILLBORDER 0x00000000
943#define U_FLOODFILLSURFACE 0x00000001
952#define U_ENHMETA_SIGNATURE 0x464D4520
953#define U_EPS_SIGNATURE 0x46535045
962#define U_GRADIENT_FILL_RECT_H 0x00000000
963#define U_GRADIENT_FILL_RECT_V 0x00000001
964#define U_GRADIENT_FILL_TRIANGLE 0x00000002
973#define U_GM_COMPATIBLE 1
974#define U_GM_ADVANCED 2
984#define U_HS_HORIZONTAL 0
985#define U_HS_VERTICAL 1
986#define U_HS_FDIAGONAL 2
987#define U_HS_BDIAGONAL 3
989#define U_HS_DIAGCROSS 5
990#define U_HS_SOLIDCLR 6
991#define U_HS_DITHEREDCLR 7
992#define U_HS_SOLIDTEXTCLR 8
993#define U_HS_DITHEREDTEXTCLR 9
994#define U_HS_SOLIDBKCLR 10
995#define U_HS_DITHEREDBKCLR 11
1006#define U_ICM_QUERY 3
1015#define U_ILLUMINANT_DEVICE_DEFAULT 0
1016#define U_ILLUMINANT_A 1
1017#define U_ILLUMINANT_B 2
1018#define U_ILLUMINANT_C 3
1019#define U_ILLUMINANT_D50 4
1020#define U_ILLUMINANT_D55 5
1021#define U_ILLUMINANT_D65 6
1022#define U_ILLUMINANT_D75 7
1023#define U_ILLUMINANT_F2 8
1024#define U_ILLUMINANT_MAX_INDEX ILLUMINANT_F2
1025#define U_ILLUMINANT_TUNGSTEN ILLUMINANT_A
1026#define U_ILLUMINANT_DAYLIGHT ILLUMINANT_C
1027#define U_ILLUMINANT_FLUORESCENT ILLUMINANT_F2
1028#define U_ILLUMINANT_NTSC ILLUMINANT_C
1037#define U_PAN_LETT_NORMAL_COMPACT 2
1038#define U_PAN_LETT_NORMAL_WEIGHTED 3
1039#define U_PAN_LETT_NORMAL_BOXED 4
1040#define U_PAN_LETT_NORMAL_FLATTENED 5
1041#define U_PAN_LETT_NORMAL_ROUNDED 6
1042#define U_PAN_LETT_NORMAL_OFF_CENTER 7
1043#define U_PAN_LETT_NORMAL_SQUARE 8
1044#define U_PAN_LETT_OBLIQUE_COMPACT 9
1045#define U_PAN_LETT_OBLIQUE_WEIGHTED 10
1046#define U_PAN_LETT_OBLIQUE_BOXED 11
1047#define U_PAN_LETT_OBLIQUE_FLATTENED 12
1048#define U_PAN_LETT_OBLIQUE_ROUNDED 13
1049#define U_PAN_LETT_OBLIQUE_OFF_CENTER 14
1050#define U_PAN_LETT_OBLIQUE_SQUARE 15
1060#define U_MM_LOMETRIC 2
1061#define U_MM_HIMETRIC 3
1062#define U_MM_LOENGLISH 4
1063#define U_MM_HIENGLISH 5
1065#define U_MM_ISOTROPIC 7
1066#define U_MM_ANISOTROPIC 8
1067#define U_MM_MIN U_MM_TEXT
1068#define U_MM_MAX U_MM_ANISOTROPIC
1069#define U_MM_MAX_FIXEDSCALE U_MM_TWIPS
1078#define U_ENHMETA_VERSION 0x00010000
1087#define U_PAN_MIDLINE_STANDARD_TRIMMED 2
1088#define U_PAN_MIDLINE_STANDARD_POINTED 3
1089#define U_PAN_MIDLINE_STANDARD_SERIFED 4
1090#define U_PAN_MIDLINE_HIGH_TRIMMED 5
1091#define U_PAN_MIDLINE_HIGH_POINTED 6
1092#define U_PAN_MIDLINE_HIGH_SERIFED 7
1093#define U_PAN_MIDLINE_CONSTANT_TRIMMED 8
1094#define U_PAN_MIDLINE_CONSTANT_POINTED 9
1095#define U_PAN_MIDLINE_CONSTANT_SERIFED 10
1096#define U_PAN_MIDLINE_LOW_TRIMMED 11
1097#define U_PAN_MIDLINE_LOW_POINTED 12
1098#define U_PAN_MIDLINE_LOW_SERIFED 13
1107#define U_MWT_IDENTITY 1
1108#define U_MWT_LEFTMULTIPLY 2
1109#define U_MWT_RIGHTMULTIPLY 3
1110#define U_MWT_MIN U_MWT_IDENTITY
1111#define U_MWT_MAX U_MWT_RIGHTMULTIPLY
1120#define U_PS_SOLID 0x00000000
1121#define U_PS_DASH 0x00000001
1122#define U_PS_DOT 0x00000002
1123#define U_PS_DASHDOT 0x00000003
1124#define U_PS_DASHDOTDOT 0x00000004
1125#define U_PS_NULL 0x00000005
1126#define U_PS_INSIDEFRAME 0x00000006
1127#define U_PS_USERSTYLE 0x00000007
1128#define U_PS_ALTERNATE 0x00000008
1129#define U_PS_STYLE_MASK 0x0000000f
1131#define U_PS_ENDCAP_ROUND 0x00000000
1132#define U_PS_ENDCAP_SQUARE 0x00000100
1133#define U_PS_ENDCAP_FLAT 0x00000200
1134#define U_PS_ENDCAP_MASK 0x00000f00
1136#define U_PS_JOIN_ROUND 0x00000000
1137#define U_PS_JOIN_BEVEL 0x00001000
1138#define U_PS_JOIN_MITER 0x00002000
1139#define U_PS_JOIN_MASK 0x0000f000
1141#define U_PS_COSMETIC 0x00000000
1142#define U_PS_GEOMETRIC 0x00010000
1143#define U_PS_TYPE_MASK 0x000f0000
1151#define U_PT_CLOSEFIGURE 0x0001
1152#define U_PT_LINETO 0x0002
1153#define U_PT_BEZIERTO 0x0004
1154#define U_PT_MOVETO 0x0006
1163#define U_ALTERNATE 1
1165#define U_POLYFILL_LAST 2
1174#define U_PAN_PROP_OLD_STYLE 2
1175#define U_PAN_PROP_MODERN 3
1176#define U_PAN_PROP_EVEN_WIDTH 4
1177#define U_PAN_PROP_EXPANDED 5
1178#define U_PAN_PROP_CONDENSED 6
1179#define U_PAN_PROP_VERY_EXPANDED 7
1180#define U_PAN_PROP_VERY_CONDENSED 8
1181#define U_PAN_PROP_MONOSPACED 9
1196#define U_RGN_MIN U_RGN_AND
1197#define U_RGN_MAX U_RGN_COPY
1206#define U_PAN_SERIF_COVE 2
1207#define U_PAN_SERIF_OBTUSE_COVE 3
1208#define U_PAN_SERIF_SQUARE_COVE 4
1209#define U_PAN_SERIF_OBTUSE_SQUARE_COVE 5
1210#define U_PAN_SERIF_SQUARE 6
1211#define U_PAN_SERIF_THIN 7
1212#define U_PAN_SERIF_BONE 8
1213#define U_PAN_SERIF_EXAGGERATED 9
1214#define U_PAN_SERIF_TRIANGLE 10
1215#define U_PAN_SERIF_NORMAL_SANS 11
1216#define U_PAN_SERIF_OBTUSE_SANS 12
1217#define U_PAN_SERIF_PERP_SANS 13
1218#define U_PAN_SERIF_FLARED 14
1219#define U_PAN_SERIF_ROUNDED 15
1228#define U_STOCK_OBJECT 0x80000000
1229#define U_WHITE_BRUSH 0x80000000
1230#define U_LTGRAY_BRUSH 0x80000001
1231#define U_GRAY_BRUSH 0x80000002
1232#define U_DKGRAY_BRUSH 0x80000003
1233#define U_BLACK_BRUSH 0x80000004
1234#define U_NULL_BRUSH 0x80000005
1235#define U_HOLLOW_BRUSH 0x80000005
1236#define U_WHITE_PEN 0x80000006
1237#define U_BLACK_PEN 0x80000007
1238#define U_NULL_PEN 0x80000008
1239#define U_OEM_FIXED_FONT 0x8000000A
1240#define U_ANSI_FIXED_FONT 0x8000000B
1241#define U_ANSI_VAR_FONT 0x8000000C
1242#define U_SYSTEM_FONT 0x8000000D
1243#define U_DEVICE_DEFAULT_FONT 0x8000000E
1244#define U_DEFAULT_PALETTE 0x8000000F
1245#define U_SYSTEM_FIXED_FONT 0x80000010
1246#define U_DEFAULT_GUI_FONT 0x80000011
1247#define U_STOCK_LAST 0x80000011
1256#define U_BLACKONWHITE 1
1257#define U_WHITEONBLACK 2
1258#define U_COLORONCOLOR 3
1260#define U_MAXSTRETCHBLTMODE 4
1261#define U_STRETCH_ANDSCANS 1
1262#define U_STRETCH_ORSCANS 2
1263#define U_STRETCH_DELETESCANS 3
1264#define U_STRETCH_HALFTONE 4
1273#define U_PAN_STROKE_GRADUAL_DIAG 2
1274#define U_PAN_STROKE_GRADUAL_TRAN 3
1275#define U_PAN_STROKE_GRADUAL_VERT 4
1276#define U_PAN_STROKE_GRADUAL_HORZ 5
1277#define U_PAN_STROKE_RAPID_VERT 6
1278#define U_PAN_STROKE_RAPID_HORZ 7
1279#define U_PAN_STROKE_INSTANT_VERT 8
1287#define U_PAN_WEIGHT_VERY_LIGHT 2
1288#define U_PAN_WEIGHT_LIGHT 3
1289#define U_PAN_WEIGHT_THIN 4
1290#define U_PAN_WEIGHT_BOOK 5
1291#define U_PAN_WEIGHT_MEDIUM 6
1292#define U_PAN_WEIGHT_DEMI 7
1293#define U_PAN_WEIGHT_BOLD 8
1294#define U_PAN_WEIGHT_HEAVY 9
1295#define U_PAN_WEIGHT_BLACK 10
1296#define U_PAN_WEIGHT_NORD 11
1304#define U_PAN_XHEIGHT_CONSTANT_SMALL 2
1305#define U_PAN_XHEIGHT_CONSTANT_STANDARD 3
1306#define U_PAN_XHEIGHT_CONSTANT_LARGE 4
1307#define U_PAN_XHEIGHT_DUCKING_SMALL 5
1308#define U_PAN_XHEIGHT_DUCKING_STANDARD 6
1309#define U_PAN_XHEIGHT_DUCKING_LARGE 7
1317#define U_FW_DONTCARE 0
1318#define U_FW_THIN 100
1319#define U_FW_EXTRALIGHT 200
1320#define U_FW_ULTRALIGHT 200
1321#define U_FW_LIGHT 300
1322#define U_FW_NORMAL 400
1323#define U_FW_REGULAR 400
1324#define U_FW_MEDIUM 500
1325#define U_FW_SEMIBOLD 600
1326#define U_FW_DEMIBOLD 600
1327#define U_FW_BOLD 700
1328#define U_FW_EXTRABOLD 800
1329#define U_FW_ULTRABOLD 800
1330#define U_FW_HEAVY 900
1331#define U_FW_BLACK 900
1340#define U_FW_NOITALIC 0
1341#define U_FW_ITALIC 1
1350#define U_FW_NOUNDERLINE 0
1351#define U_FW_UNDERLINE 1
1359#define U_FW_NOSTRIKEOUT 0
1360#define U_FW_STRIKEOUT 1
1368#define U_ANSI_CHARSET (uint8_t)0
1369#define U_DEFAULT_CHARSET (uint8_t)1
1370#define U_SYMBOL_CHARSET (uint8_t)2
1371#define U_SHIFTJIS_CHARSET (uint8_t)128
1372#define U_HANGEUL_CHARSET (uint8_t)129
1373#define U_HANGUL_CHARSET U_HANGEUL_CHARSET
1374#define U_GB2312_CHARSET (uint8_t)134
1375#define U_CHINESEBIG5_CHARSET (uint8_t)136
1376#define U_GREEK_CHARSET (uint8_t)161
1377#define U_TURKISH_CHARSET (uint8_t)162
1378#define U_HEBREW_CHARSET (uint8_t)177
1379#define U_ARABIC_CHARSET (uint8_t)178
1380#define U_BALTIC_CHARSET (uint8_t)186
1381#define U_RUSSIAN_CHARSET (uint8_t)204
1382#define U_EE_CHARSET (uint8_t)238
1383#define U_EASTEUROPE_CHARSET U_EE_CHARSET
1384#define U_THAI_CHARSET (uint8_t)222
1385#define U_JOHAB_CHARSET (uint8_t)130
1386#define U_MAC_CHARSET (uint8_t)77
1387#define U_OEM_CHARSET (uint8_t)255
1388#define U_VISCII_CHARSET (uint8_t)240
1389#define U_TCVN_CHARSET (uint8_t)241
1390#define U_KOI8_CHARSET (uint8_t)242
1391#define U_ISO3_CHARSET (uint8_t)243
1392#define U_ISO4_CHARSET (uint8_t)244
1393#define U_ISO10_CHARSET (uint8_t)245
1394#define U_CELTIC_CHARSET (uint8_t)246
1402#define U_OUT_DEFAULT_PRECIS 0
1403#define U_OUT_STRING_PRECIS 1
1404#define U_OUT_CHARACTER_PRECIS 2
1405#define U_OUT_STROKE_PRECIS 3
1406#define U_OUT_TT_PRECIS 4
1407#define U_OUT_DEVICE_PRECIS 5
1408#define U_OUT_RASTER_PRECIS 6
1409#define U_OUT_TT_ONLY_PRECIS 7
1410#define U_OUT_OUTLINE_PRECIS 8
1418#define U_CLIP_DEFAULT_PRECIS 0x00
1419#define U_CLIP_CHARACTER_PRECIS 0x01
1420#define U_CLIP_STROKE_PRECIS 0x02
1421#define U_CLIP_MASK 0x0F
1422#define U_CLIP_LH_ANGLES 0x10
1423#define U_CLIP_TT_ALWAYS 0x20
1424#define U_CLIP_EMBEDDED 0x80
1432#define U_DEFAULT_QUALITY 0
1433#define U_DRAFT_QUALITY 1
1434#define U_PROOF_QUALITY 2
1435#define U_NONANTIALIASED_QUALITY 3
1436#define U_ANTIALIASED_QUALITY 4
1444#define U_DEFAULT_PITCH 0x00
1445#define U_FIXED_PITCH 0x01
1446#define U_VARIABLE_PITCH 0x02
1447#define U_MONO_FONT 0x08
1448#define U_FF_DONTCARE 0x00
1449#define U_FF_ROMAN 0x10
1450#define U_FF_SWISS 0x20
1451#define U_FF_MODERN 0x30
1452#define U_FF_SCRIPT 0x40
1453#define U_FF_DECORATIVE 0x50
1463#define U_BS_HOLLOW 1
1464#define U_BS_HATCHED 2
1465#define U_BS_PATTERN 3
1466#define U_BS_INDEXED 4
1467#define U_BS_DIBPATTERN 5
1468#define U_BS_DIBPATTERNPT 6
1469#define U_BS_PATTERN8X8 7
1470#define U_BS_DIBPATTERN8X8 8
1471#define U_BS_MONOPATTERN 9
1480#define U_PAN_FAMILYTYPE_INDEX 0
1481#define U_PAN_SERIFSTYLE_INDEX 1
1482#define U_PAN_WEIGHT_INDEX 2
1483#define U_PAN_PROPORTION_INDEX 3
1484#define U_PAN_CONTRAST_INDEX 4
1485#define U_PAN_STROKEVARIATION_INDEX 5
1486#define U_PAN_ARMSTYLE_INDEX 6
1487#define U_PAN_LETTERFORM_INDEX 7
1488#define U_PAN_MIDLINE_INDEX 8
1489#define U_PAN_XHEIGHT_INDEX 9
1490#define U_PAN_COUNT 10
1500#define U_PFD_MAIN_PLANE 0
1501#define U_PFD_OVERLAY_PLANE 1
1502#define U_PFD_UNDERLAY_PLANE (-1)
1511#define U_PFD_TYPE_RGBA 0
1512#define U_PFD_TYPE_COLORINDEX 1
1520#define U_PFD_DOUBLEBUFFER 0x00000001
1521#define U_PFD_STEREO 0x00000002
1522#define U_PFD_DRAW_TO_WINDOW 0x00000004
1523#define U_PFD_DRAW_TO_BITMAP 0x00000008
1524#define U_PFD_SUPPORT_GDI 0x00000010
1525#define U_PFD_SUPPORT_OPENGL 0x00000020
1526#define U_PFD_GENERIC_FORMAT 0x00000040
1527#define U_PFD_NEED_PALETTE 0x00000080
1528#define U_PFD_NEED_SYSTEM_PALETTE 0x00000100
1529#define U_PFD_SWAP_EXCHANGE 0x00000200
1530#define U_PFD_SWAP_COPY 0x00000400
1531#define U_PFD_SWAP_LAYER_BUFFERS 0x00000800
1532#define U_PFD_GENERIC_ACCELERATED 0x00001000
1540#define U_EMR_COMMENT_PUBLIC 0x43494447
1541#define U_EMR_COMMENT_SPOOL 0x00000000
1542#define U_EMR_COMMENT_EMFPLUSRECORD 0x2B464D45
1550#define U_LAYOUT_LTR 0x00000000
1551#define U_LAYOUT_RTL 0x00000001
1552#define U_LAYOUT_BITMAPORIENTATIONPRESERVED 0x00000008
1560#define U_AC_SRC_GLOBAL 0
1561#define U_AC_SRC_CONST 0
1562#define U_AC_SRC_ALPHA 1
1577#define U_BGR(r,g,b) rgbquad_set(r, g, b, 0)
1578#define U_BGRA(r,g,b,a) rgbquad_set(r, g, b, a)
1579#define U_WHITE U_BGR(255,255,255)
1580#define U_BLACK U_BGR(0,0,0)
1581#define U_BGRAGetR(rgb) (rgb.Red )
1582#define U_BGRAGetG(rgb) (rgb.Green )
1583#define U_BGRAGetB(rgb) (rgb.Blue )
1584#define U_BGRAGetA(rgb) (rgb.Reserved)
1593#define colorref_set colorref3_set
1594#define U_RGB(r,g,b) colorref3_set(r, g, b)
1595#define U_RGBA(r,g,b,a) colorref4_set(r, g, b, a)
1596#define U_RGBAGetR(rgb) (rgb.Red )
1597#define U_RGBAGetG(rgb) (rgb.Green )
1598#define U_RGBAGetB(rgb) (rgb.Blue )
1599#define U_RGBAGetA(rgb) (rgb.Reserved)
1602#define U_RGB2BGR(rgb) U_BGR(U_RGBAGetR(rgb),U_RGBAGetG(rgb),U_RGBAGetB(rgb))
1603#define U_BGR2RGB(rgb) U_RGB(U_BGRAGetR(rgb),U_BGRAGetG(rgb),U_BGRAGetB(rgb))
1604#define U_RGBA2BGRA(rgb) U_BGRA(U_RGBAGetR(rgb),U_RGBAGetG(rgb),U_RGBAGetB(rgb),U_RGBAGetA(rgb)}
1605#define U_BGRA2RGBA(rgb) U_RGBA(U_BGRAGetR(rgb),U_BGRAGetG(rgb),U_BGRAGetB(rgb),U_BGRAGetA(rgb)}
1608#define U_CMYK(c,m,y,k)\
1609 ((COLOREF)((((uint8_t)(k)|((uint16_t)((uint8_t)(y))<<8))|(((uint32_t)(uint8_t)(m))<<16))|(((uint32_t)(uint8_t)(c))<<24))) \
1611#define U_GetKValue(cmyk) ((uint8_t) (cmyk) )
1612#define U_GetYValue(cmyk) ((uint8_t) ((cymk) >> 8))
1613#define U_GetMValue(cmyk) ((uint8_t) ((cymk) >> 16))
1614#define U_GetCValue(cmyk) ((uint8_t) ((cymk) >> 24))
1617#define U_Gamma(A) (A < U_RGB_GAMMA_MIN ? U_RGB_GAMMA_MIN : (A > U_RGB_GAMMA_MAX ? U_RGB_GAMMA_MAX: A)) \
1619#define U_PM(A,B) ((A)<-(B)?-(B):((A)>(B)?(B):(A)))
1620#define U_MNMX(A,B,C) ((A)<(B)?(B):((A)>(C)?(C):(A)))
1621#define U_MIN(A,B) ((A)>(B)?(B):(A))
1622#define U_MAX(A,B) ((A)>(B)?(A):(B))
1625#define U_EMRTYPE(A) (((PU_EMR)A)->iType)
1626#define U_EMRSIZE(A) (((PU_EMR)A)->nSize)
1629#define UP4(A) (4 * ((A + 3 ) / 4))
1693#define U_SIZE_DESIGNVECTOR (sizeof(uint32_t) + sizeof(U_NUM_FNTAXES))
1841 uint16_t lfFaceName[U_LF_FACESIZE];
1868#define U_PAN_ALL0 (U_PANOSE){0,0,0,0,0,0,0,0,0,0}
1869#define U_PAN_ALL1 (U_PANOSE){1,1,1,1,1,1,1,1,1,1}
1878 uint16_t elfFullName[U_LF_FULLFACESIZE];
1879 uint16_t elfStyle[U_LF_FACESIZE];
1884 uint8_t elfVendorId[U_ELF_VENDOR_SIZE];
1917#define U_SIZE_LOGPALETTE (2*sizeof(uint16_t))
1987#define U_SIZE_RGNDATAHEADER (sizeof(U_RGNDATAHEADER))
2000#define U_SIZE_RGNDATA U_SIZE_RGNDATAHEADER
2036#define U_SIZE_EXTLOGPEN (sizeof(U_EXTLOGPEN) - sizeof(U_STYLEENTRY))
2050#define U_SIZE_BITMAPINFO U_SIZE_BITMAPINFOHEADER
2077#define U_SIZE_ENHMETARECORD (2*sizeof(uint32_t))
2106#define U_SIZE_EMRNOTIMPLEMENTED 2048
2150#define U_SIZE_EMRHEADER sizeof(U_EMRHEADER)
2151#define U_SIZE_EMRHEADER_MIN (U_SIZE_EMRHEADER - sizeof(U_CBPXLFMT) - sizeof(U_OFFPXLFMT) - sizeof(uint32_t) - sizeof(U_SIZEL))
2172#define U_SIZE_EMRPOLYBEZIER (sizeof(U_EMR) + sizeof(U_RECTL) + sizeof(U_NUM_POINTL) )
2173#define U_SIZE_EMRPOLYGON U_SIZE_EMRPOLYBEZIER
2174#define U_SIZE_EMRPOLYLINE U_SIZE_EMRPOLYBEZIER
2175#define U_SIZE_EMRPOLYBEZIERTO U_SIZE_EMRPOLYBEZIER
2176#define U_SIZE_EMRPOLYLINETO U_SIZE_EMRPOLYBEZIER
2193#define U_SIZE_EMRPOLYPOLYLINE (sizeof(U_EMR) + sizeof(U_RECTL) + sizeof(U_NUM_POLYCOUNTS) + sizeof(U_NUM_POINTL))
2194#define U_SIZE_EMRPOLYPOLYGON U_SIZE_EMRPOLYPOLYLINE
2206#define U_SIZE_EMRSETWINDOWEXTEX (sizeof(U_EMRSETWINDOWEXTEX ))
2207#define U_SIZE_EMRSETVIEWPORTEXTEX (sizeof(U_EMRSETVIEWPORTEXTEX))
2221#define U_SIZE_EMRSETWINDOWORGEX (sizeof(U_EMRSETWINDOWORGEX ))
2222#define U_SIZE_EMRSETVIEWPORTORGEX (sizeof(U_EMRSETVIEWPORTORGEX))
2223#define U_SIZE_EMRSETBRUSHORGEX (sizeof(U_EMRSETBRUSHORGEX ))
2243#define U_SIZE_EMREOF (sizeof(U_EMREOF))
2254#define U_SIZE_EMRSETPIXELV (sizeof(U_EMRSETPIXELV))
2264#define U_SIZE_EMRSETMAPPERFLAGS (sizeof(U_EMRSETMAPPERFLAGS))
2292#define U_SIZE_EMRSETMAPMODE (sizeof(U_EMRSETMAPMODE ))
2293#define U_SIZE_EMRSETBKMODE (sizeof(U_EMRSETBKMODE ))
2294#define U_SIZE_EMRSETPOLYFILLMODE (sizeof(U_EMRSETPOLYFILLMODE ))
2295#define U_SIZE_EMRSETROP2 (sizeof(U_EMRSETROP2 ))
2296#define U_SIZE_EMRSETSTRETCHBLTMODE (sizeof(U_EMRSETSTRETCHBLTMODE))
2297#define U_SIZE_EMRSETTEXTALIGN (sizeof(U_EMRSETTEXTALIGN ))
2298#define U_SIZE_EMRSELECTCLIPPATH (sizeof(U_EMRSELECTCLIPPATH ))
2299#define U_SIZE_EMRSETICMMODE (sizeof(U_EMRSETICMMODE ))
2300#define U_SIZE_EMRSETLAYOUT (sizeof(U_EMRSETLAYOUT ))
2310#define U_SIZE_EMRSETCOLORADJUSTMENT (sizeof(U_EMRSETCOLORADJUSTMENT))
2322#define U_SIZE_EMRSETTEXTCOLOR (sizeof(U_EMRSETTEXTCOLOR))
2323#define U_SIZE_EMRSETBKCOLOR (sizeof(U_EMRSETBKCOLOR ))
2333#define U_SIZE_EMROFFSETCLIPRGN (sizeof(U_EMROFFSETCLIPRGN))
2347#define U_SIZE_EMRMOVETOEX (sizeof(U_EMRMOVETOEX))
2348#define U_SIZE_EMRLINETO (sizeof(U_EMRLINETO ))
2374#define U_SIZE_EMRSETMETARGN (sizeof(U_EMRSETMETARGN ))
2375#define U_SIZE_EMRSAVEDC (sizeof(U_EMRSAVEDC ))
2376#define U_SIZE_EMRREALIZEPALETTE (sizeof(U_EMRREALIZEPALETTE))
2377#define U_SIZE_EMRBEGINPATH (sizeof(U_EMRBEGINPATH ))
2378#define U_SIZE_EMRENDPATH (sizeof(U_EMRENDPATH ))
2379#define U_SIZE_EMRCLOSEFIGURE (sizeof(U_EMRCLOSEFIGURE ))
2380#define U_SIZE_EMRFLATTENPATH (sizeof(U_EMRFLATTENPATH ))
2381#define U_SIZE_EMRWIDENPATH (sizeof(U_EMRWIDENPATH ))
2382#define U_SIZE_EMRABORTPATH (sizeof(U_EMRABORTPATH ))
2394#define U_SIZE_EMREXCLUDECLIPRECT (sizeof(U_EMREXCLUDECLIPRECT ))
2395#define U_SIZE_EMRINTERSECTCLIPRECT (sizeof(U_EMRINTERSECTCLIPRECT ))
2410#define U_SIZE_EMRSCALEVIEWPORTEXTEX (sizeof(U_EMRSCALEVIEWPORTEXTEX))
2411#define U_SIZE_EMRSCALEWINDOWEXTEX (sizeof(U_EMRSCALEWINDOWEXTEX ))
2423#define U_SIZE_EMRRESTOREDC (sizeof(U_EMRRESTOREDC))
2433#define U_SIZE_EMRSETWORLDTRANSFORM (sizeof(U_EMRSETWORLDTRANSFORM))
2444#define U_SIZE_EMRMODIFYWORLDTRANSFORM (sizeof(U_EMRMODIFYWORLDTRANSFORM))
2456#define U_SIZE_EMRDELETEOBJECT (sizeof(U_EMRDELETEOBJECT))
2457#define U_SIZE_EMRSELECTOBJECT (sizeof(U_EMRSELECTOBJECT))
2468#define U_SIZE_EMRCREATEPEN (sizeof(U_EMRCREATEPEN))
2479#define U_SIZE_EMRCREATEBRUSHINDIRECT (sizeof(U_EMRCREATEBRUSHINDIRECT))
2494#define U_SIZE_EMRANGLEARC (sizeof(U_EMRANGLEARC))
2506#define U_SIZE_EMRELLIPSE (sizeof(U_EMRELLIPSE ))
2507#define U_SIZE_EMRRECTANGLE (sizeof(U_EMRRECTANGLE))
2518#define U_SIZE_EMRROUNDRECT (sizeof(U_EMRROUNDRECT))
2536#define U_SIZE_EMRARC (sizeof(U_EMRARC ))
2537#define U_SIZE_EMRCHORD (sizeof(U_EMRCHORD))
2538#define U_SIZE_EMRPIE (sizeof(U_EMRPIE ))
2539#define U_SIZE_EMRARCTO (sizeof(U_EMRARCTO))
2549#define U_SIZE_EMRSELECTPALETTE (sizeof(U_EMRSELECTPALETTE))
2560#define U_SIZE_EMRCREATEPALETTE (sizeof(U_EMR) + sizeof(uint32_t) + U_SIZE_LOGPALETTE)
2573#define U_SIZE_EMRSETPALETTEENTRIES (sizeof(U_EMR) + 2*sizeof(uint32_t) + sizeof(U_NUM_LOGPLTNTRY))
2584#define U_SIZE_EMRRESIZEPALETTE (sizeof(U_EMRRESIZEPALETTE))
2598#define U_SIZE_EMREXTFLOODFILL (sizeof(U_EMREXTFLOODFILL))
2617#define U_SIZE_EMRPOLYDRAW (sizeof(U_EMR) + sizeof(U_RECTL) + sizeof(U_NUM_POINTL))
2627#define U_SIZE_EMRSETARCDIRECTION (sizeof(U_EMRSETARCDIRECTION))
2640#define U_SIZE_EMRSETMITERLIMIT (sizeof(U_EMRSETMITERLIMIT))
2656#define U_SIZE_EMRFILLPATH (sizeof(U_EMRFILLPATH ))
2657#define U_SIZE_EMRSTROKEANDFILLPATH (sizeof(U_EMRSTROKEANDFILLPATH))
2658#define U_SIZE_EMRSTROKEPATH (sizeof(U_EMRSTROKEPATH ))
2675#define U_SIZE_EMRCOMMENT (sizeof(U_EMR) + sizeof(U_CBDATA))
2687#define U_SIZE_EMRCOMMENT_EMFPLUS (sizeof(U_EMR) + sizeof(U_CBDATA) + sizeof(uint32_t))
2699#define U_SIZE_EMRCOMMENT_SPOOL (sizeof(U_EMR) + sizeof(U_CBDATA) + 2*sizeof(uint32_t))
2711#define U_SIZE_EMRCOMMENT_PUBLIC (sizeof(U_EMR) + sizeof(U_CBDATA) + 2*sizeof(uint32_t))
2725#define U_SIZE_EMRFILLRGN (sizeof(U_EMR) + sizeof(U_RECTL) + sizeof(U_CBRGNDATA) + sizeof(uint32_t))
2739#define U_SIZE_EMRFRAMERGN (sizeof(U_EMR) + sizeof(U_RECTL) + sizeof(U_CBRGNDATA) + sizeof(uint32_t) + sizeof(U_SIZEL))
2753#define U_SIZE_EMRINVERTRGN (sizeof(U_EMR) + sizeof(U_RECTL) + sizeof(U_CBRGNDATA))
2754#define U_SIZE_EMRPAINTRGN U_SIZE_EMRINVERTRGN
2766#define U_SIZE_EMREXTSELECTCLIPRGN (sizeof(U_EMR) + sizeof(U_CBRGNDATA) + sizeof(uint32_t))
2788#define U_SIZE_EMRBITBLT (sizeof(U_EMRBITBLT))
2811#define U_SIZE_EMRSTRETCHBLT (sizeof(U_EMRSTRETCHBLT))
2839#define U_SIZE_EMRMASKBLT (sizeof(U_EMRMASKBLT))
2866#define U_SIZE_EMRPLGBLT (sizeof(U_EMRPLGBLT))
2887#define U_SIZE_EMRSETDIBITSTODEVICE (sizeof(U_EMRSETDIBITSTODEVICE))
2908#define U_SIZE_EMRSTRETCHDIBITS (sizeof(U_EMRSTRETCHDIBITS))
2919#define U_SIZE_EMREXTCREATEFONTINDIRECTW_LOGFONT_PANOSE (sizeof(U_EMR) + 4 + sizeof(U_LOGFONT_PANOSE))
2920#define U_SIZE_EMREXTCREATEFONTINDIRECTW_LOGFONT (sizeof(U_EMR) + 4 + sizeof(U_LOGFONT))
2944#define U_SIZE_EMREXTTEXTOUTA (sizeof(U_EMREXTTEXTOUTA))
2945#define U_SIZE_EMREXTTEXTOUTW (sizeof(U_EMREXTTEXTOUTW))
2965#define U_SIZE_EMRPOLYBEZIER16 (sizeof(U_EMR) + sizeof(U_RECTL) + sizeof(U_NUM_POINT16))
2966#define U_SIZE_EMRPOLYGON16 U_SIZE_EMRPOLYBEZIER16
2967#define U_SIZE_EMRPOLYLINE16 U_SIZE_EMRPOLYBEZIER16
2968#define U_SIZE_EMRPOLYBEZIERTO16 U_SIZE_EMRPOLYBEZIER16
2969#define U_SIZE_EMRPOLYLINETO16 U_SIZE_EMRPOLYBEZIER16
2986#define U_SIZE_EMRPOLYPOLYLINE16 (sizeof(U_EMR) + sizeof(U_RECTL) + sizeof(U_NUM_POLYCOUNTS) + sizeof(U_NUM_POINT16))
2987#define U_SIZE_EMRPOLYPOLYGON16 U_SIZE_EMRPOLYPOLYLINE16
3003#define U_SIZE_EMRPOLYDRAW16 (sizeof(U_EMR) + sizeof(U_RECTL) + sizeof(U_NUM_POINT16))
3019#define U_SIZE_EMRCREATEMONOBRUSH (sizeof(U_EMRCREATEMONOBRUSH))
3035#define U_SIZE_EMRCREATEDIBPATTERNBRUSHPT (sizeof(U_EMRCREATEDIBPATTERNBRUSHPT))
3051#define U_SIZE_EMREXTCREATEPEN (sizeof(U_EMREXTCREATEPEN) - sizeof(U_EXTLOGPEN) + U_SIZE_EXTLOGPEN)
3068#define U_SIZE_EMRPOLYTEXTOUTA (sizeof(U_EMR) + sizeof(U_RECTL) + sizeof(uint32_t) + 2*sizeof(U_FLOAT) + sizeof(U_NUM_EMRTEXT))
3069#define U_SIZE_EMRPOLYTEXTOUTW U_SIZE_EMRPOLYTEXTOUTA
3082#define U_SIZE_EMRCREATECOLORSPACE (sizeof(U_EMRCREATECOLORSPACE))
3094#define U_SIZE_EMRDELETECOLORSPACE (sizeof(U_EMRDELETECOLORSPACE))
3095#define U_SIZE_EMRSETCOLORSPACE (sizeof(U_EMRSETCOLORSPACE ))
3106#define U_SIZE_EMRGLSRECORD (sizeof(U_EMR) + sizeof(U_CBDATA))
3118#define U_SIZE_EMRGLSBOUNDEDRECORD (sizeof(U_EMR) + sizeof(U_RECTL) + sizeof(U_CBDATA))
3128#define U_SIZE_EMRPIXELFORMAT (sizeof(U_EMRPIXELFORMAT))
3139#define U_SIZE_EMRDRAWESCAPE (sizeof(U_EMR) + sizeof(U_CBDATA))
3150#define U_SIZE_EMREXTESCAPE (sizeof(U_EMR) + sizeof(U_CBDATA))
3170#define U_SIZE_EMRSMALLTEXTOUT (sizeof(U_EMRSMALLTEXTOUT))
3189#define U_SIZE_EMRNAMEDESCAPE (sizeof(U_EMR) + 2*sizeof(U_CBDATA))
3218#define U_SIZE_EMRALPHABLEND (sizeof(U_EMRALPHABLEND))
3243#define U_SIZE_EMRTRANSPARENTBLT (sizeof(U_EMRTRANSPARENTBLT))
3262#define U_SIZE_EMRGRADIENTFILL (sizeof(U_EMRGRADIENTFILL))
3281#define U_SIZE_EMRCOLORMATCHTOTARGETW (sizeof(U_EMR) + 2*sizeof(uint32_t) + sizeof(U_CBNAME) + sizeof(U_CBDATA))
3295#define U_SIZE_EMRCREATECOLORSPACEW (sizeof(U_EMR) + 2*sizeof(uint32_t) + sizeof(U_LOGCOLORSPACEW) + sizeof(U_CBDATA))
3298#define U_SIZE_EMRUNDEFINED 2048
3352int memprobe(
const void *
buf,
size_t size);
3357void dumpeht(
char *
string,
unsigned int *handle,
EMFHANDLES *eht);
3360char *U_emr_names(
unsigned int idx);
3361uint32_t *dx_set(int32_t
height, uint32_t
weight, uint32_t members);
3362uint32_t emr_properties(uint32_t type);
3366int get_real_color_count(
const char *Bmih);
3367int get_real_color_icount(
int Colors,
int BitCount,
int Width,
int Height);
3368int RGBA_to_DIB(
char **px, uint32_t *cbPx,
PU_RGBQUAD *ct,
int *numCt,
3369 const char *rgba_px,
int w,
int h,
int stride, uint32_t colortype,
int use_ct,
int invert);
3370int get_DIB_params(
const char *record, uint32_t offBitsSrc, uint32_t offBmiSrc,
3371 const char **px,
const U_RGBQUAD **ct, uint32_t *numCt,
3373int DIB_to_RGBA(
const char *px,
const U_RGBQUAD *ct,
int numCt,
3374 char **rgba_px,
int w,
int h, uint32_t colortype,
int use_ct,
int invert);
3375char *RGBA_to_RGBA(
char *rgba_px,
int w,
int h,
int sl,
int st,
int *ew,
int *eh);
3377int device_size(
const int xmm,
const int ymm,
const float dpmm,
U_SIZEL *szlDev,
U_SIZEL *szlMm);
3378int drawing_size(
const int xmm,
const int yum,
const float dpmm,
U_RECTL *rclBounds,
U_RECTL *rclFrame);
3380int emf_start(
const char *
name,
const uint32_t initsize,
const uint32_t chunksize,
EMFTRACK **et);
3384int emf_readdata(
const char *filename,
char **contents,
size_t *length);
3385FILE *emf_fopen(
const char *filename,
const int mode);
3389int emf_htable_create(uint32_t initsize, uint32_t chunksize,
EMFHANDLES **eht);
3390int emf_htable_delete(uint32_t *ih,
EMFHANDLES *eht);
3391int emf_htable_insert(uint32_t *ih,
EMFHANDLES *eht);
3394#define htable_create emf_htable_create
3395#define htable_delete emf_htable_delete
3396#define htable_insert emf_htable_insert
3397#define htable_free emf_htable_free
3401U_SIZEL sizel_set(int32_t x, int32_t y);
3402U_POINTL point32_set(int32_t x, int32_t y);
3403#define point_set point32_set
3404#define pointl_set point32_set
3405U_POINT16 point16_set(int16_t x, int16_t y);
3406U_PANOSE panose_set(uint8_t bFamilyType, uint8_t bSerifStyle, uint8_t bWeight, uint8_t bProportion,
3407 uint8_t bContrast, uint8_t bStrokeVariation, uint8_t bArmStyle, uint8_t bLetterform,
3408 uint8_t bMidline, uint8_t bXHeight );
3409U_COLORREF colorref3_set(uint8_t red, uint8_t green, uint8_t blue);
3410U_COLORREF colorref4_set(uint8_t red, uint8_t green, uint8_t blue, uint8_t reserved);
3411U_RGBQUAD rgbquad_set(uint8_t red,uint8_t green, uint8_t blue, uint8_t reserved);
3416PU_EXTLOGPEN extlogpen_set(uint32_t elpPenStyle, uint32_t elpWidth, uint32_t elpBrushStyle,
3419 uint16_t *elfStyle, uint32_t elfStyleSize,
U_PANOSE elfPanose);
3420U_LOGFONT logfont_set( int32_t lfHeight, int32_t lfWidth, int32_t lfEscapement, int32_t lfOrientation,
3421 int32_t lfWeight, uint8_t lfItalic, uint8_t lfUnderline, uint8_t lfStrikeOut,
3422 uint8_t lfCharSet, uint8_t lfOutPrecision, uint8_t lfClipPrecision,
3423 uint8_t lfQuality, uint8_t lfPitchAndFamily, uint16_t *lfFaceName);
3424char *emrtext_set(
U_POINTL ptlReference,
U_NUM_STR NumString, uint32_t cbChar,
void *String, uint32_t fOptions,
U_RECTL rcl, uint32_t *Dx);
3425U_LOGPLTNTRY logpltntry_set(uint8_t peReserved,uint8_t peRed,uint8_t peGreen,uint8_t peBlue);
3430 uint16_t biPlanes, uint16_t biBitCount, uint32_t biCompression,
3431 uint32_t biSizeImage, int32_t biXPelsPerMeter,
3432 int32_t biYPelsPerMeter,
U_NUM_RGBQUAD biClrUsed, uint32_t biClrImportant);
3438U_COLORADJUSTMENT coloradjustment_set(uint16_t Size, uint16_t Flags, uint16_t IlluminantIndex,
3439 uint16_t RedGamma, uint16_t GreenGamma, uint16_t BlueGamma,
3440 uint16_t ReferenceBlack, uint16_t ReferenceWhite,
3441 int16_t Contrast, int16_t Brightness, int16_t Colorfulness, int16_t RedGreenTint);
3443 uint8_t cRedBits, uint8_t cRedShift,
3444 uint8_t cGreenBits, uint8_t cGreenShift,
3445 uint8_t cBlueBits, uint8_t cBlueShift,
3446 uint8_t cAlphaBits, uint8_t cAlphaShift,
3447 uint8_t cAccumBits, uint8_t cAccumRedBits, uint8_t cAccumGreenBits, uint8_t cAccumBlueBits,
3448 uint8_t cAccumAlphaBits, uint8_t cDepthBits, uint8_t cStencilBits,
3449 uint8_t cAuxBuffers, uint8_t iLayerType, uint8_t bReserved, uint32_t dwLayerMask,
3450 uint32_t dwVisibleMask, uint32_t dwDamageMask);
3460char *emr_dup(
const char *emr);
3462char *textcomment_set(
const char *
string);
3465char *deleteobject_set(uint32_t *ihObject,
EMFHANDLES *eht);
3466char *selectobject_set(uint32_t ihObject,
EMFHANDLES *eht);
3468char *extcreatepen_set(uint32_t *ihPen,
EMFHANDLES *eht,
3471char *createdibpatternbrushpt_set(uint32_t *ihBrush,
EMFHANDLES *eht, uint32_t iUsage,
3473char *createmonobrush_set(uint32_t *ihBrush,
EMFHANDLES *eht, uint32_t iUsage,
3475char *extcreatefontindirectw_set(uint32_t *ihFont,
EMFHANDLES *eht,
const char *elf,
const char *elfw);
3485 const uint32_t bOpenGL);
3486char *U_EMRPOLYBEZIER_set(
const U_RECTL rclBounds,
const uint32_t count,
const U_POINTL *points);
3487char *U_EMRPOLYGON_set(
const U_RECTL rclBounds,
const uint32_t count,
const U_POINTL *points);
3488char *U_EMRPOLYLINE_set(
const U_RECTL rclBounds,
const uint32_t count,
const U_POINTL *points);
3489char *U_EMRPOLYBEZIERTO_set(
const U_RECTL rclBounds,
const uint32_t count,
const U_POINTL *points);
3490char *U_EMRPOLYLINETO_set(
const U_RECTL rclBounds,
const uint32_t count,
const U_POINTL *points);
3492char *U_EMRPOLYPOLYLINE_set(
const U_RECTL rclBounds,
const uint32_t nPolys,
const uint32_t *aPolyCounts,
3493 const uint32_t cptl,
const U_POINTL *points);
3494char *U_EMRPOLYPOLYGON_set(
const U_RECTL rclBounds,
const uint32_t nPolys,
const uint32_t *aPolyCounts,
3495 const uint32_t cptl,
const U_POINTL *points);
3496char *U_EMRSETWINDOWEXTEX_set(
const U_SIZEL szlExtent);
3497char *U_EMRSETWINDOWORGEX_set(
const U_POINTL ptlOrigin);
3498char *U_EMRSETVIEWPORTEXTEX_set(
const U_SIZEL szlExtent);
3499char *U_EMRSETVIEWPORTORGEX_set(
const U_POINTL ptlOrigin);
3500char *U_EMRSETBRUSHORGEX_set(
const U_POINTL ptlOrigin);
3503char *U_EMRSETMAPPERFLAGS_set(
void);
3504char *U_EMRSETMAPMODE_set(
const uint32_t iMode);
3505char *U_EMRSETBKMODE_set(
const uint32_t iMode);
3506char *U_EMRSETPOLYFILLMODE_set(
const uint32_t iMode);
3507char *U_EMRSETROP2_set(
const uint32_t iMode);
3508char *U_EMRSETSTRETCHBLTMODE_set(
const uint32_t iMode);
3509char *U_EMRSETTEXTALIGN_set(
const uint32_t iMode);
3511char *U_EMRSETTEXTCOLOR_set(
const U_COLORREF crColor);
3512char *U_EMRSETBKCOLOR_set(
const U_COLORREF crColor);
3513char *U_EMROFFSETCLIPRGN_set(
const U_POINTL ptl);
3514char *U_EMRMOVETOEX_set(
const U_POINTL ptl);
3515char *U_EMRSETMETARGN_set(
void);
3516char *U_EMREXCLUDECLIPRECT_set(
const U_RECTL rclClip);
3517char *U_EMRINTERSECTCLIPRECT_set(
const U_RECTL rclClip);
3518char *U_EMRSCALEVIEWPORTEXTEX_set(
const int32_t xNum,
const int32_t xDenom,
const int32_t yNum,
const int32_t yDenom);
3519char *U_EMRSCALEWINDOWEXTEX_set(
const int32_t xNum,
const int32_t xDenom,
const int32_t yNum,
const int32_t yDenom);
3520char *U_EMRSAVEDC_set(
void);
3521char *U_EMRRESTOREDC_set(
const int32_t iRelative);
3522char *U_EMRSETWORLDTRANSFORM_set(
const U_XFORM xform);
3523char *U_EMRMODIFYWORLDTRANSFORM_set(
const U_XFORM xform,
const uint32_t iMode);
3524char *U_EMRSELECTOBJECT_set(
const uint32_t ihObject);
3525char *U_EMRCREATEPEN_set(
const uint32_t ihPen,
const U_LOGPEN lopn );
3526char *U_EMRCREATEBRUSHINDIRECT_set(
const uint32_t ihBrush,
const U_LOGBRUSH lb);
3527char *U_EMRDELETEOBJECT_set(
const uint32_t ihObject);
3528char *U_EMRANGLEARC_set(
const U_POINTL ptlCenter,
const uint32_t nRadius,
const U_FLOAT eStartAngle,
const U_FLOAT eSweepAngle);
3529char *U_EMRELLIPSE_set(
const U_RECTL rclBox);
3530char *U_EMRRECTANGLE_set(
const U_RECTL rclBox);
3531char *U_EMRROUNDRECT_set(
const U_RECTL rclBox,
const U_SIZEL szlCorner);
3535char *U_EMRSELECTPALETTE_set(
const uint32_t ihPal);
3536char *U_EMRCREATEPALETTE_set(
const uint32_t ihPal,
const U_LOGPALETTE lgpl);
3537char *U_EMRSETPALETTEENTRIES_set(
const uint32_t ihPal,
const uint32_t iStart,
const U_NUM_LOGPLTNTRY cEntries,
const PU_LOGPLTNTRY aPalEntries);
3538char *U_EMRRESIZEPALETTE_set(
const uint32_t ihPal,
const uint32_t cEntries);
3539char *U_EMRREALIZEPALETTE_set(
void);
3540char *U_EMREXTFLOODFILL_set(
const U_POINTL ptlStart,
const U_COLORREF crColor,
const uint32_t iMode);
3541char *U_EMRLINETO_set(
const U_POINTL ptl);
3544char *U_EMRSETARCDIRECTION_set(
const uint32_t iArcDirection);
3545char *U_EMRSETMITERLIMIT_set(
const uint32_t eMiterLimit);
3546char *U_EMRBEGINPATH_set(
void);
3547char *U_EMRENDPATH_set(
void);
3548char *U_EMRCLOSEFIGURE_set(
void);
3549char *U_EMRFILLPATH_set(
const U_RECTL rclBox);
3550char *U_EMRSTROKEANDFILLPATH_set(
const U_RECTL rclBox);
3551char *U_EMRSTROKEPATH_set(
const U_RECTL rclBox);
3552char *U_EMRFLATTENPATH_set(
void);
3553char *U_EMRWIDENPATH_set(
void);
3554char *U_EMRSELECTCLIPPATH_set(
const uint32_t iMode);
3555char *U_EMRABORTPATH_set(
void);
3557char *U_EMRCOMMENT_set(
const U_CBDATA cbData,
const char *Data);
3558char *U_EMRFILLRGN_set(
const U_RECTL rclBounds,
const uint32_t ihBrush,
const PU_RGNDATA RgnData);
3559char *U_EMRFRAMERGN_set(
const U_RECTL rclBounds,
const uint32_t ihBrush,
const U_SIZEL szlStroke,
const PU_RGNDATA RgnData);
3560char *U_EMRINVERTRGN_set(
const PU_RGNDATA RgnData);
3561char *U_EMRPAINTRGN_set(
const PU_RGNDATA RgnData);
3562char *U_EMREXTSELECTCLIPRGN_set(
const uint32_t iMode,
const PU_RGNDATA RgnData);
3565 const uint32_t iUsageSrc,
const uint32_t dwRop,
3569 const uint32_t dwRop,
3573 const U_POINTL Mask,
const uint32_t iUsageMask,
3574 const uint32_t dwRop,
3576 const PU_BITMAPINFO BmiMsk,
const uint32_t cbMsk,
char *Msk);
3579 const U_POINTL Mask,
const uint32_t iUsageMask,
3581 const PU_BITMAPINFO BmiMsk,
const uint32_t cbMsk,
char *Msk);
3582char *U_EMRSETDIBITSTODEVICE_set(
const U_RECTL rclBounds,
const U_POINTL Dest,
3584 const uint32_t iStartScan,
const uint32_t cScans,
3588 const uint32_t dwRop,
3590char *U_EMREXTCREATEFONTINDIRECTW_set( uint32_t ihFont,
const char *elf,
const char *elfw);
3593char *U_EMRPOLYBEZIER16_set(
const U_RECTL rclBounds,
const uint32_t cpts,
const U_POINT16 *points);
3594char *U_EMRPOLYGON16_set(
const U_RECTL rclBounds,
const uint32_t cpts,
const U_POINT16 *points);
3595char *U_EMRPOLYLINE16_set(
const U_RECTL rclBounds,
const uint32_t cpts,
const U_POINT16 *points);
3596char *U_EMRPOLYBEZIERTO16_set(
const U_RECTL rclBounds,
const uint32_t cpts,
const U_POINT16 *points);
3597char *U_EMRPOLYLINETO16_set(
const U_RECTL rclBounds,
const uint32_t cpts,
const U_POINT16 *points);
3598char *U_EMRPOLYPOLYLINE16_set(
const U_RECTL rclBounds,
const uint32_t nPolys,
const uint32_t *aPolyCounts,
const uint32_t cpts,
const U_POINT16 *points);
3599char *U_EMRPOLYPOLYGON16_set(
const U_RECTL rclBounds,
const uint32_t nPolys,
const uint32_t *aPolyCounts,
const uint32_t cpts,
const U_POINT16 *points);
3601char *U_EMRCREATEMONOBRUSH_set(
const uint32_t ihBrush,
const uint32_t iUsage,
3602 const PU_BITMAPINFO Bmi,
const uint32_t cbPx,
const char *Px);
3603char *U_EMRCREATEDIBPATTERNBRUSHPT_set(
const uint32_t ihBrush,
const uint32_t iUsage,
3604 const PU_BITMAPINFO Bmi,
const uint32_t cbPx,
const char *Px);
3605char *U_EMREXTCREATEPEN_set(
const uint32_t ihPen,
const PU_BITMAPINFO Bmi,
const uint32_t cbPx,
char *Px,
const PU_EXTLOGPEN elp );
3608char *U_EMRSETICMMODE_set(
const uint32_t iMode);
3609char *U_EMRCREATECOLORSPACE_set(
const uint32_t ihCS,
const U_LOGCOLORSPACEA lcs);
3610char *U_EMRSETCOLORSPACE_set(
const uint32_t ihCS );
3611char *U_EMRDELETECOLORSPACE_set(
const uint32_t ihCS);
3615char *U_EMRSMALLTEXTOUT_set(
const U_POINTL Dest,
const U_NUM_STR cChars,
const uint32_t fuOptions,
const uint32_t iGraphicsMode,
3630 const U_COLORREF crBkColorSrc,
const uint32_t iUsageSrc,
3633char *U_EMRSETLAYOUT_set(
const uint32_t iMode);
3636 const U_COLORREF crBkColorSrc,
const uint32_t iUsageSrc,
const uint32_t TColor,
3640 const uint32_t ulMode,
const PU_TRIVERTEX TriVert,
const uint32_t *GradObj );
3644char *U_EMRCREATECOLORSPACEW_set(
const uint32_t ihCS,
const U_LOGCOLORSPACEW lcs,
const uint32_t dwFlags,
3645 const U_CBDATA cbData,
const uint8_t *Data);
void invert(const double v[16], double alpha[16])
The various create functions need a place to put their handles, these are stored in the table below.
uint32_t top
Highest slot occupied (currently)
uint32_t * table
Array Buffer for constructing the EMF in memory.
size_t chunk
Number to add if a realloc is required.
size_t allocated
Slots in the buffer.
uint32_t * stack
handles are either on the stack or in the table
uint32_t sptr
Pointer to next available handle in the stack.
uint32_t peak
Highest slot occupied (ever)
Storage for keeping track of properties of the growing EMF file as records are added.
uint16_t ignore
size padding,not used
char * buf
Buffer for constructing the EMF in memory.
uint32_t records
Number of records already contained.
size_t allocated
Size of the buffer.
uint32_t PalEntries
Number of PalEntries (set from U_EMREOF)
size_t used
Amount consumed.
uint32_t chunk
Number of bytes to add when more space is needed.
For U_POINT28_4 x and y fields.
signed IntValue
Signed integral bit field.
unsigned FracValue
Unsigned integral bit field.
For U_EMR_* OffBmi* fields.
U_BITMAPINFOHEADER bmiHeader
Geometry and pixel properties.
U_EMRALPHABLEND Blend field.
uint8_t Op
Blend Enumeration.
uint8_t Global
Alpha for whole thing if Op is U_AC_SRC_GLOBAL (AKA U_AC_SRC_GLOBAL)
uint8_t Operation
Must be 0.
U_CIEXYZ ciexyzRed
CIE XYZ coord of red endpoint of colorspace.
U_CIEXYZ ciexyzBlue
CIE XYZ coord of blue endpoint of colorspace.
U_CIEXYZ ciexyzGreen
CIE XYZ coord of green endpoint of colorspace.
int32_t ciexyzX
CIE color space X component.
int32_t ciexyzZ
CIE color space Z component.
int32_t ciexyzY
CIE color space Y component.
For U_EMRSETOLORADJUSTMENT ColorAdjustment field.
uint16_t caFlags
ColorAdjustment Enumeration.
uint16_t caReferenceWhite
Values more than this are white (range:6000:10000)
int16_t caBrightness
Brightness adjustment (range:-100:100, 0 is no correction)
int16_t caContrast
Contrast adjustment (range:-100:100, 0 is no correction)
uint16_t caIlluminantIndex
Illuminant Enumeration.
uint16_t caRedGamma
Red Gamma correction (range:2500:65000, 10000 is no correction)
int16_t caRedGreenTint
Tine adjustment (range:-100:100, 0 is no correction)
uint16_t caBlueGamma
Blue Gamma correction (range:2500:65000, 10000 is no correction)
uint16_t caSize
Size of this structure in bytes.
uint16_t caGreenGamma
Green Gamma correction (range:2500:65000, 10000 is no correction)
uint16_t caReferenceBlack
Values less than this are black (range:0:4000)
int16_t caColorfulness
Colorfulness adjustment (range:-100:100, 0 is no correction)
uint8_t Red
Red color (0-255)
uint8_t Reserved
Not used.
uint8_t Blue
Blue color (0-255)
uint8_t Green
Green color (0-255)
uint32_t Signature
Must be 0x08007664 (AKA: DV_SGNTR)
U_NUM_FNTAXES NumAxes
Number of elements in Values, 0-16.
U_POINTL cSrc
Source W & H in logical units Record may include optional DIB bitmap.
U_POINTL cDest
Destination W & H in logical units.
U_OFFBITSSRC offBitsSrc
Offset in bytes to the bitmap (within bitmapbuffer)
U_XFORM xformSrc
Transform to apply to source.
U_BLEND Blend
Blend Function.
U_POINTL Src
Source UL corner in logical units.
U_RECTL rclBounds
Bounding rectangle in device units.
uint32_t iUsageSrc
DIBcolors Enumeration.
U_OFFBMISRC offBmiSrc
Offset in bytes to U_BITMAPINFO (within bitmapbuffer)
U_COLORREF crBkColorSrc
Background color.
U_CBBITS cbBitsSrc
Size in bytes of bitmap.
U_CBBMISRC cbBmiSrc
Size in bytes of U_BITMAPINFO.
U_POINTL Dest
Destination UL corner in logical units.
uint32_t nRadius
Radius in logical units.
U_FLOAT eSweepAngle
Sweep angle in degrees.
U_FLOAT eStartAngle
Starting angle in degrees (counter clockwise from x axis)
U_POINTL ptlCenter
Center in logical units.
U_POINTL ptlEnd
End point in logical units.
U_POINTL ptlStart
Start point in logical units.
U_RECTL rclBox
bounding rectangle in logical units
U_OFFBITSSRC offBitsSrc
Offset in bytes to the bitmap (within bitmapbuffer)
U_OFFBMISRC offBmiSrc
Offset in bytes to U_BITMAPINFO (within bitmapbuffer)
U_POINTL Dest
Destination UL corner in logical units.
U_XFORM xformSrc
Source bitmap transform (world to page coordinates)
uint32_t dwRop
Ternary Raster Operation enumeration.
U_POINTL cDest
Destination width in logical units.
U_CBBITS cbBitsSrc
Size in bytes of bitmap Record may include optional bitmapbuffer.
uint32_t iUsageSrc
DIBcolors Enumeration.
U_CBBMISRC cbBmiSrc
Size in bytes of U_BITMAPINFO.
U_COLORREF crBkColorSrc
Source bitmap background color.
U_RECTL rclBounds
Bounding rectangle in device units.
U_POINTL Src
Source retangle UL corner in logical units.
uint32_t dwFlags
ColorMatchToTarget Enumeration.
U_CBDATA cbData
Number of bytes of the target profile.
uint32_t dwAction
ColorSpace Enumeration.
U_CBNAME cbName
Number of bytes in UTF16 name of the color profile.
uint32_t ihBrush
Index to place object in EMF object table (this entry must not yet exist)
U_LOGBRUSH lb
Brush properties.
U_LOGCOLORSPACEW lcs
Description of the color profile.
uint32_t dwFlags
If low bit set Data is present.
U_CBDATA cbData
Number of bytes of theData field.
uint32_t ihCS
Index of the logical color space object in the EMF object table.
uint32_t ihCS
Index to place object in EMF object table (this entry must not yet exist)
U_LOGCOLORSPACEA lcs
ColorSpace parameters.
U_OFFBITS offBits
Offset in bytes to the DIB bitmap data (within DIB bitmapbuffer.
uint32_t ihBrush
Index to place object in EMF object table (this entry must not yet exist)
U_OFFBMI offBmi
Offset in bytes to U_BITMAPINFO (within DIB bitmapbuffer)
uint32_t iUsage
DIBcolors Enumeration.
U_CBBITS cbBits
Size in bytes of DIB bitmap Record may include optional DIB bitmapbuffer.
U_CBBMI cbBmi
Size in bytes of U_BITMAPINFO.
U_CBBITS cbBits
Size in bytes of DIB bitmap Record may include optional DIB bitmapbuffer.
U_CBBMI cbBmi
Size in bytes of U_BITMAPINFO.
uint32_t ihBrush
Index to place object in EMF object table (this entry must not yet exist)
U_OFFBMI offBmi
Offset in bytes to U_BITMAPINFO (within DIBbitmapbuffer)
U_OFFBITS offBits
Offset in bytes to the DIB bitmap data (within DIBbitmapbuffer.
uint32_t iUsage
DIBcolors Enumeration.
uint32_t ihPal
Index to place object in EMF object table (this entry must not yet exist)
U_LOGPALETTE lgpl
Palette properties (variable size)
U_LOGPEN lopn
Pen properties.
uint32_t ihPen
Index to place object in EMF object table (this entry must not yet exist)
uint32_t ihCS
Index of object in EMF object table.
uint32_t ihObject
Number of a stock or created object.
U_CBDATA cjIn
Number of bytes to send to printer driver.
U_RECTL rclBox
bounding rectangle in logical units
U_CBPLENTRIES cbPalEntries
Number of palette entries.
U_OFFPLENTRIES offPalEntries
Offset in bytes to array of palette entries.
U_RECTL rclClip
Clipping Region.
U_LOGFONT_PANOSE elfw
Font parameters, either U_LOGFONT or U_LOGFONT_PANOSE, the latter is bigger so use that type here.
uint32_t ihFont
Index of the font in the EMF object table.
U_CBBITS cbBits
Size in bytes of DIB bitmap.
U_OFFBITS offBits
Offset in bytes to the DIB bitmap data (within DIB bitmapbuffer.
uint32_t ihPen
Index to place object in EMF object table (this entry must not yet exist)
U_CBBMI cbBmi
Size in bytes of U_BITMAPINFO.
U_OFFBMI offBmi
Offset in bytes to U_BITMAPINFO (within DIB bitmapbuffer)
U_EXTLOGPEN elp
Pen parameters (Size is Variable!!!!) Record may include optional DIB bitmap.
U_CBDATA cjIn
Number of bytes to send to printer driver.
U_POINTL ptlStart
Start point in logical units.
uint32_t iMode
FloodFill Enumeration.
U_COLORREF crColor
Color to fill with.
uint32_t iMode
RegionMode Enumeration
U_CBRGNDATA cbRgnData
Size in bytes of Region data.
uint32_t iGraphicsMode
GraphicsMode Enumeration.
U_RECTL rclBounds
Bounding rectangle in device units.
U_EMRTEXT emrtext
Text parameters.
U_FLOAT eyScale
scale to 0.01 mm units ( only if iGraphicsMode & U_GM_COMPATIBLE)
U_FLOAT exScale
scale to 0.01 mm units ( only if iGraphicsMode & U_GM_COMPATIBLE)
U_RECTL rclBounds
Bounding rectangle in device units.
EMF manual 2.3.5.10 followed by a variable number of U_RECTLs
U_CBRGNDATA cbRgnData
Size in bytes of Region data.
uint32_t ihBrush
Index of a Brush object in the EMF object table.
U_RECTL rclBounds
Bounding rectangle in device units.
U_CBRGNDATA cbRgnData
Size in bytes of Region data.
U_SIZEL szlStroke
W & H of Brush stroke.
U_RECTL rclBounds
Bounding rectangle in device units.
uint32_t ihBrush
Index of a Brush object in the EMF object table.
Generic EMR record with two 32 bit values.
U_PAIR pair
pair of 32 bit values
U_RECTL rclBounds
Bounding rectangle in device units.
U_CBDATA cbData
Size of OpenGL data in bytes.
U_CBDATA cbData
Size of OpenGL data in bytes.
U_NUM_GRADOBJ nGradObj
Number of gradient triangle/rectangle objects.
uint32_t ulMode
Gradientfill Enumeration (determines Triangle/Rectangle)
U_NUM_TRIVERTEX nTriVert
Number of TriVertex objects.
U_RECTL rclBounds
Bounding rectangle in device units.
U_RECTL rclBounds
Bounding rectangle in device units.
U_CBRGNDATA cbRgnData
Size in bytes of Region data.
U_OFFBMISRC offBmiSrc
Offset in bytes to U_BITMAPINFO (within srcbitmapbuffer)
U_POINTL Src
Source UL corner in logical units.
uint32_t iUsageSrc
DIBcolors Enumeration.
U_CBBITSMSK cbBitsMask
Size in bytes of bitmap Record may include optional Source and mask bitmapbuffers.
U_POINTL Dest
Destination UL corner in logical units.
U_CBBMIMSK cbBmiMask
Size in bytes of U_BITMAPINFO.
U_OFFBITSMSK offBitsMask
Offset in bytes to the mask bitmap (within maskbitmapbuffer)
U_XFORM xformSrc
Transform to apply to source.
uint32_t iUsageMask
DIBcolors Enumeration.
uint32_t dwRop
Ternary Raster Operation enumeration.
U_POINTL cDest
Destination width in logical units.
U_RECTL rclBounds
Bounding rectangle in device units.
U_OFFBITSSRC offBitsSrc
Offset in bytes to the src bitmap (within srcbitmapbuffer)
U_OFFBMIMSK offBmiMask
Offset in bytes to U_BITMAPINFO (within maskbitmapbuffer)
U_POINTL Mask
Mask UL corner in logical units.
U_CBBITS cbBitsSrc
Size in bytes of src bitmap.
U_CBBMISRC cbBmiSrc
Size in bytes of U_BITMAPINFO.
U_COLORREF crBkColorSrc
Background color.
EMF manual 2.3.11.4 EMF manual 2.3.5.13
U_POINTL ptl
Point coordinates.
U_CBDATA cbDriver
Number of bytes in driver name (note, BYTES, not CHARACTERS)
U_CBDATA cbData
Number of bytes in data.
U_POINTL ptlOffset
Clipping region.
U_POINTL Mask
Mask UL corner in logical units.
U_POINTL Src
Source UL corner in logical units.
U_OFFBMISRC offBmiSrc
Offset in bytes to U_BITMAPINFO (within srcbitmapbuffer)
U_RECTL rclBounds
Bounding rectangle in device units.
U_OFFBITSSRC offBitsSrc
Offset in bytes to the src bitmap (within srcbitmapbuffer)
U_OFFBITSMSK offBitsMask
Offset in bytes to the mask bitmap (within maskbitmapbuffer)
U_CBBMISRC cbBmiSrc
Size in bytes of U_BITMAPINFO.
U_CBBITSMSK cbBitsMask
Size in bytes of bitmap Record may include optional Source and mask bitmapbuffers.
uint32_t iUsageMask
DIBcolors Enumeration.
uint32_t iUsageSrc
DIBcolors Enumeration.
U_OFFBMIMSK offBmiMask
Offset in bytes to U_BITMAPINFO (within maskbitmapbuffer)
U_POINTL cSrc
Src W & H in logical units.
U_CBBMIMSK cbBmiMask
Size in bytes of U_BITMAPINFO.
U_XFORM xformSrc
Transform to apply to source.
U_CBBITS cbBitsSrc
Size in bytes of src bitmap.
U_COLORREF crBkColorSrc
Background color.
U_RECTL rclBounds
Bounding rectangle in device units.
U_NUM_POINT16 cpts
Number of POINT16 in array.
U_NUM_POINTL cptl
Number of points to draw.
U_RECTL rclBounds
bounding rectangle in device units
U_RECTL rclBounds
Bounding rectangle in device units.
U_NUM_POINT16 cpts
Total number of points (over all poly)
U_NUM_POINTL cptl
Number of U_POINTL objects.
U_RECTL rclBounds
Bounding rectangle in device units.
U_NUM_POINT16 cpts
Total number of points (over all poly)
U_RECTL rclBounds
Bounding rectangle in device units.
U_NUM_POLYCOUNTS nPolys
Number of elements in aPolyCounts.
U_RECTL rclBounds
bounding rectangle in device units
U_NUM_POINTL cptl
Total number of points (over all poly)
U_NUM_POLYCOUNTS nPolys
Number of elements in aPolyCounts.
U_FLOAT exScale
scale to 0.01 mm units ( only if iGraphicsMode & U_GM_COMPATIBLE)
U_RECTL rclBounds
Bounding rectangle in device units.
U_FLOAT eyScale
scale to 0.01 mm units ( only if iGraphicsMode & U_GM_COMPATIBLE)
U_NUM_EMRTEXT cStrings
Number of U_EMRTEXT in array.
uint32_t iGraphicsMode
GraphicsMode Enumeration.
uint32_t cEntries
Number to expand or truncate the Palette entry list to.
uint32_t ihPal
Index of a Palette object in the EMF object table.
int32_t iRelative
DC to restore. -1 is preceding.
U_RECTL rclBox
bounding rectangle in logical units
U_SIZEL szlCorner
W & H in logical units of ellipse used to round corner.
int32_t yNum
Vertical multiplier (!=0)
int32_t xDenom
Horizontal divisor (!=0)
int32_t yDenom
Vertical divisor (!=0)
int32_t xNum
Horizontal multiplier (!=0)
uint32_t ihPal
Index of a Palette object in the EMF object table.
uint32_t iArcDirection
ArcDirection Enumeration.
U_COLORADJUSTMENT ColorAdjustment
Color Adjustment.
U_CBBITS cbBitsSrc
Size in bytes of bitmap.
U_OFFBMISRC offBmiSrc
Offset in bytes to U_BITMAPINFO (within bitmapbuffer)
U_POINTL Src
Source LL corner in logical units.
U_POINTL Dest
Destination UL corner in logical units.
uint32_t iUsageSrc
DIBColors Enumeration.
U_CBBMISRC cbBmiSrc
Size in bytes of U_BITMAPINFO.
U_POINTL cSrc
Src W & H in logical units.
U_OFFBITSSRC offBitsSrc
Offset in bytes to bitmap.
U_RECTL rclBounds
Bounding rectangle in device units.
uint32_t iStartScan
First scan line.
uint32_t cScans
Number of scan lines Record may includes optional bitmapbuffer.
EMF manual 2.3.11.19 MapMode enumeration.
uint32_t iMode
enumeration varies with type
uint32_t dwFlags
must be 1
uint32_t eMiterLimit
Miter limit (max value of mitered length / line width)
uint32_t iStart
First Palette entry in selected object to set.
U_NUM_LOGPLTNTRY cEntries
Number of Palette entries in selected object to set.
uint32_t ihPal
Index of a Palette object in the EMF object table.
U_COLORREF crColor
Pixel color.
U_POINTL ptlPixel
Pixel coordinates (logical)
U_SIZEL szlExtent
H & V extent in logical units.
U_POINTL ptlOrigin
H & V origin in logical units.
U_POINTL Dest
Where to draw the text.
U_FLOAT eyScale
scale on Y axis
uint32_t iGraphicsMode
GraphicsMode Enumeration.
U_NUM_STR cChars
Characters in TextString (not null terminated)
uint32_t fuOptions
ExtTextOutOptions Enumeration.
U_FLOAT exScale
scale on X axis
U_CBBITS cbBitsSrc
Size in bytes of bitmap.
U_OFFBMISRC offBmiSrc
Offset in bytes to U_BITMAPINFO (within bitmapbuffer)
U_RECTL rclBounds
Bounding rectangle in device units.
uint32_t dwRop
Ternary Raster Operation enumeration.
U_POINTL cSrc
Src W & H in logical units Record may include optional bitmapbuffer.
U_OFFBITSSRC offBitsSrc
Offset in bytes to the bitmap (within bitmapbuffer)
uint32_t iUsageSrc
DIBcolors Enumeration.
U_COLORREF crBkColorSrc
Background color.
U_XFORM xformSrc
Transform to apply to source.
U_POINTL Src
Source UL corner in logical units.
U_CBBMISRC cbBmiSrc
Size in bytes of U_BITMAPINFO.
U_POINTL Dest
Destination UL corner in logical units.
U_POINTL cDest
Destination width in logical units.
uint32_t dwRop
Ternary Raster Operation enumeration.
U_POINTL cDest
Destination W & H in logical units Record may includes optional bitmapbuffer.
U_POINTL Src
Source UL corner in logical units.
U_POINTL Dest
Destination UL corner in logical units.
U_OFFBITSSRC offBitsSrc
Offset in bytes to bitmap.
U_RECTL rclBounds
Bounding rectangle in device units.
U_CBBITS cbBitsSrc
Size in bytes of bitmap.
U_CBBMISRC cbBmiSrc
Size in bytes of U_BITMAPINFO.
U_OFFBMISRC offBmiSrc
Offset in bytes to U_BITMAPINFO (within bitmapbuffer)
U_POINTL cSrc
Source W & H in logical units.
uint32_t iUsageSrc
DIBColors Enumeration.
For U_EMR[POLY]EXTTEXTOUT[A|W] emrtext field.
uint32_t fOptions
ExtTextOutOptions Enumeration.
U_POINTL ptlReference
String start coordinates.
U_OFFSTR offString
Offset in bytes to the string from the start of the RECORD.
U_NUM_STR nChars
Number of characters in the string.
U_CBBMISRC cbBmiSrc
Size in bytes of U_BITMAPINFO.
U_POINTL cSrc
Source W & H in logical units Record may includes optional bitmapbuffer.
U_XFORM xformSrc
Transform to apply to source.
U_POINTL cDest
Destination W & H in logical units.
U_CBBITS cbBitsSrc
Size in bytes of bitmap.
U_RECTL rclBounds
Bounding rectangle in device units.
U_OFFBITSSRC offBitsSrc
Offset in bytes to the bitmap (within bitmapbuffer)
U_OFFBMISRC offBmiSrc
Offset in bytes to U_BITMAPINFO (within bitmapbuffer)
uint32_t TColor
Bitmap color to be treated as transparent.
U_POINTL Dest
Destination UL corner in logical units.
U_POINTL Src
Source UL corner in logical units.
U_COLORREF crBkColorSrc
Background color.
uint32_t iUsageSrc
DIBcolors Enumeration.
First two fields of all EMF records, First two fields of all EMF+ records (1 or more within an EMF co...
uint32_t iType
Type of EMR record.
uint32_t nSize
Size of entire record in bytes (multiple of 4).
For embedding EPS in EMF via U_EMRFORMAT offData array in U_EMR_COMMENT_MULTIFORMATS.
uint32_t sizeData
Size in bytes of this object.
U_RECTL PostScriptData
Record may include optional clipping/opaque rectangle.
uint32_t version
Must be 1.
For U_EMREXTCREATEPEN lopn field.
U_NUM_STYLEENTRY elpNumEntries
Count of StyleEntry array.
uint32_t elpWidth
Width in logical units (elpPenStyle & U_PS_GEOMETRIC) or 1 (pixel)
uint32_t elpPenStyle
PenStyle Enumeration.
U_COLORREF elpColor
Pen color.
uint32_t elpBrushStyle
LB_Style Enumeration.
uint32_t elpHatch
HatchStyle Enumeration.
For U_EMRGRADIENTFILL GradObj field.
uint32_t Vertex3
Index of Vertex3 in an array of U_TRIVERTEX objects.
uint32_t Vertex1
Index of Vertex1 in an array of U_TRIVERTEX objects.
uint32_t Vertex2
Index of Vertex2 in an array of U_TRIVERTEX objects.
For U_EMRGRADIENTFILL GradObj field.
uint32_t UpperLeft
Index of UL corner in an array of U_TRIVERTEX objects.
uint32_t LowerRight
Index of LR corner in an array of U_TRIVERTEX objects.
U_LCS_GAMMA lcsGammaRed
Red Gamma.
U_LCS_GAMMA lcsGammaBlue
Blue Gamma.
U_LCS_GAMMA lcsGammaGreen
Green Gamma.
unsigned fracPart
fraction part
unsigned ignoreHi
not used
unsigned ignoreLo
not used
unsigned intPart
integer part
For U_EMRCREATEBRUSHINDIRECT lb field.
U_COLORREF lbColor
Brush color.
uint32_t lbHatch
HatchStyle Enumeration.
uint32_t lbStyle
< In MS documentation this is LogBrushEx Object
uint32_t lcsSignature
must be U_LCS_SIGNATURE
int32_t lcsIntent
LCS_Intent Enumeration.
U_CIEXYZTRIPLE lcsEndpoints
CIE XYZ color space endpoints.
uint32_t lcsVersion
must be U_LCS_VERSION
uint32_t lcsSize
Size in bytes of this structure.
U_LCS_GAMMARGB lcsGammaRGB
Gamma For RGB.
int32_t lcsCSType
LCS_CSType Enumeration.
uint32_t lcsSize
Size in bytes of this structure.
int32_t lcsIntent
lcsIntent Enumeration
uint32_t lcsVersion
must be U_LCS_VERSION
int32_t lcsCSType
lcsCSType Enumeration
U_LCS_GAMMARGB lcsGammaRGB
Gamma For RGB.
U_CIEXYZTRIPLE lcsEndpoints
CIE XYZ color space endpoints.
uint32_t lcsSignature
must be U_LCS_SIGNATURE
For U_EMREXTCREATEFONTINDIRECTW elfw field.
uint32_t elfReserved
Must be 0, Ignore.
U_PANOSE elfPanose
Panose Object. If all zero, it is ignored.
uint32_t elfVersion
Ignore.
uint32_t elfStyleSize
Font hinting starting at this point size, if 0, starts at Height.
U_LOGFONT elfLogFont
Basic font attributes.
uint16_t elfPadding
Ignore.
uint32_t elfCulture
Must be 0, Ignore.
For U_LOGFONT elfLogFont field.
uint8_t lfQuality
LF_Quality Enumeration.
uint8_t lfPitchAndFamily
LF_PitchAndFamily Enumeration.
uint8_t lfUnderline
LF_Underline Enumeration.
uint8_t lfClipPrecision
LF_ClipPrecision Enumeration.
uint8_t lfOutPrecision
LF_OutPrecision Enumeration.
uint8_t lfCharSet
LF_CharSet Enumeration.
int32_t lfWidth
Average Width in Logical units.
int32_t lfOrientation
Angle in 0.1 degrees between baseline and X axis.
uint8_t lfItalic
LF_Italic Enumeration.
uint8_t lfStrikeOut
LF_StrikeOut Enumeration.
int32_t lfEscapement
Angle in 0.1 degrees betweem escapement vector and X axis.
int32_t lfHeight
Height in Logical units.
int32_t lfWeight
LF_Weight Enumeration.
For U_EMRCREATEPALETTE lgpl field.
uint16_t palNumEntries
Number of U_LOGPLTNTRY objects.
uint16_t palVersion
Must be 0x0300 (AKA: U_LP_VERSION)
For U_EMRCREATEPEN lopn field.
uint32_t lopnStyle
PenStyle Enumeration.
U_POINT lopnWidth
Width of pen set by X, Y is ignored.
U_COLORREF lopnColor
Pen color value.
For U_LOGPALETTE palPalEntry field(s)
uint8_t peGreen
Palette entry Green Intensity.
uint8_t peBlue
Palette entry Blue Intensity.
uint8_t peReserved
Ignore.
uint8_t peRed
Palette entry Red Intensity.
2 x 2 matrix, used by xform_alt_set() function.
double M12
Matrix element 1,2.
double M11
Matrix element 1,1.
double M21
Matrix element 2,1.
double M22
Matrix element 2,2.
Any generic pair of floats.
For U_LOGFONT_PANOSE elfPanose field.
uint8_t bXHeight
XHeight Enumeration.
uint8_t bLetterform
Letterform Enumeration.
uint8_t bMidline
Midline Enumeration.
uint8_t bProportion
Proportion Enumeration.
uint8_t bStrokeVariation
StrokeVariation Enumeration.
uint8_t bSerifStyle
SerifType Enumeration.
uint8_t bWeight
Weight Enumeration.
uint8_t bContrast
Contrast Enumeration.
uint8_t bFamilyType
FamilyType Enumeration.
uint8_t bArmStyle
ArmStyle Enumeration.
For U_EPS_DATA Points field.
U_BITFIX28_4 x
X coordinate.
U_BITFIX28_4 y
Y coordinate.
int32_t left
left coordinate
int32_t right
right coordinate
int32_t bottom
bottom coordinate
int32_t top
top coordinate
uint8_t Red
Red color (0-255)
uint8_t Green
Green color (0-255)
uint8_t Reserved
Not used.
uint8_t Blue
Blue color (0-255)
For U_EMRFILLRGN RgnData field(s)
U_RGNDATAHEADER rdh
Data description.
For GRADIENT_[TRIANGLE|U_RECT].
uint16_t Green
Green component.
uint16_t Red
Red component.
uint16_t Alpha
Alpha Transparency.
uint16_t Blue
Bule component.
struct U_EMREXCLUDECLIPRECT * PU_EMREXCLUDECLIPRECT
EMF manual 2.3.2.1.
struct U_EMRSETMAPMODE U_EMRSETICMMODE
EMF manual 2.3.11.14 ICMMode Enumeration.
struct U_EMRSETWINDOWORGEX * PU_EMRSETWINDOWORGEX
EMF manual 2.3.11.31.
struct U_EMRCREATECOLORSPACEW * PU_EMRCREATECOLORSPACEW
EMF manual 2.3.7.3.
struct U_EMRSETMETARGN * PU_EMRABORTPATH
EMF manual 2.3.10.
struct U_EMRPOLYTEXTOUTA * PU_EMRPOLYTEXTOUTA
EMF manual 2.3.5.32.
struct U_EPS_DATA * PU_EPS_DATA
EMF manual 2.2.6.
uint32_t U_CBBITSSRC
Count of Bytes in object at corresponding U_OFF*.
struct U_EMREXTFLOODFILL * PU_EMREXTFLOODFILL
EMF manual 2.3.5.6
struct U_XFORM * PU_XFORM
EMF manual 2.2.28.
struct U_EMRSETMETARGN * PU_EMRCLOSEFIGURE
EMF manual 2.3.10.
struct U_RECT U_RECTL
WMF manual 2.2.2.19.
struct U_EMRMODIFYWORLDTRANSFORM * PU_EMRMODIFYWORLDTRANSFORM
EMF manual 2.3.12.1.
struct U_EMRSETMITERLIMIT * PU_EMRSETMITERLIMIT
EMF manual 2.3.11.21
uint32_t U_NUM_RGBQUAD
Number of U_RGBQUAD (in bmciColors in U_BITMAPCOREINFO)
struct U_EMRSETMETARGN * PU_EMRENDPATH
EMF manual 2.3.10.
struct U_EMRDELETEOBJECT * PU_EMRDELETEOBJECT
EMF manual 2.3.8.3.
struct U_EMRPOLYPOLYLINE * PU_EMRPOLYPOLYGON
EMF manual 2.3.5.28.
uint32_t U_NUM_POLYCOUNTS
Number of U_POLYCOUNTS.
struct U_EMRSETMAPMODE * PU_EMRSETTEXTALIGN
EMF manual 2.3.11.25 TextAlignment enumeration.
struct U_EMRNAMEDESCAPE * PU_EMRNAMEDESCAPE
EMF manual 2.3.6.3.
uint32_t U_NUM_RECTL
Number of U_RECTL.
struct U_EMRSETCOLORADJUSTMENT * PU_EMRSETCOLORADJUSTMENT
EMF manual 2.3.11.13.
struct U_EMRCOLORMATCHTOTARGETW * PU_EMRCOLORMATCHTOTARGETW
EMF manual 2.3.11.1.
struct U_EMRSETWINDOWORGEX * PU_EMRSETVIEWPORTORGEX
EMF manual 2.3.11.29.
struct U_EMRMOVETOEX * PU_EMRMOVETOEX
EMF manual 2.3.11.4.
struct U_EMRSTRETCHBLT * PU_EMRSTRETCHBLT
EMF manual 2.3.1.6.
uint32_t U_CBBITSMSK
Count of Bytes in object at corresponding U_OFF*.
struct U_EMRPOLYBEZIER * PU_EMRPOLYGON
EMF manual 2.3.5.22.
struct U_EMRSETWINDOWEXTEX * PU_EMRSETWINDOWEXTEX
EMF manual manual 2.3.11.30.
struct U_EMRSETMAPMODE * PU_EMRSETMAPMODE
EMF manual 2.3.11.19 MapMode enumeration.
struct U_EMRFILLPATH U_EMRSTROKEPATH
EMF manual 2.3.5.39.
struct U_EMRSETPIXELV * PU_EMRSETPIXELV
EMF manual 2.3.5.36.
struct U_SIZE U_SIZEL
WMF manual 2.2.2.22.
struct U_EMRSTRETCHDIBITS * PU_EMRSTRETCHDIBITS
EMF manual 2.3.1.7.
struct U_POINT28_4 * PU_POINT28_4
EMF manual 2.2.23.
struct U_EMRSETMAPMODE U_EMRSETROP2
EMF manual 2.3.11.23 Binary Raster Operation Enumeration.
struct U_PAIRF * PU_PAIRF
Any generic pair of floats. Microsoft name: (none)
struct U_POINT16 * PU_POINT16
WMF manual 2.2.2.16.
uint32_t U_NUM_POINTL
Number of U_POINTL.
struct U_EMRTRANSPARENTBLT * PU_EMRTRANSPARENTBLT
EMF manual 2.3.1.8.
uint32_t U_OFFBMIMSK
Byte offset to TYPE, always measured from the start of the RECORD (not the struct)
struct U_DESIGNVECTOR * PU_DESIGNVECTOR
EMF manual 2.2.3.
uint32_t U_POLYCOUNTS
aPolyCounts For U_EMRPOLYPOLYLINE etc.
struct U_EMRPOLYPOLYLINE16 U_EMRPOLYPOLYGON16
EMF manual 2.3.5.29.
struct U_EMRPOLYBEZIER16 U_EMRPOLYBEZIERTO16
EMF manual 2.3.5.19.
struct U_EMRSETWORLDTRANSFORM * PU_EMRSETWORLDTRANSFORM
EMF manual 2.3.12.2.
uint32_t U_OFFBMI
Byte offset to TYPE, always measured from the start of the RECORD (not the struct)
uint32_t U_OFFBITS
Byte offset to TYPE, always measured from the start of the RECORD (not the struct)
struct U_EMRSETMAPMODE * PU_EMRSETPOLYFILLMODE
EMF manual 2.3.11.22 PolygonFillMode Enumeration.
struct U_EMRSETMAPMODE * PU_EMRSETBKMODE
EMF manual 2.3.11.11 BackgroundMode Enumeration.
struct U_PAIR * PU_POINT
WMF manual 2.2.2.15.
uint32_t U_NUM_STR
Number of 8 or 16 bit characters in string.
struct U_PIXELFORMATDESCRIPTOR * PU_PIXELFORMATDESCRIPTOR
EMF manual 2.2.22.
struct U_GRADIENT4 * PU_GRADIENT4
EMF manual 2.2.7.
struct U_EMRPOLYDRAW * PU_EMRPOLYDRAW
EMF manual 2.3.5.20
struct U_LOGBRUSH * PU_LOGBRUSH
EMF manual 2.2.12.
struct U_EMRCOMMENT_EMFPLUS * PU_EMRCOMMENT_EMFPLUS
EMF manual 2.3.3.2, EMF Plus comment.
struct U_EMRSETTEXTCOLOR * PU_EMRSETTEXTCOLOR
EMF manual 2.3.11.26.
struct U_EMRINVERTRGN * PU_EMRPAINTRGN
EMF manual 2.3.5.14.
uint32_t U_NUM_GRADOBJ
Number of U_GRADIENT4 OR U_GRADIENT3 (determined at run time)
struct U_EMRSETMAPMODE * PU_EMRSELECTCLIPPATH
EMF manual 2.3.2.5 RegionMode Enumeration.
struct U_EMRCOMMENT_SPOOL * PU_EMRCOMMENT_SPOOL
EMF manual 2.3.3.3, EMF Spool comment.
struct U_EMRPOLYPOLYLINE16 * PU_EMRPOLYPOLYLINE16
EMF manual 2.3.5.31.
struct U_EMRMOVETOEX * PU_EMRLINETO
EMF manual 2.3.5.13.
struct U_PAIR U_POINTL
WMF manual 2.2.2.15.
struct U_EXTLOGPEN * PU_EXTLOGPEN
EMF manual 2.2.20.
struct U_EMRSCALEVIEWPORTEXTEX U_EMRSCALEWINDOWEXTEX
EMF manual 2.3.11.8.
struct U_EMRSELECTPALETTE * PU_EMRSELECTPALETTE
EMF manual 2.3.8.6
uint32_t U_CBDATA
Count of Bytes in object at corresponding U_OFF*.
struct U_EMRBITBLT * PU_EMRBITBLT
EMF manual 2.3.1.2.
struct U_EMRSETMETARGN U_EMRCLOSEFIGURE
EMF manual 2.3.10.
struct U_EMRMOVETOEX U_EMRLINETO
EMF manual 2.3.5.13.
struct U_EMRPOLYBEZIER16 U_EMRPOLYLINETO16
EMF manual 2.3.5.27.
struct U_EMRARC * PU_EMRCHORD
EMF manual 2.3.5.4.
struct U_EMRPOLYBEZIER * PU_EMRPOLYBEZIERTO
EMF manual 2.3.5.18.
struct U_EMRSETMAPMODE * PU_EMRSETLAYOUT
EMF manual 2.3.11.17 Mirroring Enumeration.
struct U_EMRRESIZEPALETTE * PU_EMRRESIZEPALETTE
EMF manual 2.3.8.4
struct U_LOGCOLORSPACEA * PU_LOGCOLORSPACEA
WMF manual 2.2.2.11.
struct U_EMRCOMMENT * PU_EMRCOMMENT
EMF manual 2.3.3.1, AKA GDICOMMENT.
struct U_EMRCOMMENT_PUBLIC * PU_EMRCOMMENT_PUBLIC
EMF manual 2.3.3.4, EMF Public comment.
struct U_EMREXTCREATEPEN * PU_EMREXTCREATEPEN
EMF manual 2.3.7.9.
struct U_EMRSETWINDOWORGEX * PU_EMRSETBRUSHORGEX
EMF manual 2.3.11.12.
struct U_EMRFORMAT * PU_EMRFORMAT
EMF manual 2.2.4.
struct U_EMRSETMAPMODE U_EMRSELECTCLIPPATH
EMF manual 2.3.2.5 RegionMode Enumeration.
struct U_LOGPALETTE * PU_LOGPALETTE
EMF manual 2.2.17.
struct U_EMRPOLYBEZIER16 * PU_EMRPOLYLINETO16
EMF manual 2.3.5.27.
struct U_CIEXYZTRIPLE * PU_CIEXYZTRIPLE
WMF manual 2.2.2.7.
struct U_EMRELLIPSE U_EMRRECTANGLE
EMF manual 2.3.5.5
struct U_LCS_GAMMA * PU_LCS_GAMMA
WMF manual 2.2.2.11.
struct U_EMRSETMAPMODE U_EMRSETSTRETCHBLTMODE
EMF manual 2.3.11.24 StretchMode Enumeration.
struct U_ENHMETARECORD * PU_ENHMETARECORD
General form of an EMF record.
struct U_EMRARC U_EMRCHORD
EMF manual 2.3.5.4.
struct U_RECT * PU_RECTL
WMF manual 2.2.2.19.
uint32_t U_STYLEENTRY
StyleEntry For U_EXTLOGPEN.
struct U_EMRPLGBLT * PU_EMRPLGBLT
EMF manual 2.3.1.4.
struct U_EMRARC * PU_EMRARCTO
EMF manual 2.3.5.3.
struct U_EMROFFSETCLIPRGN * PU_EMROFFSETCLIPRGN
EMF manual 2.3.2.4.
struct U_EMRSCALEVIEWPORTEXTEX * PU_EMRSCALEWINDOWEXTEX
EMF manual 2.3.11.8.
struct U_EMRPOLYBEZIER U_EMRPOLYBEZIERTO
EMF manual 2.3.5.18.
struct U_LOGFONT * PU_LOGFONT
EMF manual 2.2.13.
struct U_EMRSETMAPPERFLAGS * PU_EMRSETMAPPERFLAGS
EMF manual 2.3.11.20.
uint32_t U_OFFDESC
Byte offset to TYPE, always measured from the start of the RECORD (not the struct)
struct U_EMRHEADER * PU_EMRHEADER
EMF manual 2.2.9.
struct U_MAT2X2 * PU_MAT2X2
2 x 2 matrix, used by xform_alt_set() function.
struct U_EMRINVERTRGN * PU_EMRINVERTRGN
EMF manual 2.3.11.3.
struct U_EMRPOLYBEZIER16 U_EMRPOLYGON16
EMF manual 2.3.5.23.
struct U_LOGPLTNTRY * PU_LOGPLTNTRY
EMF manual 2.2.18.
uint32_t U_CBNAME
Count of Bytes in object at corresponding U_OFF*.
struct U_EMRSETARCDIRECTION * PU_EMRSETARCDIRECTION
EMF manual 2.3.11.9.
uint32_t U_CBBMISRC
Count of Bytes in object at corresponding U_OFF*.
struct U_EMRSMALLTEXTOUT * PU_EMRSMALLTEXTOUT
EMF manual 2.3.5.37.
struct U_BITFIX28_4 * PU_BITFIX28_4
EMF manual 2.2.1.
struct U_BITMAPINFOHEADER * PU_BITMAPINFOHEADER
WMF manual 2.2.2.3.
struct U_EMRCREATECOLORSPACE * PU_EMRCREATECOLORSPACE
EMF manual 2.3.7.2
struct U_EMRGENERICPAIR * PU_EMRGENERICPAIR
Generic EMR record with two 32 bit values. Microsoft name: (none)
struct U_EMRSETMETARGN U_EMRBEGINPATH
EMF manual 2.3.10.
struct U_EMRCREATEBRUSHINDIRECT * PU_EMRCREATEBRUSHINDIRECT
EMF manual 2.3.7.1
uint32_t U_NUM_EMRTEXT
Number of U_EMRTEXT.
struct U_EMRSETMAPMODE * PU_EMRSETICMMODE
EMF manual 2.3.11.14 ICMMode Enumeration.
struct U_EMRROUNDRECT * PU_EMRROUNDRECT
EMF manual 2.3.5.35
struct U_EMRPOLYBEZIER * PU_EMRPOLYBEZIER
EMF manual 2.3.5.16.
struct U_EMRRESTOREDC * PU_EMRRESTOREDC
EMF manual 2.3.11.6.
struct U_EMRSETWINDOWEXTEX U_EMRSETVIEWPORTEXTEX
EMF manual manual 2.3.11.28.
uint32_t U_OFFBITSMSK
Byte offset to TYPE, always measured from the start of the RECORD (not the struct)
uint32_t U_CBBMI
Count of Bytes in object at corresponding U_OFF*.
uint32_t U_OFFBMISRC
Byte offset to TYPE, always measured from the start of the RECORD (not the struct)
struct U_EMRSETMAPMODE U_EMRSETBKMODE
EMF manual 2.3.11.11 BackgroundMode Enumeration.
struct U_EMRPOLYPOLYLINE U_EMRPOLYPOLYGON
EMF manual 2.3.5.28.
struct U_RGBQUAD * PU_RGBQUAD
WMF manual 2.2.2.20.
struct U_EMRDELETECOLORSPACE U_EMRSETCOLORSPACE
EMF manual 2.3.8.7.
struct U_EMRPOLYBEZIER U_EMRPOLYLINETO
EMF manual 2.3.5.26.
struct U_EMREXTTEXTOUTA * PU_EMREXTTEXTOUTW
EMF manual 2.3.5.8.
struct U_EMRSETWINDOWORGEX U_EMRSETBRUSHORGEX
EMF manual 2.3.11.12.
struct U_EMRSETMETARGN U_EMRSAVEDC
EMF manual 2.3.11.
struct U_EMRPOLYTEXTOUTA * PU_EMRPOLYTEXTOUTW
EMF manual 2.3.5.33.
struct U_EMRPOLYBEZIER16 * PU_EMRPOLYGON16
EMF manual 2.3.5.23.
struct U_EMRPOLYBEZIER * PU_EMRPOLYLINE
EMF manual 2.3.5.24.
struct U_SIZE * PU_SIZEL
WMF manual 2.2.2.22.
uint32_t U_OFFPXLFMT
Byte offset to TYPE, always measured from the start of the RECORD (not the struct)
struct U_EMRDELETEOBJECT * PU_EMRSELECTOBJECT
EMF manual 2.3.8.5.
struct U_EMR * PU_EMR
First two fields of all EMF records,.
struct U_EMRPIXELFORMAT * PU_EMRPIXELFORMAT
EMF manual 2.3.11.5.
uint8_t U_DATA
any binary sort of data, not otherwise classified.
struct U_LOGPEN * PU_LOGPEN
EMF manual 2.2.19.
struct U_EMRCREATEDIBPATTERNBRUSHPT * PU_EMRCREATEDIBPATTERNBRUSHPT
EMF manual 2.3.7.4.
struct U_EMRPOLYTEXTOUTA U_EMRPOLYTEXTOUTW
EMF manual 2.3.5.33.
struct U_EMRPOLYDRAW16 * PU_EMRPOLYDRAW16
EMF manual 2.3.5.21.
struct U_EMRCREATEMONOBRUSH * PU_EMRCREATEMONOBRUSH
EMF manual 2.3.7.5.
struct U_EMRDRAWESCAPE * PU_EMRDRAWESCAPE
EMF manual 2.3.6.1.
struct U_PANOSE * PU_PANOSE
EMF manual 2.2.21.
struct U_EMRSETMETARGN U_EMRENDPATH
EMF manual 2.3.10.
struct U_EMRPOLYPOLYLINE * PU_EMRPOLYPOLYLINE
EMF manual 2.3.5.30.
struct U_EMRDELETECOLORSPACE * PU_EMRSETCOLORSPACE
EMF manual 2.3.8.7.
struct U_EMRELLIPSE * PU_EMRELLIPSE
EMF manual 2.3.5.5.
struct U_LOGBRUSH U_PATTERN
EMF manual 2.2.12.
struct U_EMRSETWINDOWEXTEX * PU_EMRSETVIEWPORTEXTEX
EMF manual manual 2.3.11.28.
struct U_EMRPOLYPOLYLINE16 * PU_EMRPOLYPOLYGON16
EMF manual 2.3.5.29.
struct U_EMRSETMETARGN U_EMRFLATTENPATH
EMF manual 2.3.10.
struct U_EMREXTTEXTOUTA * PU_EMREXTTEXTOUTA
EMF manual 2.3.5.7.
uint32_t U_CBPLENTRIES
Count of Bytes in object at corresponding U_OFF*.
struct U_EMRINVERTRGN U_EMRPAINTRGN
EMF manual 2.3.5.14.
struct U_EMRSETMETARGN * PU_EMRFLATTENPATH
EMF manual 2.3.10.
struct U_EMRDELETEOBJECT U_EMRSELECTOBJECT
EMF manual 2.3.8.5.
struct U_LOGCOLORSPACEW * PU_LOGCOLORSPACEW
WMF manual 2.2.2.12.
struct U_EMRCREATEPALETTE * PU_EMRCREATEPALETTE
EMF manual 2.3.7.6
struct U_EMRSETMETARGN U_EMRWIDENPATH
EMF manual 2.3.10.
struct U_EMRSETMAPMODE * PU_EMRSETSTRETCHBLTMODE
EMF manual 2.3.11.24 StretchMode Enumeration.
struct U_EMRFRAMERGN * PU_EMRFRAMERGN
EMF manual 2.3.5.11
struct U_EMRFILLPATH U_EMRSTROKEANDFILLPATH
EMF manual 2.3.5.38.
struct U_LOGFONT_PANOSE * PU_LOGFONT_PANOSE
EMF manual 2.2.16.
struct U_EMRSETPALETTEENTRIES * PU_EMRSETPALETTEENTRIES
EMF manual 2.3.8.8
struct U_EMRELLIPSE * PU_EMRRECTANGLE
EMF manual 2.3.5.34.
uint32_t U_CBPXLFMT
Count of Bytes in object at corresponding U_OFF*.
struct U_EMRPOLYBEZIER U_EMRPOLYGON
EMF manual 2.3.5.22.
struct U_PAIR U_POINT
WMF manual 2.2.2.15.
struct U_EMRALPHABLEND * PU_EMRALPHABLEND
EMF manual 2.3.1.1.
struct U_EMRSETMAPMODE U_EMRSETTEXTALIGN
EMF manual 2.3.11.25 TextAlignment enumeration.
struct U_EMRCREATEPEN * PU_EMRCREATEPEN
EMF manual 2.3.7.7.
struct U_EMREXTTEXTOUTA U_EMREXTTEXTOUTW
EMF manual 2.3.5.8.
struct U_PAIR * PU_POINTL
WMF manual 2.2.2.15.
struct U_EMRARC U_EMRARCTO
EMF manual 2.3.5.3.
uint32_t U_NUM_STYLEENTRY
Number of U_STYLEENTRY.
struct U_EMRSETWINDOWORGEX U_EMRSETVIEWPORTORGEX
EMF manual 2.3.11.29.
struct U_EMRSETMETARGN * PU_EMRREALIZEPALETTE
EMF manual 2.3.10.
struct U_EMRDELETECOLORSPACE * PU_EMRDELETECOLORSPACE
EMF manual 2.3.8.2.
struct U_COLORADJUSTMENT * PU_COLORADJUSTMENT
EMF manual 2.2.2.
uint32_t U_OFFDX
Byte offset to TYPE, always measured from the start of the RECORD (not the struct)
struct U_EMREXTESCAPE * PU_EMREXTESCAPE
EMF manual 2.3.6.2.
uint32_t U_CBBITS
Count of Bytes in object at corresponding U_OFF*.
struct U_EMRPOLYBEZIER * PU_EMRPOLYLINETO
EMF manual 2.3.5.26.
struct U_EMRGLSBOUNDEDRECORD * PU_EMRGLSBOUNDEDRECORD
EMF manual 2.3.9.1.
struct U_CIEXYZ * PU_CIEXYZ
WMF manual 2.2.2.6.
struct U_EMRSETMAPMODE U_EMRSETPOLYFILLMODE
EMF manual 2.3.11.22 PolygonFillMode Enumeration.
struct U_EMRFILLPATH * PU_EMRSTROKEANDFILLPATH
EMF manual 2.3.5.38.
struct U_RGNDATAHEADER * PU_RGNDATAHEADER
EMF manual 2.2.25.
struct U_EMRGLSRECORD * PU_EMRGLSRECORD
EMF manual 2.3.9.2
uint32_t U_CBSTR
Count of Bytes in an 8 or 16 bit string.
struct U_LOGBRUSH * PU_PATTERN
EMF manual 2.2.12.
struct U_EMREXCLUDECLIPRECT * PU_EMRINTERSECTCLIPRECT
EMF manual 2.3.2.3.
struct U_EMREOF * PU_EMREOF
EMF manual 3.2.4.1.
uint32_t U_OFFSTR
Byte offset to string of either 8 or 16 bit characters.
struct U_EMRPOLYBEZIER16 * PU_EMRPOLYLINE16
EMF manual 2.3.5.25.
struct U_EMRSETTEXTCOLOR * PU_EMRSETBKCOLOR
EMF manual 2.3.11.10.
struct U_EMRSETMETARGN * PU_EMRSETMETARGN
EMF manual 2.3.2.
struct U_EMRMASKBLT * PU_EMRMASKBLT
EMF manual 2.3.1.3.
struct U_EMRSETDIBITSTODEVICE * PU_EMRSETDIBITSTODEVICE
EMF manual 2.3.1.5.
uint32_t U_OFFDATA
Byte offset to TYPE, always measured from the start of the RECORD (not the struct)
struct U_EMRFILLPATH * PU_EMRSTROKEPATH
EMF manual 2.3.5.39.
struct U_EMRSETMETARGN * PU_EMRBEGINPATH
EMF manual 2.3.10.
struct U_EMRARC * PU_EMRARC
EMF manual 2.3.5.2.
struct U_EMRSETMETARGN U_EMRREALIZEPALETTE
EMF manual 2.3.10.
struct U_RECT * PU_RECT
WMF manual 2.2.2.19.
struct U_EMRSETMAPMODE * PU_EMRSETROP2
EMF manual 2.3.11.23 Binary Raster Operation Enumeration.
uint32_t U_OFFPLENTRIES
Byte offset to TYPE, always measured from the start of the RECORD (not the struct)
struct U_EMRPOLYBEZIER U_EMRPOLYLINE
EMF manual 2.3.5.24.
struct U_EMRSETMETARGN U_EMRABORTPATH
EMF manual 2.3.10.
struct U_EMREXTSELECTCLIPRGN * PU_EMREXTSELECTCLIPRGN
EMF manual 2.3.2.2.
uint32_t U_NUM_POINT16
Number of U_POINT16.
struct U_LCS_GAMMARGB * PU_LCS_GAMMARGB
WMF manual 2.2.2.11.
struct U_EMRPOLYBEZIER16 * PU_EMRPOLYBEZIER16
EMF manual 2.3.5.17.
uint32_t U_NUM_FNTAXES
Number of U_FNTAXES.
uint32_t U_OFFBITSSRC
Byte offset to TYPE, always measured from the start of the RECORD (not the struct)
struct U_EMRANGLEARC * PU_EMRANGLEARC
EMF manual 2.3.5.1
uint32_t U_FNTAXES
Font Axes For U_DESIGNVECTOR.
struct U_SIZE * PU_SIZE
WMF manual 2.2.2.22.
uint32_t U_NUM_TRIVERTEX
Number of U_TRIVERTEX.
struct U_TRIVERTEX * PU_TRIVERTEX
EMF manual 2.2.26.
struct U_EMRSETMAPMODE U_EMRSETLAYOUT
EMF manual 2.3.11.17 Mirroring Enumeration.
float U_FLOAT
32 bit float
struct U_EMRARC U_EMRPIE
EMF manual 2.3.5.15.
struct U_BITMAPINFO * PU_BITMAPINFO
WMF Manual 2.2.2.9.
struct U_EMRFILLPATH * PU_EMRFILLPATH
EMF manual 2.3.5.9.
struct U_EMRGRADIENTFILL * PU_EMRGRADIENTFILL
EMF manual 2.3.5.12.
struct U_BLEND * PU_BLEND
EMF Manual 2.3.1.1.
struct U_EMRSETMETARGN * PU_EMRSAVEDC
EMF manual 2.3.11.
uint32_t U_CBRGNDATA
Count of Bytes in object at corresponding U_OFF*.
struct U_EMRPOLYBEZIER16 * PU_EMRPOLYBEZIERTO16
EMF manual 2.3.5.19.
struct U_EMRSETTEXTCOLOR U_EMRSETBKCOLOR
EMF manual 2.3.11.10.
struct U_GRADIENT3 * PU_GRADIENT3
EMF manual 2.2.8.
struct U_EMREXTCREATEFONTINDIRECTW * PU_EMREXTCREATEFONTINDIRECTW
EMF manual 2.3.7.8.
struct U_RGNDATA * PU_RGNDATA
EMF manual 2.2.24.
struct U_COLORREF * PU_COLORREF
WMF manual 2.2.2.8.
struct U_EMRPOLYBEZIER16 U_EMRPOLYLINE16
EMF manual 2.3.5.25.
struct U_PAIR * PU_PAIR
WMF manual 2.2.2.15.
struct U_EMRFILLRGN * PU_EMRFILLRGN
EMF manual 2.3.5.10
struct U_EMRSCALEVIEWPORTEXTEX * PU_EMRSCALEVIEWPORTEXTEX
EMF manual 2.3.11.7.
struct U_EMRARC * PU_EMRPIE
EMF manual 2.3.5.15.
struct U_EMRSETMETARGN * PU_EMRWIDENPATH
EMF manual 2.3.10.
struct U_EMRTEXT * PU_EMRTEXT
EMF manual 2.2.5.
uint32_t U_CBBMIMSK
Count of Bytes in object at corresponding U_OFF*.
uint32_t U_NUM_LOGPLTNTRY
Number of U_LOGPLTENTRY.
struct U_EMREXCLUDECLIPRECT U_EMRINTERSECTCLIPRECT
EMF manual 2.3.2.3.
Defintions and prototype for function for converting EMF records between Big Endian and Little Endian...
Prototypes for functions that manipulate UTF and various types of text.
void wchar32show(const uint32_t *src)
void wchar16show(const uint16_t *src)
void wchartshow(const wchar_t *src)
void wchar8show(const char *src)