services: Move service cleanup code to separate function.
[wine/multimedia.git] / include / gdiplusenums.h
blob69c81540ffcc42c3f799fc9c80e46e1100d6eba8
1 /*
2 * Copyright (C) 2007 Google (Evan Stade)
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19 #ifndef _GDIPLUSENUMS_H
20 #define _GDIPLUSENUMS_H
22 typedef UINT GraphicsState;
23 typedef UINT GraphicsContainer;
25 enum Unit
27 UnitWorld = 0,
28 UnitDisplay = 1,
29 UnitPixel = 2,
30 UnitPoint = 3,
31 UnitInch = 4,
32 UnitDocument = 5,
33 UnitMillimeter = 6
36 enum BrushType
38 BrushTypeSolidColor = 0,
39 BrushTypeHatchFill = 1,
40 BrushTypeTextureFill = 2,
41 BrushTypePathGradient = 3,
42 BrushTypeLinearGradient = 4
45 enum DriverStringOptions
47 DriverStringOptionsCmapLookup = 1,
48 DriverStringOptionsVertical = 2,
49 DriverStringOptionsRealizedAdvance = 4,
50 DriverStringOptionsLimitSubpixel = 4
53 enum FillMode
55 FillModeAlternate = 0,
56 FillModeWinding = 1
59 enum LineCap
61 LineCapFlat = 0x00,
62 LineCapSquare = 0x01,
63 LineCapRound = 0x02,
64 LineCapTriangle = 0x03,
66 LineCapNoAnchor = 0x10,
67 LineCapSquareAnchor = 0x11,
68 LineCapRoundAnchor = 0x12,
69 LineCapDiamondAnchor = 0x13,
70 LineCapArrowAnchor = 0x14,
72 LineCapCustom = 0xff,
73 LineCapAnchorMask = 0xf0
76 enum PathPointType{
77 PathPointTypeStart = 0, /* start of a figure */
78 PathPointTypeLine = 1,
79 PathPointTypeBezier = 3,
80 PathPointTypePathTypeMask = 7,
81 PathPointTypePathDashMode = 16, /* not used */
82 PathPointTypePathMarker = 32,
83 PathPointTypeCloseSubpath = 128, /* end of a closed figure */
84 PathPointTypeBezier3 = 3
87 enum PenType
89 PenTypeSolidColor = BrushTypeSolidColor,
90 PenTypeHatchFill = BrushTypeHatchFill,
91 PenTypeTextureFill = BrushTypeTextureFill,
92 PenTypePathGradient = BrushTypePathGradient,
93 PenTypeLinearGradient = BrushTypeLinearGradient,
94 PenTypeUnknown = -1
97 enum LineJoin
99 LineJoinMiter = 0,
100 LineJoinBevel = 1,
101 LineJoinRound = 2,
102 LineJoinMiterClipped = 3
105 enum QualityMode
107 QualityModeInvalid = -1,
108 QualityModeDefault = 0,
109 QualityModeLow = 1,
110 QualityModeHigh = 2
113 enum SmoothingMode
115 SmoothingModeInvalid = QualityModeInvalid,
116 SmoothingModeDefault = QualityModeDefault,
117 SmoothingModeHighSpeed = QualityModeLow,
118 SmoothingModeHighQuality = QualityModeHigh,
119 SmoothingModeNone,
120 SmoothingModeAntiAlias
123 enum CompositingQuality
125 CompositingQualityInvalid = QualityModeInvalid,
126 CompositingQualityDefault = QualityModeDefault,
127 CompositingQualityHighSpeed = QualityModeLow,
128 CompositingQualityHighQuality = QualityModeHigh,
129 CompositingQualityGammaCorrected,
130 CompositingQualityAssumeLinear
133 enum InterpolationMode
135 InterpolationModeInvalid = QualityModeInvalid,
136 InterpolationModeDefault = QualityModeDefault,
137 InterpolationModeLowQuality = QualityModeLow,
138 InterpolationModeHighQuality = QualityModeHigh,
139 InterpolationModeBilinear,
140 InterpolationModeBicubic,
141 InterpolationModeNearestNeighbor,
142 InterpolationModeHighQualityBilinear,
143 InterpolationModeHighQualityBicubic
146 enum PenAlignment
148 PenAlignmentCenter = 0,
149 PenAlignmentInset = 1
152 enum PixelOffsetMode
154 PixelOffsetModeInvalid = QualityModeInvalid,
155 PixelOffsetModeDefault = QualityModeDefault,
156 PixelOffsetModeHighSpeed = QualityModeLow,
157 PixelOffsetModeHighQuality = QualityModeHigh,
158 PixelOffsetModeNone,
159 PixelOffsetModeHalf
162 enum DashCap
164 DashCapFlat = 0,
165 DashCapRound = 2,
166 DashCapTriangle = 3
169 enum DashStyle
171 DashStyleSolid,
172 DashStyleDash,
173 DashStyleDot,
174 DashStyleDashDot,
175 DashStyleDashDotDot,
176 DashStyleCustom
179 enum MatrixOrder
181 MatrixOrderPrepend = 0,
182 MatrixOrderAppend = 1
185 enum ImageType
187 ImageTypeUnknown,
188 ImageTypeBitmap,
189 ImageTypeMetafile
192 enum WarpMode {
193 WarpModePerspective,
194 WarpModeBilinear
197 enum WrapMode
199 WrapModeTile,
200 WrapModeTileFlipX,
201 WrapModeTileFlipY,
202 WrapModeTileFlipXY,
203 WrapModeClamp
206 enum MetafileType
208 MetafileTypeInvalid,
209 MetafileTypeWmf,
210 MetafileTypeWmfPlaceable,
211 MetafileTypeEmf,
212 MetafileTypeEmfPlusOnly,
213 MetafileTypeEmfPlusDual
216 enum LinearGradientMode
218 LinearGradientModeHorizontal,
219 LinearGradientModeVertical,
220 LinearGradientModeForwardDiagonal,
221 LinearGradientModeBackwardDiagonal
224 enum EmfType
226 EmfTypeEmfOnly = MetafileTypeEmf,
227 EmfTypeEmfPlusOnly = MetafileTypeEmfPlusOnly,
228 EmfTypeEmfPlusDual = MetafileTypeEmfPlusDual
231 enum CompositingMode
233 CompositingModeSourceOver,
234 CompositingModeSourceCopy
237 enum TextRenderingHint
239 TextRenderingHintSystemDefault = 0,
240 TextRenderingHintSingleBitPerPixelGridFit,
241 TextRenderingHintSingleBitPerPixel,
242 TextRenderingHintAntiAliasGridFit,
243 TextRenderingHintAntiAlias,
244 TextRenderingHintClearTypeGridFit
247 enum StringAlignment
249 StringAlignmentNear = 0,
250 StringAlignmentCenter = 1,
251 StringAlignmentFar = 2
254 enum StringDigitSubstitute
256 StringDigitSubstituteUser = 0,
257 StringDigitSubstituteNone = 1,
258 StringDigitSubstituteNational = 2,
259 StringDigitSubstituteTraditional = 3
262 enum StringFormatFlags
264 StringFormatFlagsDirectionRightToLeft = 0x00000001,
265 StringFormatFlagsDirectionVertical = 0x00000002,
266 StringFormatFlagsNoFitBlackBox = 0x00000004,
267 StringFormatFlagsDisplayFormatControl = 0x00000020,
268 StringFormatFlagsNoFontFallback = 0x00000400,
269 StringFormatFlagsMeasureTrailingSpaces = 0x00000800,
270 StringFormatFlagsNoWrap = 0x00001000,
271 StringFormatFlagsLineLimit = 0x00002000,
272 StringFormatFlagsNoClip = 0x00004000
275 enum StringTrimming
277 StringTrimmingNone = 0,
278 StringTrimmingCharacter = 1,
279 StringTrimmingWord = 2,
280 StringTrimmingEllipsisCharacter = 3,
281 StringTrimmingEllipsisWord = 4,
282 StringTrimmingEllipsisPath = 5
285 enum FontStyle
287 FontStyleRegular = 0,
288 FontStyleBold = 1,
289 FontStyleItalic = 2,
290 FontStyleBoldItalic = 3,
291 FontStyleUnderline = 4,
292 FontStyleStrikeout = 8
295 enum HotkeyPrefix
297 HotkeyPrefixNone = 0,
298 HotkeyPrefixShow = 1,
299 HotkeyPrefixHide = 2
302 enum PaletteFlags
304 PaletteFlagsHasAlpha = 1,
305 PaletteFlagsGrayScale = 2,
306 PaletteFlagsHalftone = 4
309 enum ImageCodecFlags
311 ImageCodecFlagsEncoder = 1,
312 ImageCodecFlagsDecoder = 2,
313 ImageCodecFlagsSupportBitmap = 4,
314 ImageCodecFlagsSupportVector = 8,
315 ImageCodecFlagsSeekableEncode = 16,
316 ImageCodecFlagsBlockingDecode = 32,
317 ImageCodecFlagsBuiltin = 65536,
318 ImageCodecFlagsSystem = 131072,
319 ImageCodecFlagsUser = 262144
322 enum ImageFlags
324 ImageFlagsNone = 0,
325 ImageFlagsScalable = 0x0001,
326 ImageFlagsHasAlpha = 0x0002,
327 ImageFlagsHasTranslucent = 0x0004,
328 ImageFlagsPartiallyScalable = 0x0008,
329 ImageFlagsColorSpaceRGB = 0x0010,
330 ImageFlagsColorSpaceCMYK = 0x0020,
331 ImageFlagsColorSpaceGRAY = 0x0040,
332 ImageFlagsColorSpaceYCBCR = 0x0080,
333 ImageFlagsColorSpaceYCCK = 0x0100,
334 ImageFlagsHasRealDPI = 0x1000,
335 ImageFlagsHasRealPixelSize = 0x2000,
336 ImageFlagsReadOnly = 0x00010000,
337 ImageFlagsCaching = 0x00020000
340 enum CombineMode
342 CombineModeReplace,
343 CombineModeIntersect,
344 CombineModeUnion,
345 CombineModeXor,
346 CombineModeExclude,
347 CombineModeComplement
350 enum FlushIntention
352 FlushIntentionFlush = 0,
353 FlushIntentionSync = 1
356 enum CoordinateSpace
358 CoordinateSpaceWorld,
359 CoordinateSpacePage,
360 CoordinateSpaceDevice
363 enum GpTestControlEnum
365 TestControlForceBilinear = 0,
366 TestControlNoICM = 1,
367 TestControlGetBuildNumber = 2
370 enum MetafileFrameUnit
372 MetafileFrameUnitPixel = UnitPixel,
373 MetafileFrameUnitPoint = UnitPoint,
374 MetafileFrameUnitInch = UnitInch,
375 MetafileFrameUnitDocument = UnitDocument,
376 MetafileFrameUnitMillimeter = UnitMillimeter,
377 MetafileFrameUnitGdi
380 enum HatchStyle
382 HatchStyleHorizontal = 0,
383 HatchStyleVertical = 1,
384 HatchStyleForwardDiagonal = 2,
385 HatchStyleBackwardDiagonal = 3,
386 HatchStyleCross = 4,
387 HatchStyleDiagonalCross = 5,
388 HatchStyle05Percent = 6,
389 HatchStyle10Percent = 7,
390 HatchStyle20Percent = 8,
391 HatchStyle25Percent = 9,
392 HatchStyle30Percent = 10,
393 HatchStyle40Percent = 11,
394 HatchStyle50Percent = 12,
395 HatchStyle60Percent = 13,
396 HatchStyle70Percent = 14,
397 HatchStyle75Percent = 15,
398 HatchStyle80Percent = 16,
399 HatchStyle90Percent = 17,
400 HatchStyleLightDownwardDiagonal = 18,
401 HatchStyleLightUpwardDiagonal = 19,
402 HatchStyleDarkDownwardDiagonal = 20,
403 HatchStyleDarkUpwardDiagonal = 21,
404 HatchStyleWideDownwardDiagonal = 22,
405 HatchStyleWideUpwardDiagonal = 23,
406 HatchStyleLightVertical = 24,
407 HatchStyleLightHorizontal = 25,
408 HatchStyleNarrowVertical = 26,
409 HatchStyleNarrowHorizontal = 27,
410 HatchStyleDarkVertical = 28,
411 HatchStyleDarkHorizontal = 29,
412 HatchStyleDashedDownwardDiagonal = 30,
413 HatchStyleDashedUpwardDiagonal = 31,
414 HatchStyleDashedHorizontal = 32,
415 HatchStyleDashedVertical = 33,
416 HatchStyleSmallConfetti = 34,
417 HatchStyleLargeConfetti = 35,
418 HatchStyleZigZag = 36,
419 HatchStyleWave = 37,
420 HatchStyleDiagonalBrick = 38,
421 HatchStyleHorizontalBrick = 39,
422 HatchStyleWeave = 40,
423 HatchStylePlaid = 41,
424 HatchStyleDivot = 42,
425 HatchStyleDottedGrid = 43,
426 HatchStyleDottedDiamond = 44,
427 HatchStyleShingle = 45,
428 HatchStyleTrellis = 46,
429 HatchStyleSphere = 47,
430 HatchStyleSmallGrid = 48,
431 HatchStyleSmallCheckerBoard = 49,
432 HatchStyleLargeCheckerBoard = 50,
433 HatchStyleOutlinedDiamond = 51,
434 HatchStyleSolidDiamond = 52,
435 HatchStyleTotal = 53,
436 HatchStyleLargeGrid = HatchStyleCross,
437 HatchStyleMin = HatchStyleHorizontal,
438 HatchStyleMax = HatchStyleTotal - 1
441 #define GDIP_EMFPLUS_RECORD_BASE 0x00004000
442 #define GDIP_WMF_RECORD_BASE 0x00010000
443 #define GDIP_WMF_RECORD_TO_EMFPLUS(x) ((x)|GDIP_WMF_RECORD_BASE)
445 enum EmfPlusRecordType {
446 WmfRecordTypeSetBkColor = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETBKCOLOR),
447 WmfRecordTypeSetBkMode = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETBKMODE),
448 WmfRecordTypeSetMapMode = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETMAPMODE),
449 WmfRecordTypeSetROP2 = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETROP2),
450 WmfRecordTypeSetRelAbs = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETRELABS),
451 WmfRecordTypeSetPolyFillMode = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETPOLYFILLMODE),
452 WmfRecordTypeSetStretchBltMode = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETSTRETCHBLTMODE),
453 WmfRecordTypeSetTextCharExtra = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETTEXTCHAREXTRA),
454 WmfRecordTypeSetTextColor = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETTEXTCOLOR),
455 WmfRecordTypeSetTextJustification = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETTEXTJUSTIFICATION),
456 WmfRecordTypeSetWindowOrg = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETWINDOWORG),
457 WmfRecordTypeSetWindowExt = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETWINDOWEXT),
458 WmfRecordTypeSetViewportOrg = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETVIEWPORTORG),
459 WmfRecordTypeSetViewportExt = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETVIEWPORTEXT),
460 WmfRecordTypeOffsetWindowOrg = GDIP_WMF_RECORD_TO_EMFPLUS(META_OFFSETWINDOWORG),
461 WmfRecordTypeScaleWindowExt = GDIP_WMF_RECORD_TO_EMFPLUS(META_SCALEWINDOWEXT),
462 WmfRecordTypeOffsetViewportOrg = GDIP_WMF_RECORD_TO_EMFPLUS(META_OFFSETVIEWPORTORG),
463 WmfRecordTypeScaleViewportExt = GDIP_WMF_RECORD_TO_EMFPLUS(META_SCALEVIEWPORTEXT),
464 WmfRecordTypeLineTo = GDIP_WMF_RECORD_TO_EMFPLUS(META_LINETO),
465 WmfRecordTypeMoveTo = GDIP_WMF_RECORD_TO_EMFPLUS(META_MOVETO),
466 WmfRecordTypeExcludeClipRect = GDIP_WMF_RECORD_TO_EMFPLUS(META_EXCLUDECLIPRECT),
467 WmfRecordTypeIntersectClipRect = GDIP_WMF_RECORD_TO_EMFPLUS(META_INTERSECTCLIPRECT),
468 WmfRecordTypeArc = GDIP_WMF_RECORD_TO_EMFPLUS(META_ARC),
469 WmfRecordTypeEllipse = GDIP_WMF_RECORD_TO_EMFPLUS(META_ELLIPSE),
470 WmfRecordTypeFloodFill = GDIP_WMF_RECORD_TO_EMFPLUS(META_FLOODFILL),
471 WmfRecordTypePie = GDIP_WMF_RECORD_TO_EMFPLUS(META_PIE),
472 WmfRecordTypeRectangle = GDIP_WMF_RECORD_TO_EMFPLUS(META_RECTANGLE),
473 WmfRecordTypeRoundRect = GDIP_WMF_RECORD_TO_EMFPLUS(META_ROUNDRECT),
474 WmfRecordTypePatBlt = GDIP_WMF_RECORD_TO_EMFPLUS(META_PATBLT),
475 WmfRecordTypeSaveDC = GDIP_WMF_RECORD_TO_EMFPLUS(META_SAVEDC),
476 WmfRecordTypeSetPixel = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETPIXEL),
477 WmfRecordTypeOffsetClipRgn = GDIP_WMF_RECORD_TO_EMFPLUS(META_OFFSETCLIPRGN),
478 WmfRecordTypeTextOut = GDIP_WMF_RECORD_TO_EMFPLUS(META_TEXTOUT),
479 WmfRecordTypeBitBlt = GDIP_WMF_RECORD_TO_EMFPLUS(META_BITBLT),
480 WmfRecordTypeStretchBlt = GDIP_WMF_RECORD_TO_EMFPLUS(META_STRETCHBLT),
481 WmfRecordTypePolygon = GDIP_WMF_RECORD_TO_EMFPLUS(META_POLYGON),
482 WmfRecordTypePolyline = GDIP_WMF_RECORD_TO_EMFPLUS(META_POLYLINE),
483 WmfRecordTypeEscape = GDIP_WMF_RECORD_TO_EMFPLUS(META_ESCAPE),
484 WmfRecordTypeRestoreDC = GDIP_WMF_RECORD_TO_EMFPLUS(META_RESTOREDC),
485 WmfRecordTypeFillRegion = GDIP_WMF_RECORD_TO_EMFPLUS(META_FILLREGION),
486 WmfRecordTypeFrameRegion = GDIP_WMF_RECORD_TO_EMFPLUS(META_FRAMEREGION),
487 WmfRecordTypeInvertRegion = GDIP_WMF_RECORD_TO_EMFPLUS(META_INVERTREGION),
488 WmfRecordTypePaintRegion = GDIP_WMF_RECORD_TO_EMFPLUS(META_PAINTREGION),
489 WmfRecordTypeSelectClipRegion = GDIP_WMF_RECORD_TO_EMFPLUS(META_SELECTCLIPREGION),
490 WmfRecordTypeSelectObject = GDIP_WMF_RECORD_TO_EMFPLUS(META_SELECTOBJECT),
491 WmfRecordTypeSetTextAlign = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETTEXTALIGN),
492 WmfRecordTypeDrawText = GDIP_WMF_RECORD_TO_EMFPLUS(0x062F),
493 WmfRecordTypeChord = GDIP_WMF_RECORD_TO_EMFPLUS(META_CHORD),
494 WmfRecordTypeSetMapperFlags = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETMAPPERFLAGS),
495 WmfRecordTypeExtTextOut = GDIP_WMF_RECORD_TO_EMFPLUS(META_EXTTEXTOUT),
496 WmfRecordTypeSetDIBToDev = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETDIBTODEV),
497 WmfRecordTypeSelectPalette = GDIP_WMF_RECORD_TO_EMFPLUS(META_SELECTPALETTE),
498 WmfRecordTypeRealizePalette = GDIP_WMF_RECORD_TO_EMFPLUS(META_REALIZEPALETTE),
499 WmfRecordTypeAnimatePalette = GDIP_WMF_RECORD_TO_EMFPLUS(META_ANIMATEPALETTE),
500 WmfRecordTypeSetPalEntries = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETPALENTRIES),
501 WmfRecordTypePolyPolygon = GDIP_WMF_RECORD_TO_EMFPLUS(META_POLYPOLYGON),
502 WmfRecordTypeResizePalette = GDIP_WMF_RECORD_TO_EMFPLUS(META_RESIZEPALETTE),
503 WmfRecordTypeDIBBitBlt = GDIP_WMF_RECORD_TO_EMFPLUS(META_DIBBITBLT),
504 WmfRecordTypeDIBStretchBlt = GDIP_WMF_RECORD_TO_EMFPLUS(META_DIBSTRETCHBLT),
505 WmfRecordTypeDIBCreatePatternBrush = GDIP_WMF_RECORD_TO_EMFPLUS(META_DIBCREATEPATTERNBRUSH),
506 WmfRecordTypeStretchDIB = GDIP_WMF_RECORD_TO_EMFPLUS(META_STRETCHDIB),
507 WmfRecordTypeExtFloodFill = GDIP_WMF_RECORD_TO_EMFPLUS(META_EXTFLOODFILL),
508 WmfRecordTypeSetLayout = GDIP_WMF_RECORD_TO_EMFPLUS(0x0149),
509 WmfRecordTypeResetDC = GDIP_WMF_RECORD_TO_EMFPLUS(0x014C),
510 WmfRecordTypeStartDoc = GDIP_WMF_RECORD_TO_EMFPLUS(0x014D),
511 WmfRecordTypeStartPage = GDIP_WMF_RECORD_TO_EMFPLUS(0x004F),
512 WmfRecordTypeEndPage = GDIP_WMF_RECORD_TO_EMFPLUS(0x0050),
513 WmfRecordTypeAbortDoc = GDIP_WMF_RECORD_TO_EMFPLUS(0x0052),
514 WmfRecordTypeEndDoc = GDIP_WMF_RECORD_TO_EMFPLUS(0x005E),
515 WmfRecordTypeDeleteObject = GDIP_WMF_RECORD_TO_EMFPLUS(META_DELETEOBJECT),
516 WmfRecordTypeCreatePalette = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEPALETTE),
517 WmfRecordTypeCreateBrush = GDIP_WMF_RECORD_TO_EMFPLUS(0x00F8),
518 WmfRecordTypeCreatePatternBrush = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEPATTERNBRUSH),
519 WmfRecordTypeCreatePenIndirect = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEPENINDIRECT),
520 WmfRecordTypeCreateFontIndirect = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEFONTINDIRECT),
521 WmfRecordTypeCreateBrushIndirect = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEBRUSHINDIRECT),
522 WmfRecordTypeCreateBitmapIndirect = GDIP_WMF_RECORD_TO_EMFPLUS(0x02FD),
523 WmfRecordTypeCreateBitmap = GDIP_WMF_RECORD_TO_EMFPLUS(0x06FE),
524 WmfRecordTypeCreateRegion = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEREGION),
525 EmfRecordTypeHeader = EMR_HEADER,
526 EmfRecordTypePolyBezier = EMR_POLYBEZIER,
527 EmfRecordTypePolygon = EMR_POLYGON,
528 EmfRecordTypePolyline = EMR_POLYLINE,
529 EmfRecordTypePolyBezierTo = EMR_POLYBEZIERTO,
530 EmfRecordTypePolyLineTo = EMR_POLYLINETO,
531 EmfRecordTypePolyPolyline = EMR_POLYPOLYLINE,
532 EmfRecordTypePolyPolygon = EMR_POLYPOLYGON,
533 EmfRecordTypeSetWindowExtEx = EMR_SETWINDOWEXTEX,
534 EmfRecordTypeSetWindowOrgEx = EMR_SETWINDOWORGEX,
535 EmfRecordTypeSetViewportExtEx = EMR_SETVIEWPORTEXTEX,
536 EmfRecordTypeSetViewportOrgEx = EMR_SETVIEWPORTORGEX,
537 EmfRecordTypeSetBrushOrgEx = EMR_SETBRUSHORGEX,
538 EmfRecordTypeEOF = EMR_EOF,
539 EmfRecordTypeSetPixelV = EMR_SETPIXELV,
540 EmfRecordTypeSetMapperFlags = EMR_SETMAPPERFLAGS,
541 EmfRecordTypeSetMapMode = EMR_SETMAPMODE,
542 EmfRecordTypeSetBkMode = EMR_SETBKMODE,
543 EmfRecordTypeSetPolyFillMode = EMR_SETPOLYFILLMODE,
544 EmfRecordTypeSetROP2 = EMR_SETROP2,
545 EmfRecordTypeSetStretchBltMode = EMR_SETSTRETCHBLTMODE,
546 EmfRecordTypeSetTextAlign = EMR_SETTEXTALIGN,
547 EmfRecordTypeSetColorAdjustment = EMR_SETCOLORADJUSTMENT,
548 EmfRecordTypeSetTextColor = EMR_SETTEXTCOLOR,
549 EmfRecordTypeSetBkColor = EMR_SETBKCOLOR,
550 EmfRecordTypeOffsetClipRgn = EMR_OFFSETCLIPRGN,
551 EmfRecordTypeMoveToEx = EMR_MOVETOEX,
552 EmfRecordTypeSetMetaRgn = EMR_SETMETARGN,
553 EmfRecordTypeExcludeClipRect = EMR_EXCLUDECLIPRECT,
554 EmfRecordTypeIntersectClipRect = EMR_INTERSECTCLIPRECT,
555 EmfRecordTypeScaleViewportExtEx = EMR_SCALEVIEWPORTEXTEX,
556 EmfRecordTypeScaleWindowExtEx = EMR_SCALEWINDOWEXTEX,
557 EmfRecordTypeSaveDC = EMR_SAVEDC,
558 EmfRecordTypeRestoreDC = EMR_RESTOREDC,
559 EmfRecordTypeSetWorldTransform = EMR_SETWORLDTRANSFORM,
560 EmfRecordTypeModifyWorldTransform = EMR_MODIFYWORLDTRANSFORM,
561 EmfRecordTypeSelectObject = EMR_SELECTOBJECT,
562 EmfRecordTypeCreatePen = EMR_CREATEPEN,
563 EmfRecordTypeCreateBrushIndirect = EMR_CREATEBRUSHINDIRECT,
564 EmfRecordTypeDeleteObject = EMR_DELETEOBJECT,
565 EmfRecordTypeAngleArc = EMR_ANGLEARC,
566 EmfRecordTypeEllipse = EMR_ELLIPSE,
567 EmfRecordTypeRectangle = EMR_RECTANGLE,
568 EmfRecordTypeRoundRect = EMR_ROUNDRECT,
569 EmfRecordTypeArc = EMR_ARC,
570 EmfRecordTypeChord = EMR_CHORD,
571 EmfRecordTypePie = EMR_PIE,
572 EmfRecordTypeSelectPalette = EMR_SELECTPALETTE,
573 EmfRecordTypeCreatePalette = EMR_CREATEPALETTE,
574 EmfRecordTypeSetPaletteEntries = EMR_SETPALETTEENTRIES,
575 EmfRecordTypeResizePalette = EMR_RESIZEPALETTE,
576 EmfRecordTypeRealizePalette = EMR_REALIZEPALETTE,
577 EmfRecordTypeExtFloodFill = EMR_EXTFLOODFILL,
578 EmfRecordTypeLineTo = EMR_LINETO,
579 EmfRecordTypeArcTo = EMR_ARCTO,
580 EmfRecordTypePolyDraw = EMR_POLYDRAW,
581 EmfRecordTypeSetArcDirection = EMR_SETARCDIRECTION,
582 EmfRecordTypeSetMiterLimit = EMR_SETMITERLIMIT,
583 EmfRecordTypeBeginPath = EMR_BEGINPATH,
584 EmfRecordTypeEndPath = EMR_ENDPATH,
585 EmfRecordTypeCloseFigure = EMR_CLOSEFIGURE,
586 EmfRecordTypeFillPath = EMR_FILLPATH,
587 EmfRecordTypeStrokeAndFillPath = EMR_STROKEANDFILLPATH,
588 EmfRecordTypeStrokePath = EMR_STROKEPATH,
589 EmfRecordTypeFlattenPath = EMR_FLATTENPATH,
590 EmfRecordTypeWidenPath = EMR_WIDENPATH,
591 EmfRecordTypeSelectClipPath = EMR_SELECTCLIPPATH,
592 EmfRecordTypeAbortPath = EMR_ABORTPATH,
593 EmfRecordTypeReserved_069 = 69,
594 EmfRecordTypeGdiComment = EMR_GDICOMMENT,
595 EmfRecordTypeFillRgn = EMR_FILLRGN,
596 EmfRecordTypeFrameRgn = EMR_FRAMERGN,
597 EmfRecordTypeInvertRgn = EMR_INVERTRGN,
598 EmfRecordTypePaintRgn = EMR_PAINTRGN,
599 EmfRecordTypeExtSelectClipRgn = EMR_EXTSELECTCLIPRGN,
600 EmfRecordTypeBitBlt = EMR_BITBLT,
601 EmfRecordTypeStretchBlt = EMR_STRETCHBLT,
602 EmfRecordTypeMaskBlt = EMR_MASKBLT,
603 EmfRecordTypePlgBlt = EMR_PLGBLT,
604 EmfRecordTypeSetDIBitsToDevice = 80,
605 EmfRecordTypeStretchDIBits = EMR_STRETCHDIBITS,
606 EmfRecordTypeExtCreateFontIndirect = EMR_EXTCREATEFONTINDIRECTW,
607 EmfRecordTypeExtTextOutA = EMR_EXTTEXTOUTA,
608 EmfRecordTypeExtTextOutW = EMR_EXTTEXTOUTW,
609 EmfRecordTypePolyBezier16 = EMR_POLYBEZIER16,
610 EmfRecordTypePolygon16 = EMR_POLYGON16,
611 EmfRecordTypePolyline16 = EMR_POLYLINE16,
612 EmfRecordTypePolyBezierTo16 = EMR_POLYBEZIERTO16,
613 EmfRecordTypePolylineTo16 = EMR_POLYLINETO16,
614 EmfRecordTypePolyPolyline16 = EMR_POLYPOLYLINE16,
615 EmfRecordTypePolyPolygon16 = EMR_POLYPOLYGON16,
616 EmfRecordTypePolyDraw16 = EMR_POLYDRAW16,
617 EmfRecordTypeCreateMonoBrush = EMR_CREATEMONOBRUSH,
618 EmfRecordTypeCreateDIBPatternBrushPt = EMR_CREATEDIBPATTERNBRUSHPT,
619 EmfRecordTypeExtCreatePen = EMR_EXTCREATEPEN,
620 EmfRecordTypePolyTextOutA = EMR_POLYTEXTOUTA,
621 EmfRecordTypePolyTextOutW = EMR_POLYTEXTOUTW,
622 EmfRecordTypeSetICMMode = 98,
623 EmfRecordTypeCreateColorSpace = 99,
624 EmfRecordTypeSetColorSpace = 100,
625 EmfRecordTypeDeleteColorSpace = 101,
626 EmfRecordTypeGLSRecord = 102,
627 EmfRecordTypeGLSBoundedRecord = 103,
628 EmfRecordTypePixelFormat = 104,
629 EmfRecordTypeDrawEscape = 105,
630 EmfRecordTypeExtEscape = 106,
631 EmfRecordTypeStartDoc = 107,
632 EmfRecordTypeSmallTextOut = 108,
633 EmfRecordTypeForceUFIMapping = 109,
634 EmfRecordTypeNamedEscape = 110,
635 EmfRecordTypeColorCorrectPalette = 111,
636 EmfRecordTypeSetICMProfileA = 112,
637 EmfRecordTypeSetICMProfileW = 113,
638 EmfRecordTypeAlphaBlend = 114,
639 EmfRecordTypeSetLayout = 115,
640 EmfRecordTypeTransparentBlt = 116,
641 EmfRecordTypeReserved_117 = 117,
642 EmfRecordTypeGradientFill = 118,
643 EmfRecordTypeSetLinkedUFIs = 119,
644 EmfRecordTypeSetTextJustification = 120,
645 EmfRecordTypeColorMatchToTargetW = 121,
646 EmfRecordTypeCreateColorSpaceW = 122,
647 EmfRecordTypeMax = 122,
648 EmfRecordTypeMin = 1,
649 EmfPlusRecordTypeInvalid = GDIP_EMFPLUS_RECORD_BASE,
650 EmfPlusRecordTypeHeader,
651 EmfPlusRecordTypeEndOfFile,
652 EmfPlusRecordTypeComment,
653 EmfPlusRecordTypeGetDC,
654 EmfPlusRecordTypeMultiFormatStart,
655 EmfPlusRecordTypeMultiFormatSection,
656 EmfPlusRecordTypeMultiFormatEnd,
657 EmfPlusRecordTypeObject,
658 EmfPlusRecordTypeClear,
659 EmfPlusRecordTypeFillRects,
660 EmfPlusRecordTypeDrawRects,
661 EmfPlusRecordTypeFillPolygon,
662 EmfPlusRecordTypeDrawLines,
663 EmfPlusRecordTypeFillEllipse,
664 EmfPlusRecordTypeDrawEllipse,
665 EmfPlusRecordTypeFillPie,
666 EmfPlusRecordTypeDrawPie,
667 EmfPlusRecordTypeDrawArc,
668 EmfPlusRecordTypeFillRegion,
669 EmfPlusRecordTypeFillPath,
670 EmfPlusRecordTypeDrawPath,
671 EmfPlusRecordTypeFillClosedCurve,
672 EmfPlusRecordTypeDrawClosedCurve,
673 EmfPlusRecordTypeDrawCurve,
674 EmfPlusRecordTypeDrawBeziers,
675 EmfPlusRecordTypeDrawImage,
676 EmfPlusRecordTypeDrawImagePoints,
677 EmfPlusRecordTypeDrawString,
678 EmfPlusRecordTypeSetRenderingOrigin,
679 EmfPlusRecordTypeSetAntiAliasMode,
680 EmfPlusRecordTypeSetTextRenderingHint,
681 EmfPlusRecordTypeSetTextContrast,
682 EmfPlusRecordTypeSetGammaValue,
683 EmfPlusRecordTypeSetInterpolationMode,
684 EmfPlusRecordTypeSetPixelOffsetMode,
685 EmfPlusRecordTypeSetCompositingMode,
686 EmfPlusRecordTypeSetCompositingQuality,
687 EmfPlusRecordTypeSave,
688 EmfPlusRecordTypeRestore,
689 EmfPlusRecordTypeBeginContainer,
690 EmfPlusRecordTypeBeginContainerNoParams,
691 EmfPlusRecordTypeEndContainer,
692 EmfPlusRecordTypeSetWorldTransform,
693 EmfPlusRecordTypeResetWorldTransform,
694 EmfPlusRecordTypeMultiplyWorldTransform,
695 EmfPlusRecordTypeTranslateWorldTransform,
696 EmfPlusRecordTypeScaleWorldTransform,
697 EmfPlusRecordTypeRotateWorldTransform,
698 EmfPlusRecordTypeSetPageTransform,
699 EmfPlusRecordTypeResetClip,
700 EmfPlusRecordTypeSetClipRect,
701 EmfPlusRecordTypeSetClipPath,
702 EmfPlusRecordTypeSetClipRegion,
703 EmfPlusRecordTypeOffsetClip,
704 EmfPlusRecordTypeDrawDriverString,
705 EmfPlusRecordTypeStrokeFillPath,
706 EmfPlusRecordTypeSerializableObject,
707 EmfPlusRecordTypeSetTSGraphics,
708 EmfPlusRecordTypeSetTSClip,
709 EmfPlusRecordTotal,
710 EmfPlusRecordTypeMax = EmfPlusRecordTotal-1,
711 EmfPlusRecordTypeMin = EmfPlusRecordTypeHeader
714 #ifndef __cplusplus
716 typedef enum Unit Unit;
717 typedef enum BrushType BrushType;
718 typedef enum DriverStringOptions DriverStringOptions;
719 typedef enum FillMode FillMode;
720 typedef enum LineCap LineCap;
721 typedef enum PathPointType PathPointType;
722 typedef enum LineJoin LineJoin;
723 typedef enum QualityMode QualityMode;
724 typedef enum SmoothingMode SmoothingMode;
725 typedef enum CompositingQuality CompositingQuality;
726 typedef enum InterpolationMode InterpolationMode;
727 typedef enum PixelOffsetMode PixelOffsetMode;
728 typedef enum DashCap DashCap;
729 typedef enum DashStyle DashStyle;
730 typedef enum MatrixOrder MatrixOrder;
731 typedef enum ImageType ImageType;
732 typedef enum ImageFlags ImageFlags;
733 typedef enum WarpMode WarpMode;
734 typedef enum WrapMode WrapMode;
735 typedef enum MetafileType MetafileType;
736 typedef enum LinearGradientMode LinearGradientMode;
737 typedef enum EmfType EmfType;
738 typedef enum CompositingMode CompositingMode;
739 typedef enum TextRenderingHint TextRenderingHint;
740 typedef enum StringAlignment StringAlignment;
741 typedef enum StringDigitSubstitute StringDigitSubstitute;
742 typedef enum StringTrimming StringTrimming;
743 typedef enum FontStyle FontStyle;
744 typedef enum StringFormatFlags StringFormatFlags;
745 typedef enum HotkeyPrefix HotkeyPrefix;
746 typedef enum PenAlignment PenAlignment;
747 typedef enum PaletteFlags PaletteFlags;
748 typedef enum ImageCodecFlags ImageCodecFlags;
749 typedef enum CombineMode CombineMode;
750 typedef enum FlushIntention FlushIntention;
751 typedef enum CoordinateSpace CoordinateSpace;
752 typedef enum GpTestControlEnum GpTestControlEnum;
753 typedef enum MetafileFrameUnit MetafileFrameUnit;
754 typedef enum PenType PenType;
755 typedef enum HatchStyle HatchStyle;
756 typedef enum EmfPlusRecordType EmfPlusRecordType;
758 #endif /* end of c typedefs */
760 #undef GDIP_WMF_RECORD_TO_EMFPLUS
761 #define GDIP_WMF_RECORD_TO_EMFPLUS(x) ((EmfPlusRecordType)((x)|GDIP_WMF_RECORD_BASE))
763 #endif