libUEMF
A portable library for reading and writing WMF, EMF and EMF+ files
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures
Here are the data structures with brief descriptions:
oCEMFHANDLES
oCEMFTRACK
oCU_BITFIX28_4For U_POINT28_4 x and y fields
oCU_BITMAP16
oCU_BITMAPCOREHEADER
oCU_BITMAPINFOFor U_EMR_* OffBmi* fields
oCU_BITMAPINFOHEADERFor U_BITMAPINFO bmiHeader field
oCU_BLENDU_EMRALPHABLEND Blend field
oCU_BRUSH
oCU_CIEXYZFor U_CIEXYZTRIPLE (all) fields
oCU_CIEXYZTRIPLEFor U_LOGCOLORSPACEA and U_LOGCOLORSPACEW lcsEndpints field
oCU_COLORADJUSTMENTFor U_EMRSETOLORADJUSTMENT ColorAdjustment field
oCU_COLORREFFor U_BITMAPINFO crColor field
oCU_DESIGNVECTORFor ? (not implemented yet)
oCU_DPSEUDO_OBJDoublePseudoObject holds pairs of PseudoObjects. Used for constructing paths along with their types. The data stored in the PsuedoObjects maintains LittleEndian-ness, as expected in the final file. The type is U_RAW_OID, and there is no elements count at the beginning of Data
oCU_EMR
oCU_EMRALPHABLEND
oCU_EMRANGLEARC
oCU_EMRARC
oCU_EMRBITBLT
oCU_EMRCOLORMATCHTOTARGETW
oCU_EMRCOMMENT
oCU_EMRCOMMENT_EMFPLUS
oCU_EMRCOMMENT_PUBLIC
oCU_EMRCOMMENT_SPOOL
oCU_EMRCREATEBRUSHINDIRECT
oCU_EMRCREATECOLORSPACE
oCU_EMRCREATECOLORSPACEW
oCU_EMRCREATEDIBPATTERNBRUSHPT
oCU_EMRCREATEMONOBRUSH
oCU_EMRCREATEPALETTE
oCU_EMRCREATEPEN
oCU_EMRDELETECOLORSPACE
oCU_EMRDELETEOBJECT
oCU_EMRDRAWESCAPE
oCU_EMRELLIPSE
oCU_EMREOF
oCU_EMREXCLUDECLIPRECT
oCU_EMREXTCREATEFONTINDIRECTW
oCU_EMREXTCREATEPEN
oCU_EMREXTESCAPE
oCU_EMREXTFLOODFILL
oCU_EMREXTSELECTCLIPRGN
oCU_EMREXTTEXTOUTA
oCU_EMRFILLPATH
oCU_EMRFILLRGN
oCU_EMRFORMATFor U_EMR_COMMENT_MULTIFORMATS record, where an array of these is used
oCU_EMRFRAMERGN
oCU_EMRGENERICPAIR
oCU_EMRGLSBOUNDEDRECORD
oCU_EMRGLSRECORD
oCU_EMRGRADIENTFILL
oCU_EMRHEADERThe first U_ENHMETARECORD record in the metafile
oCU_EMRINVERTRGN
oCU_EMRMASKBLT
oCU_EMRMODIFYWORLDTRANSFORM
oCU_EMRMOVETOEX
oCU_EMRNAMEDESCAPE
oCU_EMROFFSETCLIPRGN
oCU_EMRPIXELFORMAT
oCU_EMRPLGBLT
oCU_EMRPOLYBEZIER
oCU_EMRPOLYBEZIER16
oCU_EMRPOLYDRAW
oCU_EMRPOLYDRAW16
oCU_EMRPOLYPOLYLINE
oCU_EMRPOLYPOLYLINE16
oCU_EMRPOLYTEXTOUTA
oCU_EMRRESIZEPALETTE
oCU_EMRRESTOREDC
oCU_EMRROUNDRECT
oCU_EMRSCALEVIEWPORTEXTEX
oCU_EMRSELECTPALETTE
oCU_EMRSETARCDIRECTION
oCU_EMRSETCOLORADJUSTMENT
oCU_EMRSETDIBITSTODEVICE
oCU_EMRSETMAPMODE
oCU_EMRSETMAPPERFLAGS
oCU_EMRSETMETARGN
oCU_EMRSETMITERLIMIT
oCU_EMRSETPALETTEENTRIES
oCU_EMRSETPIXELV
oCU_EMRSETTEXTCOLOR
oCU_EMRSETWINDOWEXTEX
oCU_EMRSETWINDOWORGEX
oCU_EMRSETWORLDTRANSFORM
oCU_EMRSMALLTEXTOUT
oCU_EMRSTRETCHBLT
oCU_EMRSTRETCHDIBITS
oCU_EMRTEXTFor U_EMR[POLY]EXTTEXTOUT[A|W] emrtext field
oCU_EMRTRANSPARENTBLT
oCU_ENHMETARECORD
oCU_EPS_DATAFor embedding EPS in EMF via U_EMRFORMAT offData array in U_EMR_COMMENT_MULTIFORMATS
oCU_EXTLOGPENFor U_EMREXTCREATEPEN lopn field
oCU_FONT
oCU_FontInfoParamsFontInfoParams hold font information that is needed by U_PMR_drawstring so that it can place text on the baseline. This must be extracted from the font file using an appropriate utility. (See testbed_pmf.c for a table of these values for some common fonts.)
oCU_GRADIENT3For U_EMRGRADIENTFILL GradObj field
oCU_GRADIENT4For U_EMRGRADIENTFILL GradObj field
oCU_LCS_GAMMAFor U_LCS_GAMMARGB lcsGamma* fields
oCU_LCS_GAMMARGBFor U_LOGCOLORSPACEA and U_LOGCOLORSPACEW lcsGammaRGB field
oCU_LOGBRUSHFor U_EMRCREATEBRUSHINDIRECT lb field
oCU_LOGCOLORSPACEAFor U_EMRCREATECOLORSPACE lcs field
oCU_LOGCOLORSPACEWFor U_EMRCREATECOLORSPACEW lcs field
oCU_LOGFONTFor U_LOGFONT_PANOSE elfLogFont field
oCU_LOGFONT_PANOSEFor U_EMREXTCREATEFONTINDIRECTW elfw field
oCU_LOGPALETTEFor U_EMRCREATEPALETTE lgpl field
oCU_LOGPENFor U_EMRCREATEPEN lopn field
oCU_LOGPLTNTRYFor U_LOGPALETTE palPalEntry field(s)
oCU_MAT2X2
oCU_METARECORD
oCU_OBJ_ACCUMUsed to accumulate data for objects continued over multiple records. see EMF+ manual 2.3.5.1
oCU_PAIRUsed for any generic pair of uint32_t
oCU_PAIRF
oCU_PALETTE
oCU_PANOSEFor U_LOGFONT_PANOSE elfPanose field
oCU_PEN
oCU_PIXELFORMATDESCRIPTORFor U_EMRPIXELFORMAT pfd field
oCU_PLTNTRY
oCU_PMF_ARGBEMF+ manual 2.2.2.1, Microsoft name: EmfPlusARGB Object, out of order, needed for 2.2.1.5
oCU_PMF_BEGINCONTAINEREMF+ manual 2.3.7.1, Microsoft name: EmfPlusBeginContainer Record, Index 0x27
oCU_PMF_BEGINCONTAINERNOPARAMSEMF+ manual 2.3.7.2, Microsoft name: EmfPlusBeginContainerNoParams Record, Index 0x28
oCU_PMF_BITMAPEMF+ manual 2.2.2.2, Microsoft name: EmfPlusBitmap Object
oCU_PMF_BLENDCOLORSEMF+ manual 2.2.2.4, Microsoft name: EmfPlusBlendColors Object For Pattern field of U_PMF_LINEARGRADIENTBRUSHOPTIONALDATA
oCU_PMF_BLENDFACTORSEMF+ manual 2.2.2.5, Microsoft name: EmfPlusBlendFactors Object
oCU_PMF_BOUNDARYPATHDATAEMF+ manual 2.2.2.6, Microsoft name: EmfPlusBoundaryPathData Object
oCU_PMF_BOUNDARYPOINTDATAEMF+ manual 2.2.2.7, Microsoft name: EmfPlusBoundaryPointData Object
oCU_PMF_BRUSHEMF+ manual 2.2.1.1, Microsoft name: EmfPlusBrush Object
oCU_PMF_CHARACTERRANGEEMF+ manual 2.2.2.8, Microsoft name: EmfPlusCharacterRange Object
oCU_PMF_CLEAREMF+ manual 2.3.4.1, Microsoft name: EmfPlusClear Record, Index 0x09
oCU_PMF_CMN_HDR
oCU_PMF_COMMENTEMF+ manual 2.3.2.1, Microsoft name: EmfPlusComment Record, Index 0x03
oCU_PMF_COMPOUNDLINEDATAEMF+ manual 2.2.2.9, Microsoft name: EmfPlusCompoundLineData Object Compound lines are pens that draw several parallel lines at once. The data here alternates (sub)line width (as fraction of total width and gaps (also as fraction of total width)
oCU_PMF_CUSTOMENDCAPDATAEMF+ manual 2.2.2.10, Microsoft name: EmfPlusCompressedImage Object Holds an EXIF, GIF, JFIF, PNG, or TIFF image. For U_PMF_BITMAP BitmapData field
oCU_PMF_CUSTOMLINECAPEMF+ manual 2.2.1.2, Microsoft name: EmfPlusCustomLineCap Object
oCU_PMF_CUSTOMLINECAPARROWDATAEMF+ manual 2.2.2.12, Microsoft name: EmfPlusCustomLineCapArrowData Object
oCU_PMF_CUSTOMLINECAPDATAEMF+ manual 2.2.2.13, Microsoft name: EmfPlusCustomLineCapData Object
oCU_PMF_CUSTOMSTARTCAPDATAEMF+ manual 2.2.2.15, Microsoft name: EmfPlusCustomStartCapData Object
oCU_PMF_DASHEDLINEDATAEMF+ manual 2.2.2.16, Microsoft name: EmfPlusDashedLineData Object
oCU_PMF_DRAWARCEMF+ manual 2.3.4.2, Microsoft name: EmfPlusDrawArc Record, Index 0x12
oCU_PMF_DRAWBEZIERSEMF+ manual 2.3.4.3, Microsoft name: EmfPlusDrawBeziers Record, Index 0x19 flags (LITTLE endian here, manual uses BIG endian) bit 9 U_PPF_C Set: int16_t coordinates; Clear: U_FLOAT coordinates (IGNORE if bit 4 is set) bit 12 U_PPF_P Set: Coordinates are relative; Clear: they are absolute bits 0-7 Index of an U_PMF_PEN object in the EMF+ object table (0-63, inclusive)
oCU_PMF_DRAWCLOSEDCURVEEMF+ manual 2.3.4.4, Microsoft name: EmfPlusDrawClosedCurve Record, Index 0x17
oCU_PMF_DRAWCURVEEMF+ manual 2.3.4.5, Microsoft name: EmfPlusDrawCurve Record, Index 0x18 flags (LITTLE endian here, manual uses BIG endian) bit 9 U_PPF_C Set: int16_t coordinates; Clear: U_FLOAT coordinates (IGNORE if bit 4 is set) bits 0-7 Index of an U_PMF_PEN object in the EMF+ object table (0-63, inclusive)
oCU_PMF_DRAWDRIVERSTRINGEMF+ manual 2.3.4.6, Microsoft name: EmfPlusDrawDriverString Record, Index 0x36
oCU_PMF_DRAWELLIPSEEMF+ manual 2.3.4.7, Microsoft name: EmfPlusDrawEllipse Record, Index 0x0F
oCU_PMF_DRAWIMAGEEMF+ manual 2.3.4.8, Microsoft name: EmfPlusDrawImage Record, Index 0x1A
oCU_PMF_DRAWIMAGEPOINTSEMF+ manual 2.3.4.9, Microsoft name: EmfPlusDrawImagePoints Record, Index 0x1B
oCU_PMF_DRAWLINESEMF+ manual 2.3.4.10, Microsoft name: EmfPlusDrawLines Record, Index 0x0D
oCU_PMF_DRAWPATHEMF+ manual 2.3.4.11, Microsoft name: EmfPlusDrawPath Record, Index 0x15
oCU_PMF_DRAWPIEEMF+ manual 2.3.4.12, Microsoft name: EmfPlusDrawPie Record, Index 0x0D
oCU_PMF_DRAWRECTSEMF+ manual 2.3.4.13, Microsoft name: EmfPlusDrawRects Record, Index 0x0B
oCU_PMF_DRAWSTRINGEMF+ manual 2.3.4.14, Microsoft name: EmfPlusDrawString Record, Index 0x1C
oCU_PMF_ENDCONTAINEREMF+ manual 2.3.7.3, Microsoft name: EmfPlusEndContainer Record, Index 0x29
oCU_PMF_ENDOFFILEEMF+ manual 2.3.3.1, Microsoft name: EmfPlusEndOfFile Record, Index 0x02
oCU_PMF_FILLCLOSEDCURVEEMF+ manual 2.3.4.15, Microsoft name: EmfPlusFillClosedCurve Record, Index 0x16
oCU_PMF_FILLELLIPSEEMF+ manual 2.3.4.16, Microsoft name: EmfPlusFillEllipse Record, Index 0x0E
oCU_PMF_FILLPATHEMF+ manual 2.3.4.17, Microsoft name: EmfPlusFillPath Record, Index 0x14 Note: U_PMF_FILLPATHOBJ is the object, U_PMF_FILLPATH is the file record
oCU_PMF_FILLPATHOEMF+ manual 2.2.2.17, Microsoft name: EmfPlusFillPath Object Note: U_PMF_FILLPATHOBJ is the object, U_PMF_FILLPATH is the file record
oCU_PMF_FILLPIEEMF+ manual 2.3.4.18, Microsoft name: EmfPlusFillPie Record, Index 0x10
oCU_PMF_FILLPOLYGONEMF+ manual 2.3.4.19, Microsoft name: EmfPlusFillPolygon Record, Index 0x0C
oCU_PMF_FILLRECTSEMF+ manual 2.3.4.20, Microsoft name: EmfPlusFillRects Record, Index 0x0A
oCU_PMF_FILLREGIONEMF+ manual 2.3.4.21, Microsoft name: EmfPlusFillRegion Record, Index 0x13
oCU_PMF_FOCUSSCALEDATAEMF+ manual 2.2.2.18, Microsoft name: EmfPlusFocusScaleData Object for U_PMF_PATHGRADIENTBRUSHOPTIONALDATA data field
oCU_PMF_FONTEMF+ manual 2.2.1.3, Microsoft name: EmfPlusFont Object
oCU_PMF_GETDCEMF+ manual 2.3.3.2, Microsoft name: EmfPlusGetDC Record, Index 0x04
oCU_PMF_HATCHBRUSHDATAEMF+ manual 2.2.2.20, Microsoft name: EmfPlusHatchBrushData Object
oCU_PMF_HEADEREMF+ manual 2.3.3.3, Microsoft name: EmfPlusHeader Record, Index 0x01
oCU_PMF_IE_BLUREMF+ manual 2.2.3.1, Microsoft name: BlurEffect Object
oCU_PMF_IE_BRIGHTNESSCONTRASTEMF+ manual 2.2.3.2, Microsoft name: BrightnessContrastEffect Object
oCU_PMF_IE_COLORBALANCEEMF+ manual 2.2.3.3, Microsoft name: ColorBalanceEffect Object
oCU_PMF_IE_COLORCURVEEMF+ manual 2.2.3.4, Microsoft name: ColorCurveEffect Object Adjust Range Exposure -255 to 255, 0 is unchanged Density -255 to 255, 0 is unchanged Contrast -100 to 100, 0 is unchanged Highlight -100 to 100, 0 is unchanged Shadow -100 to 100, 0 is unchanged WhiteSaturation 0 to 255 BlackSaturation 0 to 255
oCU_PMF_IE_COLORLOOKUPTABLEEMF+ manual 2.2.3.5, Microsoft name: ColorLookupTableEffect Object
oCU_PMF_IE_COLORMATRIXEMF+ manual 2.2.3.6, Microsoft name: ColorMatrixEffect Object
oCU_PMF_IE_HUESATURATIONLIGHTNESSEMF+ manual 2.2.3.7, Microsoft name: HueSaturationLightnessEffect Object
oCU_PMF_IE_LEVELSEMF+ manual 2.2.3.8, Microsoft name: LevelsEffect Object
oCU_PMF_IE_REDEYECORRECTIONEMF+ manual 2.2.3.9, Microsoft name: RedEyeCorrectionEffect Object
oCU_PMF_IE_SHARPENEMF+ manual 2.2.3.10, Microsoft name: SharpenEffect Object
oCU_PMF_IE_TINTEMF+ manual 2.2.3.11, Microsoft name: TintEffect Object
oCU_PMF_IMAGEEMF+ manual 2.2.1.4, Microsoft name: EmfPlusImage Object
oCU_PMF_IMAGEATTRIBUTESEMF+ manual 2.2.1.5, Microsoft name: EmfPlusImageAttributes Object
oCU_PMF_LINEARGRADIENTBRUSHDATAEMF+ manual 2.2.2.24, Microsoft name: EmfPlusLinearGradientBrushData Object Manual says that Reserved1 and Reserved2 must be ignored. In practice if Reserved1 is not set to StartColor and Reserved2 is not set to EndColor, then XP Preview will not display the gradient
oCU_PMF_LINEARGRADIENTBRUSHOPTIONALDATAEMF+ manual 2.2.2.25, Microsoft name: EmfPlusLinearGradientBrushOptionalData Object For U_PMF_LINEARGRADIENTBRUSHDATA data field
oCU_PMF_LINEPATHEMF+ manual 2.2.2.26, Microsoft name: EmfPlusLinePath Object
oCU_PMF_METAFILEEMF+ manual 2.2.2.27, Microsoft name: EmfPlusMetafile Object
oCU_PMF_MULTIPLYWORLDTRANSFORMEMF+ manual 2.3.9.1, Microsoft name: EmfPlusMultiplyWorldTransform Record, Index 0x2C
oCU_PMF_OBJECTEMF+ manual 2.3.5.1, Microsoft name: EmfPlusObject Record, Index 0x13
oCU_PMF_OFFSETCLIPEMF+ manual 2.3.1.1, Microsoft name: EmfPlusOffsetClip Record, Index 0x35
oCU_PMF_PALETTEEMF+ manual 2.2.2.28, Microsoft name: EmfPlusPalette Object
oCU_PMF_PATHEMF+ manual 2.2.1.6, Microsoft name: EmfPlusPath Object
oCU_PMF_PATHGRADIENTBRUSHDATAEMF+ manual 2.2.2.29, Microsoft name: EmfPlusPathGradientBrushData Object
oCU_PMF_PENEMF+ manual 2.2.1.7, Microsoft name: EmfPlusPen Object
oCU_PMF_PENDATAEMF+ manual 2.2.2.33, Microsoft name: EmfPlusPenData Object
oCU_PMF_POINTEMF+ manual 2.2.2.34, Microsoft name: EmfPlusPenOptionalData Object
oCU_PMF_POINTFEMF+ manual 2.2.2.36, Microsoft name: EmfPlusPointF Object, out of order, needed for 2.2.2.29
oCU_PMF_RECTEMF+ manual 2.2.2.38, Microsoft name: EmfPlusRect Object
oCU_PMF_RECTFEMF+ manual 2.2.2.39, Microsoft name: EmfPlusRectF Object, out of order, needed for 2.2.2.24
oCU_PMF_REGIONEMF+ manual 2.2.1.8, Microsoft name: EmfPlusRegion Object
oCU_PMF_REGIONNODEEMF+ manual 2.2.2.40, Microsoft name: EmfPlusRegionNode Object, out of order, needed for 2.2.1.8
oCU_PMF_REGIONNODEPATHEMF+ manual 2.2.2.42, Microsoft name: EmfPlusRegionNodePath Object
oCU_PMF_RESETCLIPU_PMF_RESETCLIP EMF+ manual 2.3.1.2, Microsoft name: EmfPlusResetClip Record, Index 0x31
oCU_PMF_RESETWORLDTRANSFORMEMF+ manual 2.3.9.2, Microsoft name: EmfPlusResetWorldTransform Record, Index 0x2B Sets transformation matrix to identity matrix
oCU_PMF_RESTOREEMF+ manual 2.3.7.4, Microsoft name: EmfPlusRestore Record, Index 0x26
oCU_PMF_ROTATEWORLDTRANSFORMEMF+ manual 2.3.9.3, Microsoft name: EmfPlusRotateWorldTransform Record, Index 0x2F Construct transformation matrix from Angle: sin(Angle) cos(Angle) 0 cos(Angle) -sin(Angle) 0 Multiply this against current world space transform, result becomes new world space transform
oCU_PMF_ROTMATRIX
oCU_PMF_SAVEEMF+ manual 2.3.7.5, Microsoft name: EmfPlusSave Record, Index 0x25
oCU_PMF_SCALEWORLDTRANSFORMEMF+ manual 2.3.9.4, Microsoft name: EmfPlusScaleWorldTransform Record, Index 0x2E Construct transformation matrix: Sx 0 0 0 Sy 0 Multiply this against current world space transform, result becomes new world space transform
oCU_PMF_SERIALIZABLEOBJECTEMF+ manual 2.3.5.2, Microsoft name: EmfPlusSerializableObject Record, Index 0x38
oCU_PMF_SETANTIALIASMODEEMF+ manual 2.3.6.1, Microsoft name: EmfPlusSetAntiAliasMode Record, Index 0x1E
oCU_PMF_SETCLIPPATHEMF+ manual 2.3.1.3, Microsoft name: EmfPlusSetClipPath Record, Index 0x33
oCU_PMF_SETCLIPRECTEMF+ manual 2.3.1.4, Microsoft name: EmfPlusSetClipRect Record, Index 0x32
oCU_PMF_SETCLIPREGIONEMF+ manual 2.3.1.5, Microsoft name: EmfPlusSetClipRegion Record, Index 0x34
oCU_PMF_SETCOMPOSITINGMODEEMF+ manual 2.3.6.2, Microsoft name: EmfPlusSetCompositingMode Record, Index 0x23
oCU_PMF_SETCOMPOSITINGQUALITYEMF+ manual 2.3.6.3, Microsoft name: EmfPlusSetCompositingQuality Record, Index 0x24
oCU_PMF_SETINTERPOLATIONMODEEMF+ manual 2.3.6.4, Microsoft name: EmfPlusSetInterpolationMode Record, Index 0x21
oCU_PMF_SETPAGETRANSFORMEMF+ manual 2.3.9.5, Microsoft name: EmfPlusSetPageTransform Record, Index 0x30 flags (LITTLE endian here, manual uses BIG endian) bits 0-7 UnitType enumeration
oCU_PMF_SETPIXELOFFSETMODEEMF+ manual 2.3.6.5, Microsoft name: EmfPlusSetPixelOffsetMode Record, Index 0x22
oCU_PMF_SETRENDERINGORIGINEMF+ manual 2.3.6.6, Microsoft name: EmfPlusSetRenderingOrigin Record, Index 0x1D
oCU_PMF_SETTEXTCONTRASTEMF+ manual 2.3.6.7, Microsoft name: EmfPlusSetTextContrast Record, Index 0x20
oCU_PMF_SETTEXTRENDERINGHINTEMF+ manual 2.3.6.8, Microsoft name: EmfPlusSetTextRenderingHint Record, Index 0x1F
oCU_PMF_SETTSCLIPEMF+ manual 2.3.8.1, Microsoft name: EmfPlusSetTSClip Record, Index 0x3A
oCU_PMF_SETTSGRAPHICSEMF+ manual 2.3.8.2, Microsoft name: EmfPlusSetTSGraphics Record, Index 0x39
oCU_PMF_SETWORLDTRANSFORMEMF+ manual 2.3.9.6, Microsoft name: EmfPlusSetWorldTransform Record, Index 0x2A
oCU_PMF_SOLIDBRUSHDATAEMF+ manual 2.2.2.43, Microsoft name: EmfPlusSolidBrushData Object For U_PMF_BRUSH data field (one type of brush)
oCU_PMF_STRINGFORMATEMF+ manual 2.2.1.9, Microsoft name: EmfPlusStringFormat Object
oCU_PMF_TEXTUREBRUSHDATAEMF+ manual 2.2.2.45, Microsoft name: EmfPlusTextureBrushData Object
oCU_PMF_TRANSFORMMATRIXEMF+ manual 2.2.2.47, Microsoft name: EmfPlusTransformMatrix Object, out of order, needed for 2.2.2.25
oCU_PMF_TRANSLATEWORLDTRANSFORMEMF+ manual 2.3.9.7, Microsoft name: EmfPlusTranslateWorldTransform Record, Index 0x2D Construct transformation matrix: 1 0 Dx 0 1 Dy Multiply this against current world space transform, result becomes new world space transform
oCU_POINT16Point type for 16 bit EMR drawing functions
oCU_POINT28_4For U_EPS_DATA Points field
oCU_POLYPOLYGON
oCU_PSEUDO_OBJHolds EMF+ objects and records in EMF+ file format byte order
oCU_RECTCoordinates of the upper left, lower right corner
oCU_RECT16Coordinates of the upper left, lower right corner. Note that the coordinate system is 0,0 in the upper left corner of the screen an N,M in the lower right corner. Microsoft name: RECT Object COLLIDES with EMF Rect Object
oCU_REGION
oCU_RGBQUADFor U_BITMAPINFO bmiColors field
oCU_RGNDATAFor U_EMRFILLRGN RgnData field(s)
oCU_RGNDATAHEADERFor U_RGNDATA rdb field
oCU_SCAN
oCU_SERIAL_DESCSerializer description records
oCU_SIZEPair of values indicating x and y sizes
oCU_TRIVERTEXFor GRADIENT_[TRIANGLE|U_RECT]
oCU_WLOGBRUSH
oCU_WMRANIMATEPALETTE
oCU_WMRARC
oCU_WMRBITBLT_NOPX
oCU_WMRBITBLT_PX
oCU_WMRCREATEBRUSHINDIRECT
oCU_WMRCREATEFONTINDIRECT
oCU_WMRCREATEPATTERNBRUSH
oCU_WMRCREATEPENINDIRECT
oCU_WMRCREATEREGION
oCU_WMRDIBBITBLT_NOPX
oCU_WMRDIBBITBLT_PX
oCU_WMRDIBCREATEPATTERNBRUSH
oCU_WMRDIBSTRETCHBLT_NOPX
oCU_WMRDIBSTRETCHBLT_PX
oCU_WMRDRAWTEXT
oCU_WMRELLIPSE
oCU_WMREOF
oCU_WMRESCAPE
oCU_WMREXCLUDECLIPRECT
oCU_WMREXTTEXTOUT
oCU_WMRFILLREGION
oCU_WMRFLOODFILL
oCU_WMRFRAMEREGION
oCU_WMRHEADER
oCU_WMRINVERTREGION
oCU_WMRPATBLT
oCU_WMRPIE
oCU_WMRPLACEABLE
oCU_WMRPOLYGON
oCU_WMRPOLYPOLYGON
oCU_WMRRESTOREDC
oCU_WMRROUNDRECT
oCU_WMRSCALEWINDOWEXT
oCU_WMRSETBKCOLOR
oCU_WMRSETBKMODE
oCU_WMRSETDIBTODEV
oCU_WMRSETMAPMODE
oCU_WMRSETMAPPERFLAGS
oCU_WMRSETPIXEL
oCU_WMRSETTEXTJUSTIFICATION
oCU_WMRSETWINDOWORG
oCU_WMRSTRETCHBLT_NOPX
oCU_WMRSTRETCHBLT_PX
oCU_WMRSTRETCHDIB
oCU_WMRTEXTOUT
oCU_XFORMFor U_EMR[FILLRGN|STRETCHBLT|MASKBLT|PLGBLT] xformSrc field
oCWMFHANDLES
\CWMFTRACK