147 lines
4.2 KiB
C
147 lines
4.2 KiB
C
|
/**************************************************************************\
|
||
|
*
|
||
|
* Copyright (c) 1998-2001, Microsoft Corp. All Rights Reserved.
|
||
|
*
|
||
|
* Module Name:
|
||
|
*
|
||
|
* GdiplusEnums.h
|
||
|
*
|
||
|
* Abstract:
|
||
|
*
|
||
|
* GDI+ Enumeration Types
|
||
|
*
|
||
|
\**************************************************************************/
|
||
|
|
||
|
#define GDIPLUS_TS_QUERYVER 4122
|
||
|
#define GDIPLUS_TS_RECORD 4123
|
||
|
|
||
|
//---------------------------------------------------------------------------
|
||
|
// EMF+ Persistent object types
|
||
|
//---------------------------------------------------------------------------
|
||
|
|
||
|
enum ObjectType
|
||
|
{
|
||
|
ObjectTypeInvalid,
|
||
|
ObjectTypeBrush,
|
||
|
ObjectTypePen,
|
||
|
ObjectTypePath,
|
||
|
ObjectTypeRegion,
|
||
|
ObjectTypeImage,
|
||
|
ObjectTypeFont,
|
||
|
ObjectTypeStringFormat,
|
||
|
ObjectTypeImageAttributes,
|
||
|
ObjectTypeCustomLineCap,
|
||
|
ObjectTypeGraphics,
|
||
|
|
||
|
ObjectTypeMax = ObjectTypeGraphics,
|
||
|
ObjectTypeMin = ObjectTypeBrush
|
||
|
};
|
||
|
|
||
|
//---------------------------------------------------------------------------
|
||
|
// EMF+ Records
|
||
|
//---------------------------------------------------------------------------
|
||
|
|
||
|
// We have to change the WMF record numbers so that they don't conflict with
|
||
|
// the EMF and EMF+ record numbers.
|
||
|
|
||
|
enum EmfPlusRecordType;
|
||
|
|
||
|
#define GDIP_EMFPLUS_RECORD_BASE 0x00004000
|
||
|
#define GDIP_WMF_RECORD_BASE 0x00010000
|
||
|
#define GDIP_WMF_RECORD_TO_EMFPLUS(n) ((EmfPlusRecordType)((n) | GDIP_WMF_RECORD_BASE))
|
||
|
#define GDIP_EMFPLUS_RECORD_TO_WMF(n) ((n) & (~GDIP_WMF_RECORD_BASE))
|
||
|
#define GDIP_IS_WMF_RECORDTYPE(n) (((n) & GDIP_WMF_RECORD_BASE) != 0)
|
||
|
|
||
|
enum EmfPlusRecordType
|
||
|
{
|
||
|
// Now we start the list of EMF+ records. We leave quite
|
||
|
// a bit of room here for the addition of any new GDI
|
||
|
// records that may be added later.
|
||
|
|
||
|
EmfPlusRecordTypeInvalid = GDIP_EMFPLUS_RECORD_BASE,
|
||
|
EmfPlusRecordTypeHeader,
|
||
|
EmfPlusRecordTypeEndOfFile,
|
||
|
|
||
|
EmfPlusRecordTypeComment,
|
||
|
|
||
|
EmfPlusRecordTypeGetDC,
|
||
|
|
||
|
EmfPlusRecordTypeMultiFormatStart,
|
||
|
EmfPlusRecordTypeMultiFormatSection,
|
||
|
EmfPlusRecordTypeMultiFormatEnd,
|
||
|
|
||
|
// For all persistent objects
|
||
|
|
||
|
EmfPlusRecordTypeObject,
|
||
|
|
||
|
// Drawing Records
|
||
|
|
||
|
EmfPlusRecordTypeClear,
|
||
|
EmfPlusRecordTypeFillRects,
|
||
|
EmfPlusRecordTypeDrawRects,
|
||
|
EmfPlusRecordTypeFillPolygon,
|
||
|
EmfPlusRecordTypeDrawLines,
|
||
|
EmfPlusRecordTypeFillEllipse,
|
||
|
EmfPlusRecordTypeDrawEllipse,
|
||
|
EmfPlusRecordTypeFillPie,
|
||
|
EmfPlusRecordTypeDrawPie,
|
||
|
EmfPlusRecordTypeDrawArc,
|
||
|
EmfPlusRecordTypeFillRegion,
|
||
|
EmfPlusRecordTypeFillPath,
|
||
|
EmfPlusRecordTypeDrawPath,
|
||
|
EmfPlusRecordTypeFillClosedCurve,
|
||
|
EmfPlusRecordTypeDrawClosedCurve,
|
||
|
EmfPlusRecordTypeDrawCurve,
|
||
|
EmfPlusRecordTypeDrawBeziers,
|
||
|
EmfPlusRecordTypeDrawImage,
|
||
|
EmfPlusRecordTypeDrawImagePoints,
|
||
|
EmfPlusRecordTypeDrawString,
|
||
|
|
||
|
// Graphics State Records
|
||
|
|
||
|
EmfPlusRecordTypeSetRenderingOrigin,
|
||
|
EmfPlusRecordTypeSetAntiAliasMode,
|
||
|
EmfPlusRecordTypeSetTextRenderingHint,
|
||
|
EmfPlusRecordTypeSetTextContrast,
|
||
|
EmfPlusRecordTypeSetInterpolationMode,
|
||
|
EmfPlusRecordTypeSetPixelOffsetMode,
|
||
|
EmfPlusRecordTypeSetCompositingMode,
|
||
|
EmfPlusRecordTypeSetCompositingQuality,
|
||
|
EmfPlusRecordTypeSave,
|
||
|
EmfPlusRecordTypeRestore,
|
||
|
EmfPlusRecordTypeBeginContainer,
|
||
|
EmfPlusRecordTypeBeginContainerNoParams,
|
||
|
EmfPlusRecordTypeEndContainer,
|
||
|
EmfPlusRecordTypeSetWorldTransform,
|
||
|
EmfPlusRecordTypeResetWorldTransform,
|
||
|
EmfPlusRecordTypeMultiplyWorldTransform,
|
||
|
EmfPlusRecordTypeTranslateWorldTransform,
|
||
|
EmfPlusRecordTypeScaleWorldTransform,
|
||
|
EmfPlusRecordTypeRotateWorldTransform,
|
||
|
EmfPlusRecordTypeSetPageTransform,
|
||
|
EmfPlusRecordTypeResetClip,
|
||
|
EmfPlusRecordTypeSetClipRect,
|
||
|
EmfPlusRecordTypeSetClipPath,
|
||
|
EmfPlusRecordTypeSetClipRegion,
|
||
|
EmfPlusRecordTypeOffsetClip,
|
||
|
|
||
|
EmfPlusRecordTypeDrawDriverString,
|
||
|
|
||
|
EmfPlusRecordTypeStrokeFillPath,
|
||
|
EmfPlusRecordTypeSerializableObject,
|
||
|
EmfPlusRecordTypeSetTSGraphics, // For private use by TS
|
||
|
EmfPlusRecordTypeSetTSClip, // For private use by TS
|
||
|
|
||
|
// NOTE: New records *must* be added immediately before this line.
|
||
|
|
||
|
EmfPlusRecordTotal,
|
||
|
|
||
|
EmfPlusRecordTypeMax = EmfPlusRecordTotal-1,
|
||
|
EmfPlusRecordTypeMin = EmfPlusRecordTypeHeader,
|
||
|
};
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|