mirror of
https://github.com/ApfelTeeSaft/reactos.git
synced 2026-08-27 03:43:36 +00:00
[PSDK] Update gdiplus headers to Wine-10.0
This reverts most of the useless reformatting. Don't reformat wine headers. It only makes syncing harder.
This commit is contained in:
@@ -37,6 +37,7 @@ namespace Gdiplus
|
||||
#include "gdipluscolor.h"
|
||||
#include "gdipluscolormatrix.h"
|
||||
#include "gdiplusgpstubs.h"
|
||||
#include "gdipluseffects.h"
|
||||
|
||||
namespace DllExports
|
||||
{
|
||||
@@ -69,6 +70,7 @@ namespace Gdiplus
|
||||
#include "gdipluscolor.h"
|
||||
#include "gdipluscolormatrix.h"
|
||||
#include "gdiplusgpstubs.h"
|
||||
#include "gdipluseffects.h"
|
||||
|
||||
#include "gdiplusflat.h"
|
||||
|
||||
|
||||
@@ -302,6 +302,6 @@ typedef struct Color
|
||||
ARGB Argb;
|
||||
} Color;
|
||||
|
||||
#endif /* end of c typedefs */
|
||||
#endif /* end of c typedefs */
|
||||
|
||||
#endif /* _GDIPLUSCOLOR_H */
|
||||
#endif /* _GDIPLUSCOLOR_H */
|
||||
|
||||
@@ -26,9 +26,9 @@ struct ColorMatrix
|
||||
|
||||
enum ColorMatrixFlags
|
||||
{
|
||||
ColorMatrixFlagsDefault = 0,
|
||||
ColorMatrixFlagsSkipGrays = 1,
|
||||
ColorMatrixFlagsAltGray = 2
|
||||
ColorMatrixFlagsDefault = 0,
|
||||
ColorMatrixFlagsSkipGrays = 1,
|
||||
ColorMatrixFlagsAltGray = 2
|
||||
};
|
||||
|
||||
enum ColorAdjustType
|
||||
@@ -60,6 +60,8 @@ enum HistogramFormat
|
||||
HistogramFormatA,
|
||||
};
|
||||
|
||||
typedef BYTE ColorChannelLUT[256];
|
||||
|
||||
#ifndef __cplusplus
|
||||
|
||||
typedef enum ColorAdjustType ColorAdjustType;
|
||||
@@ -68,6 +70,6 @@ typedef enum HistogramFormat HistogramFormat;
|
||||
typedef struct ColorMatrix ColorMatrix;
|
||||
typedef struct ColorMap ColorMap;
|
||||
|
||||
#endif /* end of c typedefs */
|
||||
#endif /* end of c typedefs */
|
||||
|
||||
#endif /* _GDIPLUSCOLORMATRIX_H */
|
||||
#endif /* _GDIPLUSCOLORMATRIX_H */
|
||||
|
||||
@@ -19,6 +19,18 @@
|
||||
#ifndef _GDIPLUSEFFECTS_H
|
||||
#define _GDIPLUSEFFECTS_H
|
||||
|
||||
DEFINE_GUID(BlurEffectGuid, 0x633c80a4, 0x1843, 0x482b, 0x9e, 0xf2, 0xbe, 0x28, 0x34, 0xc5, 0xfd, 0xd4);
|
||||
DEFINE_GUID(SharpenEffectGuid, 0x63cbf3ee, 0xc526, 0x402c, 0x8f, 0x71, 0x62, 0xc5, 0x40, 0xbf, 0x51, 0x42);
|
||||
DEFINE_GUID(ColorMatrixEffectGuid, 0x718f2615, 0x7933, 0x40e3, 0xa5, 0x11, 0x5f, 0x68, 0xfe, 0x14, 0xdd, 0x74);
|
||||
DEFINE_GUID(ColorLUTEffectGuid, 0xa7ce72a9, 0x0f7f, 0x40d7, 0xb3, 0xcc, 0xd0, 0xc0, 0x2d, 0x5c, 0x32, 0x12);
|
||||
DEFINE_GUID(BrightnessContrastEffectGuid, 0xd3a1dbe1, 0x8ec4, 0x4c17, 0x9f, 0x4c, 0xea, 0x97, 0xad, 0x1c, 0x34, 0x3d);
|
||||
DEFINE_GUID(HueSaturationLightnessEffectGuid, 0x8b2dd6c3, 0xeb07, 0x4d87, 0xa5, 0xf0, 0x71, 0x08, 0xe2, 0x6a, 0x9c, 0x5f);
|
||||
DEFINE_GUID(LevelsEffectGuid, 0x99c354ec, 0x2a31, 0x4f3a, 0x8c, 0x34, 0x17, 0xa8, 0x03, 0xb3, 0x3a, 0x25);
|
||||
DEFINE_GUID(TintEffectGuid, 0x1077af00, 0x2848, 0x4441, 0x94, 0x89, 0x44, 0xad, 0x4c, 0x2d, 0x7a, 0x2c);
|
||||
DEFINE_GUID(ColorBalanceEffectGuid, 0x537e597d, 0x251e, 0x48da, 0x96, 0x64, 0x29, 0xca, 0x49, 0x6b, 0x70, 0xf8);
|
||||
DEFINE_GUID(RedEyeCorrectionEffectGuid, 0x74d29d05, 0x69a4, 0x4266, 0x95, 0x49, 0x3c, 0xc5, 0x28, 0x36, 0xb6, 0x32);
|
||||
DEFINE_GUID(ColorCurveEffectGuid, 0xdd6a0022, 0x58e4, 0x4a67, 0x9d, 0x9b, 0xd4, 0x8e, 0xb8, 0x81, 0xa5, 0x3d);
|
||||
|
||||
typedef enum CurveAdjustments
|
||||
{
|
||||
AdjustExposure = 0,
|
||||
@@ -105,6 +117,7 @@ typedef struct TintParams
|
||||
INT amount;
|
||||
} TintParams;
|
||||
|
||||
#ifdef __cplusplus
|
||||
class Effect
|
||||
{
|
||||
public:
|
||||
@@ -335,5 +348,6 @@ class Tint : Effect
|
||||
return NotImplemented;
|
||||
}
|
||||
};
|
||||
#endif // __cplusplus
|
||||
|
||||
#endif /* _GDIPLUSEFFECTS_H */
|
||||
|
||||
+233
-195
@@ -24,104 +24,103 @@ typedef UINT GraphicsContainer;
|
||||
|
||||
enum Unit
|
||||
{
|
||||
UnitWorld = 0,
|
||||
UnitDisplay = 1,
|
||||
UnitPixel = 2,
|
||||
UnitPoint = 3,
|
||||
UnitInch = 4,
|
||||
UnitDocument = 5,
|
||||
UnitMillimeter = 6
|
||||
UnitWorld = 0,
|
||||
UnitDisplay = 1,
|
||||
UnitPixel = 2,
|
||||
UnitPoint = 3,
|
||||
UnitInch = 4,
|
||||
UnitDocument = 5,
|
||||
UnitMillimeter = 6
|
||||
};
|
||||
|
||||
enum BrushType
|
||||
{
|
||||
BrushTypeSolidColor = 0,
|
||||
BrushTypeHatchFill = 1,
|
||||
BrushTypeTextureFill = 2,
|
||||
BrushTypePathGradient = 3,
|
||||
BrushTypeLinearGradient = 4
|
||||
BrushTypeSolidColor = 0,
|
||||
BrushTypeHatchFill = 1,
|
||||
BrushTypeTextureFill = 2,
|
||||
BrushTypePathGradient = 3,
|
||||
BrushTypeLinearGradient = 4
|
||||
};
|
||||
|
||||
enum DriverStringOptions
|
||||
{
|
||||
DriverStringOptionsCmapLookup = 1,
|
||||
DriverStringOptionsVertical = 2,
|
||||
DriverStringOptionsRealizedAdvance = 4,
|
||||
DriverStringOptionsLimitSubpixel = 8
|
||||
DriverStringOptionsCmapLookup = 1,
|
||||
DriverStringOptionsVertical = 2,
|
||||
DriverStringOptionsRealizedAdvance = 4,
|
||||
DriverStringOptionsLimitSubpixel = 8
|
||||
};
|
||||
|
||||
enum FillMode
|
||||
{
|
||||
FillModeAlternate = 0,
|
||||
FillModeWinding = 1
|
||||
FillModeAlternate = 0,
|
||||
FillModeWinding = 1
|
||||
};
|
||||
|
||||
enum LineCap
|
||||
{
|
||||
LineCapFlat = 0x00,
|
||||
LineCapSquare = 0x01,
|
||||
LineCapRound = 0x02,
|
||||
LineCapTriangle = 0x03,
|
||||
LineCapFlat = 0x00,
|
||||
LineCapSquare = 0x01,
|
||||
LineCapRound = 0x02,
|
||||
LineCapTriangle = 0x03,
|
||||
|
||||
LineCapNoAnchor = 0x10,
|
||||
LineCapSquareAnchor = 0x11,
|
||||
LineCapRoundAnchor = 0x12,
|
||||
LineCapDiamondAnchor = 0x13,
|
||||
LineCapArrowAnchor = 0x14,
|
||||
LineCapNoAnchor = 0x10,
|
||||
LineCapSquareAnchor = 0x11,
|
||||
LineCapRoundAnchor = 0x12,
|
||||
LineCapDiamondAnchor = 0x13,
|
||||
LineCapArrowAnchor = 0x14,
|
||||
|
||||
LineCapCustom = 0xff,
|
||||
LineCapAnchorMask = 0xf0
|
||||
LineCapCustom = 0xff,
|
||||
LineCapAnchorMask = 0xf0
|
||||
};
|
||||
|
||||
enum CustomLineCapType
|
||||
{
|
||||
CustomLineCapTypeDefault = 0,
|
||||
CustomLineCapTypeDefault = 0,
|
||||
CustomLineCapTypeAdjustableArrow = 1
|
||||
};
|
||||
|
||||
enum PathPointType
|
||||
{
|
||||
PathPointTypeStart = 0, /* start of a figure */
|
||||
PathPointTypeLine = 1,
|
||||
PathPointTypeBezier = 3,
|
||||
PathPointTypePathTypeMask = 7,
|
||||
PathPointTypePathDashMode = 16, /* not used */
|
||||
PathPointTypePathMarker = 32,
|
||||
PathPointTypeCloseSubpath = 128, /* end of a closed figure */
|
||||
PathPointTypeBezier3 = 3
|
||||
enum PathPointType{
|
||||
PathPointTypeStart = 0, /* start of a figure */
|
||||
PathPointTypeLine = 1,
|
||||
PathPointTypeBezier = 3,
|
||||
PathPointTypePathTypeMask = 7,
|
||||
PathPointTypePathDashMode = 16, /* not used */
|
||||
PathPointTypePathMarker = 32,
|
||||
PathPointTypeCloseSubpath = 128, /* end of a closed figure */
|
||||
PathPointTypeBezier3 = 3
|
||||
};
|
||||
|
||||
enum PenType
|
||||
{
|
||||
PenTypeSolidColor = BrushTypeSolidColor,
|
||||
PenTypeHatchFill = BrushTypeHatchFill,
|
||||
PenTypeTextureFill = BrushTypeTextureFill,
|
||||
PenTypePathGradient = BrushTypePathGradient,
|
||||
PenTypeLinearGradient = BrushTypeLinearGradient,
|
||||
PenTypeUnknown = -1
|
||||
PenTypeSolidColor = BrushTypeSolidColor,
|
||||
PenTypeHatchFill = BrushTypeHatchFill,
|
||||
PenTypeTextureFill = BrushTypeTextureFill,
|
||||
PenTypePathGradient = BrushTypePathGradient,
|
||||
PenTypeLinearGradient = BrushTypeLinearGradient,
|
||||
PenTypeUnknown = -1
|
||||
};
|
||||
|
||||
enum LineJoin
|
||||
{
|
||||
LineJoinMiter = 0,
|
||||
LineJoinBevel = 1,
|
||||
LineJoinRound = 2,
|
||||
LineJoinMiterClipped = 3
|
||||
LineJoinMiter = 0,
|
||||
LineJoinBevel = 1,
|
||||
LineJoinRound = 2,
|
||||
LineJoinMiterClipped = 3
|
||||
};
|
||||
|
||||
enum QualityMode
|
||||
{
|
||||
QualityModeInvalid = -1,
|
||||
QualityModeDefault = 0,
|
||||
QualityModeLow = 1,
|
||||
QualityModeHigh = 2
|
||||
QualityModeInvalid = -1,
|
||||
QualityModeDefault = 0,
|
||||
QualityModeLow = 1,
|
||||
QualityModeHigh = 2
|
||||
};
|
||||
|
||||
enum SmoothingMode
|
||||
{
|
||||
SmoothingModeInvalid = QualityModeInvalid,
|
||||
SmoothingModeDefault = QualityModeDefault,
|
||||
SmoothingModeHighSpeed = QualityModeLow,
|
||||
SmoothingModeInvalid = QualityModeInvalid,
|
||||
SmoothingModeDefault = QualityModeDefault,
|
||||
SmoothingModeHighSpeed = QualityModeLow,
|
||||
SmoothingModeHighQuality = QualityModeHigh,
|
||||
SmoothingModeNone,
|
||||
SmoothingModeAntiAlias
|
||||
@@ -129,20 +128,20 @@ enum SmoothingMode
|
||||
|
||||
enum CompositingQuality
|
||||
{
|
||||
CompositingQualityInvalid = QualityModeInvalid,
|
||||
CompositingQualityDefault = QualityModeDefault,
|
||||
CompositingQualityHighSpeed = QualityModeLow,
|
||||
CompositingQualityHighQuality = QualityModeHigh,
|
||||
CompositingQualityInvalid = QualityModeInvalid,
|
||||
CompositingQualityDefault = QualityModeDefault,
|
||||
CompositingQualityHighSpeed = QualityModeLow,
|
||||
CompositingQualityHighQuality = QualityModeHigh,
|
||||
CompositingQualityGammaCorrected,
|
||||
CompositingQualityAssumeLinear
|
||||
};
|
||||
|
||||
enum InterpolationMode
|
||||
{
|
||||
InterpolationModeInvalid = QualityModeInvalid,
|
||||
InterpolationModeDefault = QualityModeDefault,
|
||||
InterpolationModeLowQuality = QualityModeLow,
|
||||
InterpolationModeHighQuality = QualityModeHigh,
|
||||
InterpolationModeInvalid = QualityModeInvalid,
|
||||
InterpolationModeDefault = QualityModeDefault,
|
||||
InterpolationModeLowQuality = QualityModeLow,
|
||||
InterpolationModeHighQuality = QualityModeHigh,
|
||||
InterpolationModeBilinear,
|
||||
InterpolationModeBicubic,
|
||||
InterpolationModeNearestNeighbor,
|
||||
@@ -152,15 +151,15 @@ enum InterpolationMode
|
||||
|
||||
enum PenAlignment
|
||||
{
|
||||
PenAlignmentCenter = 0,
|
||||
PenAlignmentInset = 1
|
||||
PenAlignmentCenter = 0,
|
||||
PenAlignmentInset = 1
|
||||
};
|
||||
|
||||
enum PixelOffsetMode
|
||||
{
|
||||
PixelOffsetModeInvalid = QualityModeInvalid,
|
||||
PixelOffsetModeDefault = QualityModeDefault,
|
||||
PixelOffsetModeHighSpeed = QualityModeLow,
|
||||
PixelOffsetModeInvalid = QualityModeInvalid,
|
||||
PixelOffsetModeDefault = QualityModeDefault,
|
||||
PixelOffsetModeHighSpeed = QualityModeLow,
|
||||
PixelOffsetModeHighQuality = QualityModeHigh,
|
||||
PixelOffsetModeNone,
|
||||
PixelOffsetModeHalf
|
||||
@@ -168,8 +167,8 @@ enum PixelOffsetMode
|
||||
|
||||
enum DashCap
|
||||
{
|
||||
DashCapFlat = 0,
|
||||
DashCapRound = 2,
|
||||
DashCapFlat = 0,
|
||||
DashCapRound = 2,
|
||||
DashCapTriangle = 3
|
||||
};
|
||||
|
||||
@@ -186,7 +185,7 @@ enum DashStyle
|
||||
enum MatrixOrder
|
||||
{
|
||||
MatrixOrderPrepend = 0,
|
||||
MatrixOrderAppend = 1
|
||||
MatrixOrderAppend = 1
|
||||
};
|
||||
|
||||
enum ImageType
|
||||
@@ -196,8 +195,7 @@ enum ImageType
|
||||
ImageTypeMetafile
|
||||
};
|
||||
|
||||
enum WarpMode
|
||||
{
|
||||
enum WarpMode {
|
||||
WarpModePerspective,
|
||||
WarpModeBilinear
|
||||
};
|
||||
@@ -231,7 +229,7 @@ enum LinearGradientMode
|
||||
|
||||
enum EmfType
|
||||
{
|
||||
EmfTypeEmfOnly = MetafileTypeEmf,
|
||||
EmfTypeEmfOnly = MetafileTypeEmf,
|
||||
EmfTypeEmfPlusOnly = MetafileTypeEmfPlusOnly,
|
||||
EmfTypeEmfPlusDual = MetafileTypeEmfPlusDual
|
||||
};
|
||||
@@ -262,88 +260,127 @@ enum TextRenderingHint
|
||||
|
||||
enum StringAlignment
|
||||
{
|
||||
StringAlignmentNear = 0,
|
||||
StringAlignmentCenter = 1,
|
||||
StringAlignmentFar = 2
|
||||
StringAlignmentNear = 0,
|
||||
StringAlignmentCenter = 1,
|
||||
StringAlignmentFar = 2
|
||||
};
|
||||
|
||||
enum StringDigitSubstitute
|
||||
enum StringDigitSubstitute
|
||||
{
|
||||
StringDigitSubstituteUser = 0,
|
||||
StringDigitSubstituteNone = 1,
|
||||
StringDigitSubstituteNational = 2,
|
||||
StringDigitSubstituteUser = 0,
|
||||
StringDigitSubstituteNone = 1,
|
||||
StringDigitSubstituteNational = 2,
|
||||
StringDigitSubstituteTraditional = 3
|
||||
};
|
||||
|
||||
enum StringFormatFlags
|
||||
{
|
||||
StringFormatFlagsDirectionRightToLeft = 0x00000001,
|
||||
StringFormatFlagsDirectionVertical = 0x00000002,
|
||||
StringFormatFlagsNoFitBlackBox = 0x00000004,
|
||||
StringFormatFlagsDisplayFormatControl = 0x00000020,
|
||||
StringFormatFlagsNoFontFallback = 0x00000400,
|
||||
StringFormatFlagsDirectionRightToLeft = 0x00000001,
|
||||
StringFormatFlagsDirectionVertical = 0x00000002,
|
||||
StringFormatFlagsNoFitBlackBox = 0x00000004,
|
||||
StringFormatFlagsDisplayFormatControl = 0x00000020,
|
||||
StringFormatFlagsNoFontFallback = 0x00000400,
|
||||
StringFormatFlagsMeasureTrailingSpaces = 0x00000800,
|
||||
StringFormatFlagsNoWrap = 0x00001000,
|
||||
StringFormatFlagsLineLimit = 0x00002000,
|
||||
StringFormatFlagsNoClip = 0x00004000
|
||||
StringFormatFlagsNoWrap = 0x00001000,
|
||||
StringFormatFlagsLineLimit = 0x00002000,
|
||||
StringFormatFlagsNoClip = 0x00004000
|
||||
};
|
||||
|
||||
enum StringTrimming
|
||||
{
|
||||
StringTrimmingNone = 0,
|
||||
StringTrimmingCharacter = 1,
|
||||
StringTrimmingWord = 2,
|
||||
StringTrimmingEllipsisCharacter = 3,
|
||||
StringTrimmingEllipsisWord = 4,
|
||||
StringTrimmingEllipsisPath = 5
|
||||
StringTrimmingNone = 0,
|
||||
StringTrimmingCharacter = 1,
|
||||
StringTrimmingWord = 2,
|
||||
StringTrimmingEllipsisCharacter = 3,
|
||||
StringTrimmingEllipsisWord = 4,
|
||||
StringTrimmingEllipsisPath = 5
|
||||
};
|
||||
|
||||
enum FontStyle
|
||||
{
|
||||
FontStyleRegular = 0,
|
||||
FontStyleBold = 1,
|
||||
FontStyleItalic = 2,
|
||||
FontStyleRegular = 0,
|
||||
FontStyleBold = 1,
|
||||
FontStyleItalic = 2,
|
||||
FontStyleBoldItalic = 3,
|
||||
FontStyleUnderline = 4,
|
||||
FontStyleStrikeout = 8
|
||||
FontStyleUnderline = 4,
|
||||
FontStyleStrikeout = 8
|
||||
};
|
||||
|
||||
enum HotkeyPrefix
|
||||
{
|
||||
HotkeyPrefixNone = 0,
|
||||
HotkeyPrefixShow = 1,
|
||||
HotkeyPrefixHide = 2
|
||||
HotkeyPrefixNone = 0,
|
||||
HotkeyPrefixShow = 1,
|
||||
HotkeyPrefixHide = 2
|
||||
};
|
||||
|
||||
enum ImageCodecFlags
|
||||
{
|
||||
ImageCodecFlagsEncoder = 1,
|
||||
ImageCodecFlagsDecoder = 2,
|
||||
ImageCodecFlagsSupportBitmap = 4,
|
||||
ImageCodecFlagsSupportVector = 8,
|
||||
ImageCodecFlagsSeekableEncode = 16,
|
||||
ImageCodecFlagsBlockingDecode = 32,
|
||||
ImageCodecFlagsBuiltin = 65536,
|
||||
ImageCodecFlagsSystem = 131072,
|
||||
ImageCodecFlagsUser = 262144
|
||||
ImageCodecFlagsEncoder = 1,
|
||||
ImageCodecFlagsDecoder = 2,
|
||||
ImageCodecFlagsSupportBitmap = 4,
|
||||
ImageCodecFlagsSupportVector = 8,
|
||||
ImageCodecFlagsSeekableEncode = 16,
|
||||
ImageCodecFlagsBlockingDecode = 32,
|
||||
ImageCodecFlagsBuiltin = 65536,
|
||||
ImageCodecFlagsSystem = 131072,
|
||||
ImageCodecFlagsUser = 262144
|
||||
};
|
||||
|
||||
enum ImageFlags
|
||||
{
|
||||
ImageFlagsNone = 0,
|
||||
ImageFlagsScalable = 0x0001,
|
||||
ImageFlagsHasAlpha = 0x0002,
|
||||
ImageFlagsHasTranslucent = 0x0004,
|
||||
ImageFlagsNone = 0,
|
||||
ImageFlagsScalable = 0x0001,
|
||||
ImageFlagsHasAlpha = 0x0002,
|
||||
ImageFlagsHasTranslucent = 0x0004,
|
||||
ImageFlagsPartiallyScalable = 0x0008,
|
||||
ImageFlagsColorSpaceRGB = 0x0010,
|
||||
ImageFlagsColorSpaceCMYK = 0x0020,
|
||||
ImageFlagsColorSpaceGRAY = 0x0040,
|
||||
ImageFlagsColorSpaceYCBCR = 0x0080,
|
||||
ImageFlagsColorSpaceYCCK = 0x0100,
|
||||
ImageFlagsHasRealDPI = 0x1000,
|
||||
ImageFlagsHasRealPixelSize = 0x2000,
|
||||
ImageFlagsReadOnly = 0x00010000,
|
||||
ImageFlagsCaching = 0x00020000
|
||||
ImageFlagsColorSpaceRGB = 0x0010,
|
||||
ImageFlagsColorSpaceCMYK = 0x0020,
|
||||
ImageFlagsColorSpaceGRAY = 0x0040,
|
||||
ImageFlagsColorSpaceYCBCR = 0x0080,
|
||||
ImageFlagsColorSpaceYCCK = 0x0100,
|
||||
ImageFlagsHasRealDPI = 0x1000,
|
||||
ImageFlagsHasRealPixelSize = 0x2000,
|
||||
ImageFlagsReadOnly = 0x00010000,
|
||||
ImageFlagsCaching = 0x00020000
|
||||
};
|
||||
|
||||
enum EncoderParameterValueType {
|
||||
EncoderParameterValueTypeByte = 1,
|
||||
EncoderParameterValueTypeASCII = 2,
|
||||
EncoderParameterValueTypeShort = 3,
|
||||
EncoderParameterValueTypeLong = 4,
|
||||
EncoderParameterValueTypeRational = 5,
|
||||
EncoderParameterValueTypeLongRange = 6,
|
||||
EncoderParameterValueTypeUndefined = 7,
|
||||
EncoderParameterValueTypeRationalRange = 8,
|
||||
EncoderParameterValueTypePointer = 9
|
||||
};
|
||||
|
||||
enum EncoderValue {
|
||||
EncoderValueColorTypeCMYK = 0,
|
||||
EncoderValueColorTypeYCCK = 1,
|
||||
EncoderValueCompressionLZW = 2,
|
||||
EncoderValueCompressionCCITT3 = 3,
|
||||
EncoderValueCompressionCCITT4 = 4,
|
||||
EncoderValueCompressionRle = 5,
|
||||
EncoderValueCompressionNone = 6,
|
||||
EncoderValueScanMethodInterlaced = 7,
|
||||
EncoderValueScanMethodNonInterlaced = 8,
|
||||
EncoderValueVersionGif87 = 9,
|
||||
EncoderValueVersionGif89 = 10,
|
||||
EncoderValueRenderProgressive = 11,
|
||||
EncoderValueRenderNonProgressive = 12,
|
||||
EncoderValueTransformRotate90 = 13,
|
||||
EncoderValueTransformRotate180 = 14,
|
||||
EncoderValueTransformRotate270 = 15,
|
||||
EncoderValueTransformFlipHorizontal = 16,
|
||||
EncoderValueTransformFlipVertical = 17,
|
||||
EncoderValueMultiFrame = 18,
|
||||
EncoderValueLastFrame = 19,
|
||||
EncoderValueFlush = 20,
|
||||
EncoderValueFrameDimensionTime = 21,
|
||||
EncoderValueFrameDimensionResolution = 22,
|
||||
EncoderValueFrameDimensionPage = 23
|
||||
};
|
||||
|
||||
enum CombineMode
|
||||
@@ -359,7 +396,7 @@ enum CombineMode
|
||||
enum FlushIntention
|
||||
{
|
||||
FlushIntentionFlush = 0,
|
||||
FlushIntentionSync = 1
|
||||
FlushIntentionSync = 1
|
||||
};
|
||||
|
||||
enum CoordinateSpace
|
||||
@@ -371,88 +408,87 @@ enum CoordinateSpace
|
||||
|
||||
enum GpTestControlEnum
|
||||
{
|
||||
TestControlForceBilinear = 0,
|
||||
TestControlNoICM = 1,
|
||||
TestControlForceBilinear = 0,
|
||||
TestControlNoICM = 1,
|
||||
TestControlGetBuildNumber = 2
|
||||
};
|
||||
|
||||
enum MetafileFrameUnit
|
||||
{
|
||||
MetafileFrameUnitPixel = UnitPixel,
|
||||
MetafileFrameUnitPoint = UnitPoint,
|
||||
MetafileFrameUnitInch = UnitInch,
|
||||
MetafileFrameUnitDocument = UnitDocument,
|
||||
MetafileFrameUnitPixel = UnitPixel,
|
||||
MetafileFrameUnitPoint = UnitPoint,
|
||||
MetafileFrameUnitInch = UnitInch,
|
||||
MetafileFrameUnitDocument = UnitDocument,
|
||||
MetafileFrameUnitMillimeter = UnitMillimeter,
|
||||
MetafileFrameUnitGdi
|
||||
};
|
||||
|
||||
enum HatchStyle
|
||||
{
|
||||
HatchStyleHorizontal = 0,
|
||||
HatchStyleVertical = 1,
|
||||
HatchStyleForwardDiagonal = 2,
|
||||
HatchStyleBackwardDiagonal = 3,
|
||||
HatchStyleCross = 4,
|
||||
HatchStyleDiagonalCross = 5,
|
||||
HatchStyle05Percent = 6,
|
||||
HatchStyle10Percent = 7,
|
||||
HatchStyle20Percent = 8,
|
||||
HatchStyle25Percent = 9,
|
||||
HatchStyle30Percent = 10,
|
||||
HatchStyle40Percent = 11,
|
||||
HatchStyle50Percent = 12,
|
||||
HatchStyle60Percent = 13,
|
||||
HatchStyle70Percent = 14,
|
||||
HatchStyle75Percent = 15,
|
||||
HatchStyle80Percent = 16,
|
||||
HatchStyle90Percent = 17,
|
||||
HatchStyleLightDownwardDiagonal = 18,
|
||||
HatchStyleLightUpwardDiagonal = 19,
|
||||
HatchStyleDarkDownwardDiagonal = 20,
|
||||
HatchStyleDarkUpwardDiagonal = 21,
|
||||
HatchStyleWideDownwardDiagonal = 22,
|
||||
HatchStyleWideUpwardDiagonal = 23,
|
||||
HatchStyleLightVertical = 24,
|
||||
HatchStyleLightHorizontal = 25,
|
||||
HatchStyleNarrowVertical = 26,
|
||||
HatchStyleNarrowHorizontal = 27,
|
||||
HatchStyleDarkVertical = 28,
|
||||
HatchStyleDarkHorizontal = 29,
|
||||
HatchStyleDashedDownwardDiagonal = 30,
|
||||
HatchStyleDashedUpwardDiagonal = 31,
|
||||
HatchStyleDashedHorizontal = 32,
|
||||
HatchStyleDashedVertical = 33,
|
||||
HatchStyleSmallConfetti = 34,
|
||||
HatchStyleLargeConfetti = 35,
|
||||
HatchStyleZigZag = 36,
|
||||
HatchStyleWave = 37,
|
||||
HatchStyleDiagonalBrick = 38,
|
||||
HatchStyleHorizontalBrick = 39,
|
||||
HatchStyleWeave = 40,
|
||||
HatchStylePlaid = 41,
|
||||
HatchStyleDivot = 42,
|
||||
HatchStyleDottedGrid = 43,
|
||||
HatchStyleDottedDiamond = 44,
|
||||
HatchStyleShingle = 45,
|
||||
HatchStyleTrellis = 46,
|
||||
HatchStyleSphere = 47,
|
||||
HatchStyleSmallGrid = 48,
|
||||
HatchStyleSmallCheckerBoard = 49,
|
||||
HatchStyleLargeCheckerBoard = 50,
|
||||
HatchStyleOutlinedDiamond = 51,
|
||||
HatchStyleSolidDiamond = 52,
|
||||
HatchStyleTotal = 53,
|
||||
HatchStyleLargeGrid = HatchStyleCross,
|
||||
HatchStyleMin = HatchStyleHorizontal,
|
||||
HatchStyleMax = HatchStyleTotal - 1
|
||||
HatchStyleHorizontal = 0,
|
||||
HatchStyleVertical = 1,
|
||||
HatchStyleForwardDiagonal = 2,
|
||||
HatchStyleBackwardDiagonal = 3,
|
||||
HatchStyleCross = 4,
|
||||
HatchStyleDiagonalCross = 5,
|
||||
HatchStyle05Percent = 6,
|
||||
HatchStyle10Percent = 7,
|
||||
HatchStyle20Percent = 8,
|
||||
HatchStyle25Percent = 9,
|
||||
HatchStyle30Percent = 10,
|
||||
HatchStyle40Percent = 11,
|
||||
HatchStyle50Percent = 12,
|
||||
HatchStyle60Percent = 13,
|
||||
HatchStyle70Percent = 14,
|
||||
HatchStyle75Percent = 15,
|
||||
HatchStyle80Percent = 16,
|
||||
HatchStyle90Percent = 17,
|
||||
HatchStyleLightDownwardDiagonal = 18,
|
||||
HatchStyleLightUpwardDiagonal = 19,
|
||||
HatchStyleDarkDownwardDiagonal = 20,
|
||||
HatchStyleDarkUpwardDiagonal = 21,
|
||||
HatchStyleWideDownwardDiagonal = 22,
|
||||
HatchStyleWideUpwardDiagonal = 23,
|
||||
HatchStyleLightVertical = 24,
|
||||
HatchStyleLightHorizontal = 25,
|
||||
HatchStyleNarrowVertical = 26,
|
||||
HatchStyleNarrowHorizontal = 27,
|
||||
HatchStyleDarkVertical = 28,
|
||||
HatchStyleDarkHorizontal = 29,
|
||||
HatchStyleDashedDownwardDiagonal = 30,
|
||||
HatchStyleDashedUpwardDiagonal = 31,
|
||||
HatchStyleDashedHorizontal = 32,
|
||||
HatchStyleDashedVertical = 33,
|
||||
HatchStyleSmallConfetti = 34,
|
||||
HatchStyleLargeConfetti = 35,
|
||||
HatchStyleZigZag = 36,
|
||||
HatchStyleWave = 37,
|
||||
HatchStyleDiagonalBrick = 38,
|
||||
HatchStyleHorizontalBrick = 39,
|
||||
HatchStyleWeave = 40,
|
||||
HatchStylePlaid = 41,
|
||||
HatchStyleDivot = 42,
|
||||
HatchStyleDottedGrid = 43,
|
||||
HatchStyleDottedDiamond = 44,
|
||||
HatchStyleShingle = 45,
|
||||
HatchStyleTrellis = 46,
|
||||
HatchStyleSphere = 47,
|
||||
HatchStyleSmallGrid = 48,
|
||||
HatchStyleSmallCheckerBoard = 49,
|
||||
HatchStyleLargeCheckerBoard = 50,
|
||||
HatchStyleOutlinedDiamond = 51,
|
||||
HatchStyleSolidDiamond = 52,
|
||||
HatchStyleTotal = 53,
|
||||
HatchStyleLargeGrid = HatchStyleCross,
|
||||
HatchStyleMin = HatchStyleHorizontal,
|
||||
HatchStyleMax = HatchStyleTotal - 1
|
||||
};
|
||||
|
||||
#define GDIP_EMFPLUS_RECORD_BASE 0x00004000
|
||||
#define GDIP_WMF_RECORD_BASE 0x00010000
|
||||
#define GDIP_WMF_RECORD_TO_EMFPLUS(x) ((x) | GDIP_WMF_RECORD_BASE)
|
||||
#define GDIP_WMF_RECORD_TO_EMFPLUS(x) ((x)|GDIP_WMF_RECORD_BASE)
|
||||
|
||||
enum EmfPlusRecordType
|
||||
{
|
||||
enum EmfPlusRecordType {
|
||||
WmfRecordTypeSetBkColor = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETBKCOLOR),
|
||||
WmfRecordTypeSetBkMode = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETBKMODE),
|
||||
WmfRecordTypeSetMapMode = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETMAPMODE),
|
||||
@@ -716,7 +752,7 @@ enum EmfPlusRecordType
|
||||
EmfPlusRecordTypeSetTSGraphics,
|
||||
EmfPlusRecordTypeSetTSClip,
|
||||
EmfPlusRecordTotal,
|
||||
EmfPlusRecordTypeMax = EmfPlusRecordTotal - 1,
|
||||
EmfPlusRecordTypeMax = EmfPlusRecordTotal-1,
|
||||
EmfPlusRecordTypeMin = EmfPlusRecordTypeHeader
|
||||
};
|
||||
|
||||
@@ -758,6 +794,8 @@ typedef enum HotkeyPrefix HotkeyPrefix;
|
||||
typedef enum PenAlignment PenAlignment;
|
||||
typedef enum PaletteFlags PaletteFlags;
|
||||
typedef enum ImageCodecFlags ImageCodecFlags;
|
||||
typedef enum EncoderParameterValueType EncoderParameterValueType;
|
||||
typedef enum EncoderValue EncoderValue;
|
||||
typedef enum CombineMode CombineMode;
|
||||
typedef enum FlushIntention FlushIntention;
|
||||
typedef enum CoordinateSpace CoordinateSpace;
|
||||
|
||||
+724
-1418
File diff suppressed because it is too large
Load Diff
+295
-293
@@ -21,119 +21,121 @@
|
||||
|
||||
DEFINE_GUID(ImageFormatUndefined, 0xb96b3ca9, 0x728, 0x11d3, 0x9d, 0x7b, 0, 0, 0xf8, 0x1e, 0xf3, 0x2e);
|
||||
DEFINE_GUID(ImageFormatMemoryBMP, 0xb96b3caa, 0x728, 0x11d3, 0x9d, 0x7b, 0, 0, 0xf8, 0x1e, 0xf3, 0x2e);
|
||||
DEFINE_GUID(ImageFormatBMP, 0xb96b3cab, 0x728, 0x11d3, 0x9d, 0x7b, 0, 0, 0xf8, 0x1e, 0xf3, 0x2e);
|
||||
DEFINE_GUID(ImageFormatEMF, 0xb96b3cac, 0x728, 0x11d3, 0x9d, 0x7b, 0, 0, 0xf8, 0x1e, 0xf3, 0x2e);
|
||||
DEFINE_GUID(ImageFormatWMF, 0xb96b3cad, 0x728, 0x11d3, 0x9d, 0x7b, 0, 0, 0xf8, 0x1e, 0xf3, 0x2e);
|
||||
DEFINE_GUID(ImageFormatJPEG, 0xb96b3cae, 0x728, 0x11d3, 0x9d, 0x7b, 0, 0, 0xf8, 0x1e, 0xf3, 0x2e);
|
||||
DEFINE_GUID(ImageFormatPNG, 0xb96b3caf, 0x728, 0x11d3, 0x9d, 0x7b, 0, 0, 0xf8, 0x1e, 0xf3, 0x2e);
|
||||
DEFINE_GUID(ImageFormatGIF, 0xb96b3cb0, 0x728, 0x11d3, 0x9d, 0x7b, 0, 0, 0xf8, 0x1e, 0xf3, 0x2e);
|
||||
DEFINE_GUID(ImageFormatTIFF, 0xb96b3cb1, 0x728, 0x11d3, 0x9d, 0x7b, 0, 0, 0xf8, 0x1e, 0xf3, 0x2e);
|
||||
DEFINE_GUID(ImageFormatEXIF, 0xb96b3cb2, 0x728, 0x11d3, 0x9d, 0x7b, 0, 0, 0xf8, 0x1e, 0xf3, 0x2e);
|
||||
DEFINE_GUID(ImageFormatIcon, 0xb96b3cb5, 0x728, 0x11d3, 0x9d, 0x7b, 0, 0, 0xf8, 0x1e, 0xf3, 0x2e);
|
||||
DEFINE_GUID(ImageFormatBMP, 0xb96b3cab, 0x728, 0x11d3, 0x9d, 0x7b, 0, 0, 0xf8, 0x1e, 0xf3, 0x2e);
|
||||
DEFINE_GUID(ImageFormatEMF, 0xb96b3cac, 0x728, 0x11d3, 0x9d, 0x7b, 0, 0, 0xf8, 0x1e, 0xf3, 0x2e);
|
||||
DEFINE_GUID(ImageFormatWMF, 0xb96b3cad, 0x728, 0x11d3, 0x9d, 0x7b, 0, 0, 0xf8, 0x1e, 0xf3, 0x2e);
|
||||
DEFINE_GUID(ImageFormatJPEG, 0xb96b3cae, 0x728, 0x11d3, 0x9d, 0x7b, 0, 0, 0xf8, 0x1e, 0xf3, 0x2e);
|
||||
DEFINE_GUID(ImageFormatPNG, 0xb96b3caf, 0x728, 0x11d3, 0x9d, 0x7b, 0, 0, 0xf8, 0x1e, 0xf3, 0x2e);
|
||||
DEFINE_GUID(ImageFormatGIF, 0xb96b3cb0, 0x728, 0x11d3, 0x9d, 0x7b, 0, 0, 0xf8, 0x1e, 0xf3, 0x2e);
|
||||
DEFINE_GUID(ImageFormatTIFF, 0xb96b3cb1, 0x728, 0x11d3, 0x9d, 0x7b, 0, 0, 0xf8, 0x1e, 0xf3, 0x2e);
|
||||
DEFINE_GUID(ImageFormatEXIF, 0xb96b3cb2, 0x728, 0x11d3, 0x9d, 0x7b, 0, 0, 0xf8, 0x1e, 0xf3, 0x2e);
|
||||
DEFINE_GUID(ImageFormatIcon, 0xb96b3cb5, 0x728, 0x11d3, 0x9d, 0x7b, 0, 0, 0xf8, 0x1e, 0xf3, 0x2e);
|
||||
|
||||
DEFINE_GUID(FrameDimensionTime, 0x6aedbd6d, 0x3fb5, 0x418a, 0x83, 0xa6, 0x7f, 0x45, 0x22, 0x9d, 0xc8, 0x72);
|
||||
DEFINE_GUID(FrameDimensionPage, 0x7462dc86, 0x6180, 0x4c7e, 0x8e, 0x3f, 0xee, 0x73, 0x33, 0xa7, 0xa4, 0x83);
|
||||
DEFINE_GUID(FrameDimensionTime, 0x6aedbd6d, 0x3fb5, 0x418a, 0x83, 0xa6, 0x7f, 0x45, 0x22, 0x9d, 0xc8, 0x72);
|
||||
DEFINE_GUID(FrameDimensionPage, 0x7462dc86, 0x6180, 0x4c7e, 0x8e, 0x3f, 0xee, 0x73, 0x33, 0xa7, 0xa4, 0x83);
|
||||
DEFINE_GUID(FrameDimensionResolution, 0x84236f7b, 0x3bd3, 0x428f, 0x8d, 0xab, 0x4e, 0xa1, 0x43, 0x9c, 0xa3, 0x15);
|
||||
|
||||
DEFINE_GUID(EncoderSaveFlag, 0x292266fc, 0xac40, 0x47bf, 0x8c, 0xfc, 0xa8, 0x5b, 0x89, 0xa6, 0x55, 0xde);
|
||||
|
||||
enum ImageLockMode
|
||||
{
|
||||
ImageLockModeRead = 1,
|
||||
ImageLockModeWrite = 2,
|
||||
ImageLockModeUserInputBuf = 4
|
||||
ImageLockModeRead = 1,
|
||||
ImageLockModeWrite = 2,
|
||||
ImageLockModeUserInputBuf = 4
|
||||
};
|
||||
|
||||
enum RotateFlipType
|
||||
{
|
||||
RotateNoneFlipNone = 0,
|
||||
Rotate180FlipXY = RotateNoneFlipNone,
|
||||
Rotate180FlipXY = RotateNoneFlipNone,
|
||||
|
||||
Rotate90FlipNone = 1,
|
||||
Rotate270FlipXY = Rotate90FlipNone,
|
||||
Rotate90FlipNone = 1,
|
||||
Rotate270FlipXY = Rotate90FlipNone,
|
||||
|
||||
Rotate180FlipNone = 2,
|
||||
RotateNoneFlipXY = Rotate180FlipNone,
|
||||
Rotate180FlipNone = 2,
|
||||
RotateNoneFlipXY = Rotate180FlipNone,
|
||||
|
||||
Rotate270FlipNone = 3,
|
||||
Rotate90FlipXY = Rotate270FlipNone,
|
||||
Rotate270FlipNone = 3,
|
||||
Rotate90FlipXY = Rotate270FlipNone,
|
||||
|
||||
RotateNoneFlipX = 4,
|
||||
Rotate180FlipY = RotateNoneFlipX,
|
||||
RotateNoneFlipX = 4,
|
||||
Rotate180FlipY = RotateNoneFlipX,
|
||||
|
||||
Rotate90FlipX = 5,
|
||||
Rotate270FlipY = Rotate90FlipX,
|
||||
Rotate90FlipX = 5,
|
||||
Rotate270FlipY = Rotate90FlipX,
|
||||
|
||||
Rotate180FlipX = 6,
|
||||
RotateNoneFlipY = Rotate180FlipX,
|
||||
Rotate180FlipX = 6,
|
||||
RotateNoneFlipY = Rotate180FlipX,
|
||||
|
||||
Rotate270FlipX = 7,
|
||||
Rotate90FlipY = Rotate270FlipX
|
||||
Rotate270FlipX = 7,
|
||||
Rotate90FlipY = Rotate270FlipX
|
||||
};
|
||||
|
||||
#ifdef __cplusplus
|
||||
class EncoderParameter
|
||||
{
|
||||
public:
|
||||
GUID Guid;
|
||||
ULONG NumberOfValues;
|
||||
ULONG Type;
|
||||
VOID *Value;
|
||||
public:
|
||||
GUID Guid;
|
||||
ULONG NumberOfValues;
|
||||
ULONG Type;
|
||||
VOID* Value;
|
||||
};
|
||||
|
||||
class EncoderParameters
|
||||
{
|
||||
public:
|
||||
public:
|
||||
UINT Count;
|
||||
EncoderParameter Parameter[1];
|
||||
};
|
||||
|
||||
class ImageCodecInfo
|
||||
{
|
||||
public:
|
||||
public:
|
||||
CLSID Clsid;
|
||||
GUID FormatID;
|
||||
const WCHAR *CodecName;
|
||||
const WCHAR *DllName;
|
||||
const WCHAR *FormatDescription;
|
||||
const WCHAR *FilenameExtension;
|
||||
const WCHAR *MimeType;
|
||||
GUID FormatID;
|
||||
const WCHAR* CodecName;
|
||||
const WCHAR* DllName;
|
||||
const WCHAR* FormatDescription;
|
||||
const WCHAR* FilenameExtension;
|
||||
const WCHAR* MimeType;
|
||||
DWORD Flags;
|
||||
DWORD Version;
|
||||
DWORD SigCount;
|
||||
DWORD SigSize;
|
||||
const BYTE *SigPattern;
|
||||
const BYTE *SigMask;
|
||||
const BYTE* SigPattern;
|
||||
const BYTE* SigMask;
|
||||
};
|
||||
|
||||
class BitmapData
|
||||
{
|
||||
public:
|
||||
public:
|
||||
UINT Width;
|
||||
UINT Height;
|
||||
INT Stride;
|
||||
Gdiplus::PixelFormat PixelFormat;
|
||||
VOID *Scan0;
|
||||
VOID* Scan0;
|
||||
UINT_PTR Reserved;
|
||||
};
|
||||
|
||||
class ImageItemData
|
||||
{
|
||||
public:
|
||||
UINT Size;
|
||||
UINT Position;
|
||||
VOID *Desc;
|
||||
UINT DescSize;
|
||||
VOID *Data;
|
||||
UINT DataSize;
|
||||
UINT Cookie;
|
||||
public:
|
||||
UINT Size;
|
||||
UINT Position;
|
||||
VOID* Desc;
|
||||
UINT DescSize;
|
||||
VOID* Data;
|
||||
UINT DataSize;
|
||||
UINT Cookie;
|
||||
};
|
||||
|
||||
class PropertyItem
|
||||
{
|
||||
public:
|
||||
public:
|
||||
PROPID id;
|
||||
ULONG length;
|
||||
WORD type;
|
||||
VOID *value;
|
||||
ULONG length;
|
||||
WORD type;
|
||||
VOID* value;
|
||||
};
|
||||
|
||||
#else /* end of c++ typedefs */
|
||||
@@ -146,7 +148,7 @@ typedef struct EncoderParameter
|
||||
GUID Guid;
|
||||
ULONG NumberOfValues;
|
||||
ULONG Type;
|
||||
VOID *Value;
|
||||
VOID* Value;
|
||||
} EncoderParameter;
|
||||
|
||||
typedef struct EncoderParameters
|
||||
@@ -158,18 +160,18 @@ typedef struct EncoderParameters
|
||||
typedef struct ImageCodecInfo
|
||||
{
|
||||
CLSID Clsid;
|
||||
GUID FormatID;
|
||||
const WCHAR *CodecName;
|
||||
const WCHAR *DllName;
|
||||
const WCHAR *FormatDescription;
|
||||
const WCHAR *FilenameExtension;
|
||||
const WCHAR *MimeType;
|
||||
GUID FormatID;
|
||||
const WCHAR* CodecName;
|
||||
const WCHAR* DllName;
|
||||
const WCHAR* FormatDescription;
|
||||
const WCHAR* FilenameExtension;
|
||||
const WCHAR* MimeType;
|
||||
DWORD Flags;
|
||||
DWORD Version;
|
||||
DWORD SigCount;
|
||||
DWORD SigSize;
|
||||
const BYTE *SigPattern;
|
||||
const BYTE *SigMask;
|
||||
const BYTE* SigPattern;
|
||||
const BYTE* SigMask;
|
||||
} ImageCodecInfo;
|
||||
|
||||
typedef struct BitmapData
|
||||
@@ -178,276 +180,276 @@ typedef struct BitmapData
|
||||
UINT Height;
|
||||
INT Stride;
|
||||
PixelFormat PixelFormat;
|
||||
VOID *Scan0;
|
||||
VOID* Scan0;
|
||||
UINT_PTR Reserved; /* undocumented: stores the lock mode */
|
||||
} BitmapData;
|
||||
|
||||
typedef struct ImageItemData
|
||||
{
|
||||
UINT Size;
|
||||
UINT Position;
|
||||
VOID *Desc;
|
||||
UINT DescSize;
|
||||
VOID *Data;
|
||||
UINT DataSize;
|
||||
UINT Cookie;
|
||||
UINT Size;
|
||||
UINT Position;
|
||||
VOID* Desc;
|
||||
UINT DescSize;
|
||||
VOID* Data;
|
||||
UINT DataSize;
|
||||
UINT Cookie;
|
||||
} ImageItemData;
|
||||
|
||||
typedef struct PropertyItem
|
||||
{
|
||||
PROPID id;
|
||||
ULONG length;
|
||||
WORD type;
|
||||
VOID *value;
|
||||
ULONG length;
|
||||
WORD type;
|
||||
VOID* value;
|
||||
} PropertyItem;
|
||||
|
||||
#endif /* end of c typedefs */
|
||||
|
||||
/* property types */
|
||||
#define PropertyTagTypeByte 1
|
||||
#define PropertyTagTypeASCII 2
|
||||
#define PropertyTagTypeShort 3
|
||||
#define PropertyTagTypeLong 4
|
||||
#define PropertyTagTypeRational 5
|
||||
#define PropertyTagTypeUndefined 7
|
||||
#define PropertyTagTypeSLONG 9
|
||||
#define PropertyTagTypeByte 1
|
||||
#define PropertyTagTypeASCII 2
|
||||
#define PropertyTagTypeShort 3
|
||||
#define PropertyTagTypeLong 4
|
||||
#define PropertyTagTypeRational 5
|
||||
#define PropertyTagTypeUndefined 7
|
||||
#define PropertyTagTypeSLONG 9
|
||||
#define PropertyTagTypeSRational 10
|
||||
|
||||
/* property IDs */
|
||||
#define PropertyTagExifIFD 0x8769
|
||||
#define PropertyTagGpsIFD 0x8825
|
||||
#define PropertyTagExifIFD 0x8769
|
||||
#define PropertyTagGpsIFD 0x8825
|
||||
|
||||
#define PropertyTagNewSubfileType 0x00FE
|
||||
#define PropertyTagSubfileType 0x00FF
|
||||
#define PropertyTagImageWidth 0x0100
|
||||
#define PropertyTagImageHeight 0x0101
|
||||
#define PropertyTagBitsPerSample 0x0102
|
||||
#define PropertyTagCompression 0x0103
|
||||
#define PropertyTagPhotometricInterp 0x0106
|
||||
#define PropertyTagThreshHolding 0x0107
|
||||
#define PropertyTagCellWidth 0x0108
|
||||
#define PropertyTagCellHeight 0x0109
|
||||
#define PropertyTagFillOrder 0x010A
|
||||
#define PropertyTagDocumentName 0x010D
|
||||
#define PropertyTagImageDescription 0x010E
|
||||
#define PropertyTagEquipMake 0x010F
|
||||
#define PropertyTagEquipModel 0x0110
|
||||
#define PropertyTagStripOffsets 0x0111
|
||||
#define PropertyTagOrientation 0x0112
|
||||
#define PropertyTagSamplesPerPixel 0x0115
|
||||
#define PropertyTagRowsPerStrip 0x0116
|
||||
#define PropertyTagStripBytesCount 0x0117
|
||||
#define PropertyTagMinSampleValue 0x0118
|
||||
#define PropertyTagMaxSampleValue 0x0119
|
||||
#define PropertyTagXResolution 0x011A
|
||||
#define PropertyTagYResolution 0x011B
|
||||
#define PropertyTagPlanarConfig 0x011C
|
||||
#define PropertyTagPageName 0x011D
|
||||
#define PropertyTagXPosition 0x011E
|
||||
#define PropertyTagYPosition 0x011F
|
||||
#define PropertyTagFreeOffset 0x0120
|
||||
#define PropertyTagFreeByteCounts 0x0121
|
||||
#define PropertyTagGrayResponseUnit 0x0122
|
||||
#define PropertyTagGrayResponseCurve 0x0123
|
||||
#define PropertyTagT4Option 0x0124
|
||||
#define PropertyTagT6Option 0x0125
|
||||
#define PropertyTagResolutionUnit 0x0128
|
||||
#define PropertyTagPageNumber 0x0129
|
||||
#define PropertyTagTransferFuncition 0x012D
|
||||
#define PropertyTagSoftwareUsed 0x0131
|
||||
#define PropertyTagDateTime 0x0132
|
||||
#define PropertyTagArtist 0x013B
|
||||
#define PropertyTagHostComputer 0x013C
|
||||
#define PropertyTagPredictor 0x013D
|
||||
#define PropertyTagWhitePoint 0x013E
|
||||
#define PropertyTagPrimaryChromaticities 0x013F
|
||||
#define PropertyTagColorMap 0x0140
|
||||
#define PropertyTagHalftoneHints 0x0141
|
||||
#define PropertyTagTileWidth 0x0142
|
||||
#define PropertyTagTileLength 0x0143
|
||||
#define PropertyTagTileOffset 0x0144
|
||||
#define PropertyTagTileByteCounts 0x0145
|
||||
#define PropertyTagInkSet 0x014C
|
||||
#define PropertyTagInkNames 0x014D
|
||||
#define PropertyTagNumberOfInks 0x014E
|
||||
#define PropertyTagDotRange 0x0150
|
||||
#define PropertyTagTargetPrinter 0x0151
|
||||
#define PropertyTagExtraSamples 0x0152
|
||||
#define PropertyTagSampleFormat 0x0153
|
||||
#define PropertyTagSMinSampleValue 0x0154
|
||||
#define PropertyTagSMaxSampleValue 0x0155
|
||||
#define PropertyTagTransferRange 0x0156
|
||||
#define PropertyTagNewSubfileType 0x00FE
|
||||
#define PropertyTagSubfileType 0x00FF
|
||||
#define PropertyTagImageWidth 0x0100
|
||||
#define PropertyTagImageHeight 0x0101
|
||||
#define PropertyTagBitsPerSample 0x0102
|
||||
#define PropertyTagCompression 0x0103
|
||||
#define PropertyTagPhotometricInterp 0x0106
|
||||
#define PropertyTagThreshHolding 0x0107
|
||||
#define PropertyTagCellWidth 0x0108
|
||||
#define PropertyTagCellHeight 0x0109
|
||||
#define PropertyTagFillOrder 0x010A
|
||||
#define PropertyTagDocumentName 0x010D
|
||||
#define PropertyTagImageDescription 0x010E
|
||||
#define PropertyTagEquipMake 0x010F
|
||||
#define PropertyTagEquipModel 0x0110
|
||||
#define PropertyTagStripOffsets 0x0111
|
||||
#define PropertyTagOrientation 0x0112
|
||||
#define PropertyTagSamplesPerPixel 0x0115
|
||||
#define PropertyTagRowsPerStrip 0x0116
|
||||
#define PropertyTagStripBytesCount 0x0117
|
||||
#define PropertyTagMinSampleValue 0x0118
|
||||
#define PropertyTagMaxSampleValue 0x0119
|
||||
#define PropertyTagXResolution 0x011A
|
||||
#define PropertyTagYResolution 0x011B
|
||||
#define PropertyTagPlanarConfig 0x011C
|
||||
#define PropertyTagPageName 0x011D
|
||||
#define PropertyTagXPosition 0x011E
|
||||
#define PropertyTagYPosition 0x011F
|
||||
#define PropertyTagFreeOffset 0x0120
|
||||
#define PropertyTagFreeByteCounts 0x0121
|
||||
#define PropertyTagGrayResponseUnit 0x0122
|
||||
#define PropertyTagGrayResponseCurve 0x0123
|
||||
#define PropertyTagT4Option 0x0124
|
||||
#define PropertyTagT6Option 0x0125
|
||||
#define PropertyTagResolutionUnit 0x0128
|
||||
#define PropertyTagPageNumber 0x0129
|
||||
#define PropertyTagTransferFuncition 0x012D
|
||||
#define PropertyTagSoftwareUsed 0x0131
|
||||
#define PropertyTagDateTime 0x0132
|
||||
#define PropertyTagArtist 0x013B
|
||||
#define PropertyTagHostComputer 0x013C
|
||||
#define PropertyTagPredictor 0x013D
|
||||
#define PropertyTagWhitePoint 0x013E
|
||||
#define PropertyTagPrimaryChromaticities 0x013F
|
||||
#define PropertyTagColorMap 0x0140
|
||||
#define PropertyTagHalftoneHints 0x0141
|
||||
#define PropertyTagTileWidth 0x0142
|
||||
#define PropertyTagTileLength 0x0143
|
||||
#define PropertyTagTileOffset 0x0144
|
||||
#define PropertyTagTileByteCounts 0x0145
|
||||
#define PropertyTagInkSet 0x014C
|
||||
#define PropertyTagInkNames 0x014D
|
||||
#define PropertyTagNumberOfInks 0x014E
|
||||
#define PropertyTagDotRange 0x0150
|
||||
#define PropertyTagTargetPrinter 0x0151
|
||||
#define PropertyTagExtraSamples 0x0152
|
||||
#define PropertyTagSampleFormat 0x0153
|
||||
#define PropertyTagSMinSampleValue 0x0154
|
||||
#define PropertyTagSMaxSampleValue 0x0155
|
||||
#define PropertyTagTransferRange 0x0156
|
||||
|
||||
#define PropertyTagJPEGProc 0x0200
|
||||
#define PropertyTagJPEGInterFormat 0x0201
|
||||
#define PropertyTagJPEGInterLength 0x0202
|
||||
#define PropertyTagJPEGRestartInterval 0x0203
|
||||
#define PropertyTagJPEGProc 0x0200
|
||||
#define PropertyTagJPEGInterFormat 0x0201
|
||||
#define PropertyTagJPEGInterLength 0x0202
|
||||
#define PropertyTagJPEGRestartInterval 0x0203
|
||||
#define PropertyTagJPEGLosslessPredictors 0x0205
|
||||
#define PropertyTagJPEGPointTransforms 0x0206
|
||||
#define PropertyTagJPEGQTables 0x0207
|
||||
#define PropertyTagJPEGDCTables 0x0208
|
||||
#define PropertyTagJPEGACTables 0x0209
|
||||
#define PropertyTagJPEGPointTransforms 0x0206
|
||||
#define PropertyTagJPEGQTables 0x0207
|
||||
#define PropertyTagJPEGDCTables 0x0208
|
||||
#define PropertyTagJPEGACTables 0x0209
|
||||
|
||||
#define PropertyTagYCbCrCoefficients 0x0211
|
||||
#define PropertyTagYCbCrSubsampling 0x0212
|
||||
#define PropertyTagYCbCrPositioning 0x0213
|
||||
#define PropertyTagREFBlackWhite 0x0214
|
||||
#define PropertyTagYCbCrCoefficients 0x0211
|
||||
#define PropertyTagYCbCrSubsampling 0x0212
|
||||
#define PropertyTagYCbCrPositioning 0x0213
|
||||
#define PropertyTagREFBlackWhite 0x0214
|
||||
|
||||
#define PropertyTagICCProfile 0x8773
|
||||
#define PropertyTagICCProfile 0x8773
|
||||
|
||||
#define PropertyTagGamma 0x0301
|
||||
#define PropertyTagGamma 0x0301
|
||||
#define PropertyTagICCProfileDescriptor 0x0302
|
||||
#define PropertyTagSRGBRenderingIntent 0x0303
|
||||
#define PropertyTagSRGBRenderingIntent 0x0303
|
||||
|
||||
#define PropertyTagImageTitle 0x0320
|
||||
#define PropertyTagCopyright 0x8298
|
||||
#define PropertyTagImageTitle 0x0320
|
||||
#define PropertyTagCopyright 0x8298
|
||||
|
||||
#define PropertyTagResolutionXUnit 0x5001
|
||||
#define PropertyTagResolutionYUnit 0x5002
|
||||
#define PropertyTagResolutionXLengthUnit 0x5003
|
||||
#define PropertyTagResolutionYLengthUnit 0x5004
|
||||
#define PropertyTagPrintFlags 0x5005
|
||||
#define PropertyTagPrintFlagsVersion 0x5006
|
||||
#define PropertyTagPrintFlagsCrop 0x5007
|
||||
#define PropertyTagPrintFlagsBleedWidth 0x5008
|
||||
#define PropertyTagPrintFlagsBleedWidthScale 0x5009
|
||||
#define PropertyTagHalftoneLPI 0x500A
|
||||
#define PropertyTagHalftoneLPIUnit 0x500B
|
||||
#define PropertyTagHalftoneDegree 0x500C
|
||||
#define PropertyTagHalftoneShape 0x500D
|
||||
#define PropertyTagHalftoneMisc 0x500E
|
||||
#define PropertyTagHalftoneScreen 0x500F
|
||||
#define PropertyTagJPEGQuality 0x5010
|
||||
#define PropertyTagGridSize 0x5011
|
||||
#define PropertyTagThumbnailFormat 0x5012
|
||||
#define PropertyTagThumbnailWidth 0x5013
|
||||
#define PropertyTagThumbnailHeight 0x5014
|
||||
#define PropertyTagThumbnailColorDepth 0x5015
|
||||
#define PropertyTagThumbnailPlanes 0x5016
|
||||
#define PropertyTagThumbnailRawBytes 0x5017
|
||||
#define PropertyTagThumbnailSize 0x5018
|
||||
#define PropertyTagThumbnailCompressedSize 0x5019
|
||||
#define PropertyTagColorTransferFunction 0x501A
|
||||
#define PropertyTagThumbnailData 0x501B
|
||||
#define PropertyTagResolutionXUnit 0x5001
|
||||
#define PropertyTagResolutionYUnit 0x5002
|
||||
#define PropertyTagResolutionXLengthUnit 0x5003
|
||||
#define PropertyTagResolutionYLengthUnit 0x5004
|
||||
#define PropertyTagPrintFlags 0x5005
|
||||
#define PropertyTagPrintFlagsVersion 0x5006
|
||||
#define PropertyTagPrintFlagsCrop 0x5007
|
||||
#define PropertyTagPrintFlagsBleedWidth 0x5008
|
||||
#define PropertyTagPrintFlagsBleedWidthScale 0x5009
|
||||
#define PropertyTagHalftoneLPI 0x500A
|
||||
#define PropertyTagHalftoneLPIUnit 0x500B
|
||||
#define PropertyTagHalftoneDegree 0x500C
|
||||
#define PropertyTagHalftoneShape 0x500D
|
||||
#define PropertyTagHalftoneMisc 0x500E
|
||||
#define PropertyTagHalftoneScreen 0x500F
|
||||
#define PropertyTagJPEGQuality 0x5010
|
||||
#define PropertyTagGridSize 0x5011
|
||||
#define PropertyTagThumbnailFormat 0x5012
|
||||
#define PropertyTagThumbnailWidth 0x5013
|
||||
#define PropertyTagThumbnailHeight 0x5014
|
||||
#define PropertyTagThumbnailColorDepth 0x5015
|
||||
#define PropertyTagThumbnailPlanes 0x5016
|
||||
#define PropertyTagThumbnailRawBytes 0x5017
|
||||
#define PropertyTagThumbnailSize 0x5018
|
||||
#define PropertyTagThumbnailCompressedSize 0x5019
|
||||
#define PropertyTagColorTransferFunction 0x501A
|
||||
#define PropertyTagThumbnailData 0x501B
|
||||
|
||||
#define PropertyTagThumbnailImageWidth 0x5020
|
||||
#define PropertyTagThumbnailImageHeight 0x5021
|
||||
#define PropertyTagThumbnailBitsPerSample 0x5022
|
||||
#define PropertyTagThumbnailCompression 0x5023
|
||||
#define PropertyTagThumbnailImageWidth 0x5020
|
||||
#define PropertyTagThumbnailImageHeight 0x5021
|
||||
#define PropertyTagThumbnailBitsPerSample 0x5022
|
||||
#define PropertyTagThumbnailCompression 0x5023
|
||||
#define PropertyTagThumbnailPhotometricInterp 0x5024
|
||||
#define PropertyTagThumbnailImageDescription 0x5025
|
||||
#define PropertyTagThumbnailEquipMake 0x5026
|
||||
#define PropertyTagThumbnailEquipModel 0x5027
|
||||
#define PropertyTagThumbnailStripOffsets 0x5028
|
||||
#define PropertyTagThumbnailOrientation 0x5029
|
||||
#define PropertyTagThumbnailSamplesPerPixel 0x502A
|
||||
#define PropertyTagThumbnailRowsPerStrip 0x502B
|
||||
#define PropertyTagThumbnailStripBytesCount 0x502C
|
||||
#define PropertyTagThumbnailResolutionX 0x502D
|
||||
#define PropertyTagThumbnailResolutionY 0x502E
|
||||
#define PropertyTagThumbnailPlanarConfig 0x502F
|
||||
#define PropertyTagThumbnailResolutionUnit 0x5030
|
||||
#define PropertyTagThumbnailTransferFunction 0x5031
|
||||
#define PropertyTagThumbnailSoftwareUsed 0x5032
|
||||
#define PropertyTagThumbnailDateTime 0x5033
|
||||
#define PropertyTagThumbnailArtist 0x5034
|
||||
#define PropertyTagThumbnailWhitePoint 0x5035
|
||||
#define PropertyTagThumbnailImageDescription 0x5025
|
||||
#define PropertyTagThumbnailEquipMake 0x5026
|
||||
#define PropertyTagThumbnailEquipModel 0x5027
|
||||
#define PropertyTagThumbnailStripOffsets 0x5028
|
||||
#define PropertyTagThumbnailOrientation 0x5029
|
||||
#define PropertyTagThumbnailSamplesPerPixel 0x502A
|
||||
#define PropertyTagThumbnailRowsPerStrip 0x502B
|
||||
#define PropertyTagThumbnailStripBytesCount 0x502C
|
||||
#define PropertyTagThumbnailResolutionX 0x502D
|
||||
#define PropertyTagThumbnailResolutionY 0x502E
|
||||
#define PropertyTagThumbnailPlanarConfig 0x502F
|
||||
#define PropertyTagThumbnailResolutionUnit 0x5030
|
||||
#define PropertyTagThumbnailTransferFunction 0x5031
|
||||
#define PropertyTagThumbnailSoftwareUsed 0x5032
|
||||
#define PropertyTagThumbnailDateTime 0x5033
|
||||
#define PropertyTagThumbnailArtist 0x5034
|
||||
#define PropertyTagThumbnailWhitePoint 0x5035
|
||||
#define PropertyTagThumbnailPrimaryChromaticities 0x5036
|
||||
#define PropertyTagThumbnailYCbCrCoefficients 0x5037
|
||||
#define PropertyTagThumbnailYCbCrSubsampling 0x5038
|
||||
#define PropertyTagThumbnailYCbCrPositioning 0x5039
|
||||
#define PropertyTagThumbnailRefBlackWhite 0x503A
|
||||
#define PropertyTagThumbnailCopyRight 0x503B
|
||||
#define PropertyTagThumbnailYCbCrSubsampling 0x5038
|
||||
#define PropertyTagThumbnailYCbCrPositioning 0x5039
|
||||
#define PropertyTagThumbnailRefBlackWhite 0x503A
|
||||
#define PropertyTagThumbnailCopyRight 0x503B
|
||||
|
||||
#define PropertyTagLuminanceTable 0x5090
|
||||
#define PropertyTagChrominanceTable 0x5091
|
||||
#define PropertyTagLuminanceTable 0x5090
|
||||
#define PropertyTagChrominanceTable 0x5091
|
||||
|
||||
#define PropertyTagFrameDelay 0x5100
|
||||
#define PropertyTagLoopCount 0x5101
|
||||
#define PropertyTagGlobalPalette 0x5102
|
||||
#define PropertyTagIndexBackground 0x5103
|
||||
#define PropertyTagIndexTransparent 0x5104
|
||||
#define PropertyTagFrameDelay 0x5100
|
||||
#define PropertyTagLoopCount 0x5101
|
||||
#define PropertyTagGlobalPalette 0x5102
|
||||
#define PropertyTagIndexBackground 0x5103
|
||||
#define PropertyTagIndexTransparent 0x5104
|
||||
|
||||
#define PropertyTagPixelUnit 0x5110
|
||||
#define PropertyTagPixelPerUnitX 0x5111
|
||||
#define PropertyTagPixelPerUnitY 0x5112
|
||||
#define PropertyTagPaletteHistogram 0x5113
|
||||
#define PropertyTagPixelUnit 0x5110
|
||||
#define PropertyTagPixelPerUnitX 0x5111
|
||||
#define PropertyTagPixelPerUnitY 0x5112
|
||||
#define PropertyTagPaletteHistogram 0x5113
|
||||
|
||||
#define PropertyTagExifExposureTime 0x829A
|
||||
#define PropertyTagExifFNumber 0x829D
|
||||
#define PropertyTagExifExposureTime 0x829A
|
||||
#define PropertyTagExifFNumber 0x829D
|
||||
|
||||
#define PropertyTagExifExposureProg 0x8822
|
||||
#define PropertyTagExifExposureProg 0x8822
|
||||
#define PropertyTagExifSpectralSense 0x8824
|
||||
#define PropertyTagExifISOSpeed 0x8827
|
||||
#define PropertyTagExifOECF 0x8828
|
||||
#define PropertyTagExifISOSpeed 0x8827
|
||||
#define PropertyTagExifOECF 0x8828
|
||||
|
||||
#define PropertyTagExifVer 0x9000
|
||||
#define PropertyTagExifDTOrig 0x9003
|
||||
#define PropertyTagExifDTDigitized 0x9004
|
||||
#define PropertyTagExifVer 0x9000
|
||||
#define PropertyTagExifDTOrig 0x9003
|
||||
#define PropertyTagExifDTDigitized 0x9004
|
||||
|
||||
#define PropertyTagExifCompConfig 0x9101
|
||||
#define PropertyTagExifCompBPP 0x9102
|
||||
#define PropertyTagExifCompConfig 0x9101
|
||||
#define PropertyTagExifCompBPP 0x9102
|
||||
|
||||
#define PropertyTagExifShutterSpeed 0x9201
|
||||
#define PropertyTagExifAperture 0x9202
|
||||
#define PropertyTagExifBrightness 0x9203
|
||||
#define PropertyTagExifExposureBias 0x9204
|
||||
#define PropertyTagExifMaxAperture 0x9205
|
||||
#define PropertyTagExifSubjectDist 0x9206
|
||||
#define PropertyTagExifMeteringMode 0x9207
|
||||
#define PropertyTagExifLightSource 0x9208
|
||||
#define PropertyTagExifFlash 0x9209
|
||||
#define PropertyTagExifFocalLength 0x920A
|
||||
#define PropertyTagExifMakerNote 0x927C
|
||||
#define PropertyTagExifUserComment 0x9286
|
||||
#define PropertyTagExifDTSubsec 0x9290
|
||||
#define PropertyTagExifDTOrigSS 0x9291
|
||||
#define PropertyTagExifDTDigSS 0x9292
|
||||
#define PropertyTagExifShutterSpeed 0x9201
|
||||
#define PropertyTagExifAperture 0x9202
|
||||
#define PropertyTagExifBrightness 0x9203
|
||||
#define PropertyTagExifExposureBias 0x9204
|
||||
#define PropertyTagExifMaxAperture 0x9205
|
||||
#define PropertyTagExifSubjectDist 0x9206
|
||||
#define PropertyTagExifMeteringMode 0x9207
|
||||
#define PropertyTagExifLightSource 0x9208
|
||||
#define PropertyTagExifFlash 0x9209
|
||||
#define PropertyTagExifFocalLength 0x920A
|
||||
#define PropertyTagExifMakerNote 0x927C
|
||||
#define PropertyTagExifUserComment 0x9286
|
||||
#define PropertyTagExifDTSubsec 0x9290
|
||||
#define PropertyTagExifDTOrigSS 0x9291
|
||||
#define PropertyTagExifDTDigSS 0x9292
|
||||
|
||||
#define PropertyTagExifFPXVer 0xA000
|
||||
#define PropertyTagExifColorSpace 0xA001
|
||||
#define PropertyTagExifPixXDim 0xA002
|
||||
#define PropertyTagExifPixYDim 0xA003
|
||||
#define PropertyTagExifRelatedWav 0xA004
|
||||
#define PropertyTagExifInterop 0xA005
|
||||
#define PropertyTagExifFlashEnergy 0xA20B
|
||||
#define PropertyTagExifSpatialFR 0xA20C
|
||||
#define PropertyTagExifFocalXRes 0xA20E
|
||||
#define PropertyTagExifFocalYRes 0xA20F
|
||||
#define PropertyTagExifFocalResUnit 0xA210
|
||||
#define PropertyTagExifSubjectLoc 0xA214
|
||||
#define PropertyTagExifFPXVer 0xA000
|
||||
#define PropertyTagExifColorSpace 0xA001
|
||||
#define PropertyTagExifPixXDim 0xA002
|
||||
#define PropertyTagExifPixYDim 0xA003
|
||||
#define PropertyTagExifRelatedWav 0xA004
|
||||
#define PropertyTagExifInterop 0xA005
|
||||
#define PropertyTagExifFlashEnergy 0xA20B
|
||||
#define PropertyTagExifSpatialFR 0xA20C
|
||||
#define PropertyTagExifFocalXRes 0xA20E
|
||||
#define PropertyTagExifFocalYRes 0xA20F
|
||||
#define PropertyTagExifFocalResUnit 0xA210
|
||||
#define PropertyTagExifSubjectLoc 0xA214
|
||||
#define PropertyTagExifExposureIndex 0xA215
|
||||
#define PropertyTagExifSensingMethod 0xA217
|
||||
#define PropertyTagExifFileSource 0xA300
|
||||
#define PropertyTagExifSceneType 0xA301
|
||||
#define PropertyTagExifCfaPattern 0xA302
|
||||
#define PropertyTagExifFileSource 0xA300
|
||||
#define PropertyTagExifSceneType 0xA301
|
||||
#define PropertyTagExifCfaPattern 0xA302
|
||||
|
||||
#define PropertyTagGpsVer 0x0000
|
||||
#define PropertyTagGpsLatitudeRef 0x0001
|
||||
#define PropertyTagGpsLatitude 0x0002
|
||||
#define PropertyTagGpsLongitudeRef 0x0003
|
||||
#define PropertyTagGpsLongitude 0x0004
|
||||
#define PropertyTagGpsAltitudeRef 0x0005
|
||||
#define PropertyTagGpsAltitude 0x0006
|
||||
#define PropertyTagGpsGpsTime 0x0007
|
||||
#define PropertyTagGpsGpsSatellites 0x0008
|
||||
#define PropertyTagGpsGpsStatus 0x0009
|
||||
#define PropertyTagGpsVer 0x0000
|
||||
#define PropertyTagGpsLatitudeRef 0x0001
|
||||
#define PropertyTagGpsLatitude 0x0002
|
||||
#define PropertyTagGpsLongitudeRef 0x0003
|
||||
#define PropertyTagGpsLongitude 0x0004
|
||||
#define PropertyTagGpsAltitudeRef 0x0005
|
||||
#define PropertyTagGpsAltitude 0x0006
|
||||
#define PropertyTagGpsGpsTime 0x0007
|
||||
#define PropertyTagGpsGpsSatellites 0x0008
|
||||
#define PropertyTagGpsGpsStatus 0x0009
|
||||
#define PropertyTagGpsGpsMeasureMode 0x000A
|
||||
#define PropertyTagGpsGpsDop 0x000B
|
||||
#define PropertyTagGpsSpeedRef 0x000C
|
||||
#define PropertyTagGpsSpeed 0x000D
|
||||
#define PropertyTagGpsTrackRef 0x000E
|
||||
#define PropertyTagGpsTrack 0x000F
|
||||
#define PropertyTagGpsImgDirRef 0x0010
|
||||
#define PropertyTagGpsImgDir 0x0011
|
||||
#define PropertyTagGpsMapDatum 0x0012
|
||||
#define PropertyTagGpsDestLatRef 0x0013
|
||||
#define PropertyTagGpsDestLat 0x0014
|
||||
#define PropertyTagGpsDestLongRef 0x0015
|
||||
#define PropertyTagGpsDestLong 0x0016
|
||||
#define PropertyTagGpsDestBearRef 0x0017
|
||||
#define PropertyTagGpsDestBear 0x0018
|
||||
#define PropertyTagGpsDestDistRef 0x0019
|
||||
#define PropertyTagGpsDestDist 0x001A
|
||||
#define PropertyTagGpsGpsDop 0x000B
|
||||
#define PropertyTagGpsSpeedRef 0x000C
|
||||
#define PropertyTagGpsSpeed 0x000D
|
||||
#define PropertyTagGpsTrackRef 0x000E
|
||||
#define PropertyTagGpsTrack 0x000F
|
||||
#define PropertyTagGpsImgDirRef 0x0010
|
||||
#define PropertyTagGpsImgDir 0x0011
|
||||
#define PropertyTagGpsMapDatum 0x0012
|
||||
#define PropertyTagGpsDestLatRef 0x0013
|
||||
#define PropertyTagGpsDestLat 0x0014
|
||||
#define PropertyTagGpsDestLongRef 0x0015
|
||||
#define PropertyTagGpsDestLong 0x0016
|
||||
#define PropertyTagGpsDestBearRef 0x0017
|
||||
#define PropertyTagGpsDestBear 0x0018
|
||||
#define PropertyTagGpsDestDistRef 0x0019
|
||||
#define PropertyTagGpsDestDist 0x001A
|
||||
|
||||
#endif /* _GDIPLUSIMAGING_H */
|
||||
|
||||
@@ -25,9 +25,9 @@ enum DebugEventLevel
|
||||
DebugEventLevelWarning
|
||||
};
|
||||
|
||||
typedef VOID(WINAPI *DebugEventProc)(enum DebugEventLevel, CHAR *);
|
||||
typedef Status(WINAPI *NotificationHookProc)(ULONG_PTR *);
|
||||
typedef void(WINAPI *NotificationUnhookProc)(ULONG_PTR);
|
||||
typedef VOID (WINAPI *DebugEventProc)(enum DebugEventLevel, CHAR *);
|
||||
typedef Status (WINAPI *NotificationHookProc)(ULONG_PTR *);
|
||||
typedef void (WINAPI *NotificationUnhookProc)(ULONG_PTR);
|
||||
|
||||
struct GdiplusStartupInput
|
||||
{
|
||||
@@ -37,8 +37,7 @@ struct GdiplusStartupInput
|
||||
BOOL SuppressExternalCodecs;
|
||||
|
||||
#ifdef __cplusplus
|
||||
GdiplusStartupInput(
|
||||
DebugEventProc debugEventCallback = NULL,
|
||||
GdiplusStartupInput(DebugEventProc debugEventCallback = NULL,
|
||||
BOOL suppressBackgroundThread = FALSE,
|
||||
BOOL suppressExternalCodecs = FALSE)
|
||||
{
|
||||
@@ -57,13 +56,11 @@ struct GdiplusStartupOutput
|
||||
};
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
Status WINAPI
|
||||
GdiplusStartup(ULONG_PTR *, const struct GdiplusStartupInput *, struct GdiplusStartupOutput *);
|
||||
void WINAPI GdiplusShutdown(ULONG_PTR);
|
||||
Status WINAPI GdiplusStartup(ULONG_PTR *, const struct GdiplusStartupInput *, struct GdiplusStartupOutput *);
|
||||
void WINAPI GdiplusShutdown(ULONG_PTR);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
||||
@@ -22,13 +22,11 @@
|
||||
#define WINGDIPAPI __stdcall
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
void *WINGDIPAPI GdipAlloc(SIZE_T) __WINE_ALLOC_SIZE(1);
|
||||
void WINGDIPAPI
|
||||
GdipFree(void *);
|
||||
void WINGDIPAPI GdipFree(void*);
|
||||
void* WINGDIPAPI GdipAlloc(SIZE_T) __WINE_ALLOC_SIZE(1) __WINE_DEALLOC(GdipFree) __WINE_MALLOC;
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
||||
@@ -21,108 +21,84 @@
|
||||
|
||||
typedef struct
|
||||
{
|
||||
DWORD iType;
|
||||
DWORD nSize;
|
||||
RECTL rclBounds;
|
||||
RECTL rclFrame;
|
||||
DWORD dSignature;
|
||||
DWORD nVersion;
|
||||
DWORD nBytes;
|
||||
DWORD nRecords;
|
||||
WORD nHandles;
|
||||
WORD sReserved;
|
||||
DWORD nDescription;
|
||||
DWORD offDescription;
|
||||
DWORD nPalEntries;
|
||||
SIZEL szlDevice;
|
||||
SIZEL szlMillimeters;
|
||||
DWORD iType;
|
||||
DWORD nSize;
|
||||
RECTL rclBounds;
|
||||
RECTL rclFrame;
|
||||
DWORD dSignature;
|
||||
DWORD nVersion;
|
||||
DWORD nBytes;
|
||||
DWORD nRecords;
|
||||
WORD nHandles;
|
||||
WORD sReserved;
|
||||
DWORD nDescription;
|
||||
DWORD offDescription;
|
||||
DWORD nPalEntries;
|
||||
SIZEL szlDevice;
|
||||
SIZEL szlMillimeters;
|
||||
} ENHMETAHEADER3;
|
||||
|
||||
#include <pshpack2.h>
|
||||
|
||||
typedef struct
|
||||
{
|
||||
INT16 Left;
|
||||
INT16 Top;
|
||||
INT16 Right;
|
||||
INT16 Bottom;
|
||||
INT16 Left;
|
||||
INT16 Top;
|
||||
INT16 Right;
|
||||
INT16 Bottom;
|
||||
} PWMFRect16;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
UINT32 Key;
|
||||
INT16 Hmf;
|
||||
UINT32 Key;
|
||||
INT16 Hmf;
|
||||
PWMFRect16 BoundingBox;
|
||||
INT16 Inch;
|
||||
UINT32 Reserved;
|
||||
INT16 Checksum;
|
||||
INT16 Inch;
|
||||
UINT32 Reserved;
|
||||
INT16 Checksum;
|
||||
} WmfPlaceableFileHeader;
|
||||
|
||||
#include <poppack.h>
|
||||
|
||||
#define GDIP_EMFPLUSFLAGS_DISPLAY 0x00000001
|
||||
#define GDIP_EMFPLUSFLAGS_DISPLAY 0x00000001
|
||||
|
||||
#ifdef __cplusplus
|
||||
class MetafileHeader
|
||||
{
|
||||
public:
|
||||
MetafileType Type;
|
||||
UINT Size;
|
||||
UINT Version;
|
||||
UINT EmfPlusFlags;
|
||||
REAL DpiX;
|
||||
REAL DpiY;
|
||||
INT X;
|
||||
INT Y;
|
||||
INT Width;
|
||||
INT Height;
|
||||
union {
|
||||
METAHEADER WmfHeader;
|
||||
ENHMETAHEADER3 EmfHeader;
|
||||
public:
|
||||
MetafileType Type;
|
||||
UINT Size;
|
||||
UINT Version;
|
||||
UINT EmfPlusFlags;
|
||||
REAL DpiX;
|
||||
REAL DpiY;
|
||||
INT X;
|
||||
INT Y;
|
||||
INT Width;
|
||||
INT Height;
|
||||
union
|
||||
{
|
||||
METAHEADER WmfHeader;
|
||||
ENHMETAHEADER3 EmfHeader;
|
||||
};
|
||||
INT EmfPlusHeaderSize;
|
||||
INT LogicalDpiX;
|
||||
INT LogicalDpiY;
|
||||
INT EmfPlusHeaderSize;
|
||||
INT LogicalDpiX;
|
||||
INT LogicalDpiY;
|
||||
|
||||
public:
|
||||
MetafileType
|
||||
GetType() const
|
||||
{
|
||||
return Type;
|
||||
}
|
||||
public:
|
||||
MetafileType GetType() const { return Type; }
|
||||
|
||||
UINT
|
||||
GetMetafileSize() const
|
||||
{
|
||||
return Size;
|
||||
}
|
||||
UINT GetMetafileSize() const { return Size; }
|
||||
|
||||
UINT
|
||||
GetVersion() const
|
||||
{
|
||||
return Version;
|
||||
}
|
||||
UINT GetVersion() const { return Version; }
|
||||
|
||||
UINT
|
||||
GetEmfPlusFlags() const
|
||||
{
|
||||
return EmfPlusFlags;
|
||||
}
|
||||
UINT GetEmfPlusFlags() const { return EmfPlusFlags; }
|
||||
|
||||
REAL
|
||||
GetDpiX() const
|
||||
{
|
||||
return DpiX;
|
||||
}
|
||||
REAL GetDpiX() const { return DpiX; }
|
||||
|
||||
REAL
|
||||
GetDpiY() const
|
||||
{
|
||||
return DpiY;
|
||||
}
|
||||
REAL GetDpiY() const { return DpiY; }
|
||||
|
||||
VOID
|
||||
GetBounds(OUT Rect *r) const
|
||||
VOID GetBounds (OUT Rect *r) const
|
||||
{
|
||||
r->X = X;
|
||||
r->Y = Y;
|
||||
@@ -130,62 +106,34 @@ class MetafileHeader
|
||||
r->Height = Height;
|
||||
}
|
||||
|
||||
BOOL
|
||||
IsWmf() const
|
||||
BOOL IsWmf() const
|
||||
{
|
||||
return ((Type == MetafileTypeWmf) || (Type == MetafileTypeWmfPlaceable));
|
||||
return ((Type == MetafileTypeWmf) || (Type == MetafileTypeWmfPlaceable));
|
||||
}
|
||||
|
||||
BOOL
|
||||
IsWmfPlaceable() const
|
||||
{
|
||||
return (Type == MetafileTypeWmfPlaceable);
|
||||
}
|
||||
BOOL IsWmfPlaceable() const { return (Type == MetafileTypeWmfPlaceable); }
|
||||
|
||||
BOOL
|
||||
IsEmf() const
|
||||
{
|
||||
return (Type == MetafileTypeEmf);
|
||||
}
|
||||
BOOL IsEmf() const { return (Type == MetafileTypeEmf); }
|
||||
|
||||
BOOL
|
||||
IsEmfOrEmfPlus() const
|
||||
{
|
||||
return (Type >= MetafileTypeEmf);
|
||||
}
|
||||
BOOL IsEmfOrEmfPlus() const { return (Type >= MetafileTypeEmf); }
|
||||
|
||||
BOOL
|
||||
IsEmfPlus() const
|
||||
{
|
||||
return (Type >= MetafileTypeEmfPlusOnly);
|
||||
}
|
||||
BOOL IsEmfPlus() const { return (Type >= MetafileTypeEmfPlusOnly); }
|
||||
|
||||
BOOL
|
||||
IsEmfPlusDual() const
|
||||
{
|
||||
return (Type == MetafileTypeEmfPlusDual);
|
||||
}
|
||||
BOOL IsEmfPlusDual() const { return (Type == MetafileTypeEmfPlusDual); }
|
||||
|
||||
BOOL
|
||||
IsEmfPlusOnly() const
|
||||
{
|
||||
return (Type == MetafileTypeEmfPlusOnly);
|
||||
}
|
||||
BOOL IsEmfPlusOnly() const { return (Type == MetafileTypeEmfPlusOnly); }
|
||||
|
||||
BOOL
|
||||
IsDisplay() const
|
||||
BOOL IsDisplay() const
|
||||
{
|
||||
return IsEmfPlus() && ((EmfPlusFlags & GDIP_EMFPLUSFLAGS_DISPLAY) != 0);
|
||||
}
|
||||
|
||||
const METAHEADER *
|
||||
GetWmfHeader() const
|
||||
const METAHEADER * GetWmfHeader() const
|
||||
{
|
||||
return IsWmf() ? &WmfHeader : NULL;
|
||||
}
|
||||
|
||||
const ENHMETAHEADER3 *
|
||||
GetEmfHeader() const
|
||||
const ENHMETAHEADER3 * GetEmfHeader() const
|
||||
{
|
||||
return IsEmfOrEmfPlus() ? &EmfHeader : NULL;
|
||||
}
|
||||
@@ -194,23 +142,24 @@ class MetafileHeader
|
||||
|
||||
typedef struct MetafileHeader
|
||||
{
|
||||
MetafileType Type;
|
||||
UINT Size;
|
||||
UINT Version;
|
||||
UINT EmfPlusFlags;
|
||||
REAL DpiX;
|
||||
REAL DpiY;
|
||||
INT X;
|
||||
INT Y;
|
||||
INT Width;
|
||||
INT Height;
|
||||
union {
|
||||
METAHEADER WmfHeader;
|
||||
ENHMETAHEADER3 EmfHeader;
|
||||
MetafileType Type;
|
||||
UINT Size;
|
||||
UINT Version;
|
||||
UINT EmfPlusFlags;
|
||||
REAL DpiX;
|
||||
REAL DpiY;
|
||||
INT X;
|
||||
INT Y;
|
||||
INT Width;
|
||||
INT Height;
|
||||
union
|
||||
{
|
||||
METAHEADER WmfHeader;
|
||||
ENHMETAHEADER3 EmfHeader;
|
||||
} DUMMYUNIONNAME;
|
||||
INT EmfPlusHeaderSize;
|
||||
INT LogicalDpiX;
|
||||
INT LogicalDpiY;
|
||||
INT EmfPlusHeaderSize;
|
||||
INT LogicalDpiX;
|
||||
INT LogicalDpiY;
|
||||
} MetafileHeader;
|
||||
|
||||
#endif /* end of c typedefs */
|
||||
|
||||
@@ -22,75 +22,76 @@
|
||||
typedef DWORD ARGB;
|
||||
typedef INT PixelFormat;
|
||||
|
||||
#define PixelFormatIndexed 0x00010000
|
||||
#define PixelFormatGDI 0x00020000
|
||||
#define PixelFormatAlpha 0x00040000
|
||||
#define PixelFormatPAlpha 0x00080000
|
||||
#define PixelFormatExtended 0x00100000
|
||||
#define PixelFormatCanonical 0x00200000
|
||||
#define ALPHA_SHIFT 24
|
||||
#define RED_SHIFT 16
|
||||
#define GREEN_SHIFT 8
|
||||
#define BLUE_SHIFT 0
|
||||
#define ALPHA_MASK ((ARGB) 0xff << ALPHA_SHIFT)
|
||||
|
||||
#define PixelFormatUndefined 0
|
||||
#define PixelFormatDontCare 0
|
||||
#define PixelFormatIndexed 0x00010000
|
||||
#define PixelFormatGDI 0x00020000
|
||||
#define PixelFormatAlpha 0x00040000
|
||||
#define PixelFormatPAlpha 0x00080000
|
||||
#define PixelFormatExtended 0x00100000
|
||||
#define PixelFormatCanonical 0x00200000
|
||||
|
||||
#define PixelFormat1bppIndexed (1 | (1 << 8) | PixelFormatIndexed | PixelFormatGDI)
|
||||
#define PixelFormat4bppIndexed (2 | (4 << 8) | PixelFormatIndexed | PixelFormatGDI)
|
||||
#define PixelFormat8bppIndexed (3 | (8 << 8) | PixelFormatIndexed | PixelFormatGDI)
|
||||
#define PixelFormat16bppGrayScale (4 | (16 << 8) | PixelFormatExtended)
|
||||
#define PixelFormat16bppRGB555 (5 | (16 << 8) | PixelFormatGDI)
|
||||
#define PixelFormat16bppRGB565 (6 | (16 << 8) | PixelFormatGDI)
|
||||
#define PixelFormat16bppARGB1555 (7 | (16 << 8) | PixelFormatAlpha | PixelFormatGDI)
|
||||
#define PixelFormat24bppRGB (8 | (24 << 8) | PixelFormatGDI)
|
||||
#define PixelFormat32bppRGB (9 | (32 << 8) | PixelFormatGDI)
|
||||
#define PixelFormat32bppARGB (10 | (32 << 8) | PixelFormatAlpha | PixelFormatGDI | PixelFormatCanonical)
|
||||
#define PixelFormat32bppPARGB (11 | (32 << 8) | PixelFormatAlpha | PixelFormatPAlpha | PixelFormatGDI)
|
||||
#define PixelFormat48bppRGB (12 | (48 << 8) | PixelFormatExtended)
|
||||
#define PixelFormat64bppARGB (13 | (64 << 8) | PixelFormatAlpha | PixelFormatCanonical | PixelFormatExtended)
|
||||
#define PixelFormat64bppPARGB (14 | (64 << 8) | PixelFormatAlpha | PixelFormatPAlpha | PixelFormatExtended)
|
||||
#define PixelFormat32bppCMYK (15 | (32 << 8))
|
||||
#define PixelFormatMax 16
|
||||
#define PixelFormatUndefined 0
|
||||
#define PixelFormatDontCare 0
|
||||
|
||||
static inline BOOL
|
||||
IsIndexedPixelFormat(PixelFormat format)
|
||||
#define PixelFormat1bppIndexed (1 | ( 1 << 8) | PixelFormatIndexed | PixelFormatGDI)
|
||||
#define PixelFormat4bppIndexed (2 | ( 4 << 8) | PixelFormatIndexed | PixelFormatGDI)
|
||||
#define PixelFormat8bppIndexed (3 | ( 8 << 8) | PixelFormatIndexed | PixelFormatGDI)
|
||||
#define PixelFormat16bppGrayScale (4 | (16 << 8) | PixelFormatExtended)
|
||||
#define PixelFormat16bppRGB555 (5 | (16 << 8) | PixelFormatGDI)
|
||||
#define PixelFormat16bppRGB565 (6 | (16 << 8) | PixelFormatGDI)
|
||||
#define PixelFormat16bppARGB1555 (7 | (16 << 8) | PixelFormatAlpha | PixelFormatGDI)
|
||||
#define PixelFormat24bppRGB (8 | (24 << 8) | PixelFormatGDI)
|
||||
#define PixelFormat32bppRGB (9 | (32 << 8) | PixelFormatGDI)
|
||||
#define PixelFormat32bppARGB (10 | (32 << 8) | PixelFormatAlpha | PixelFormatGDI | PixelFormatCanonical)
|
||||
#define PixelFormat32bppPARGB (11 | (32 << 8) | PixelFormatAlpha | PixelFormatPAlpha | PixelFormatGDI)
|
||||
#define PixelFormat48bppRGB (12 | (48 << 8) | PixelFormatExtended)
|
||||
#define PixelFormat64bppARGB (13 | (64 << 8) | PixelFormatAlpha | PixelFormatCanonical | PixelFormatExtended)
|
||||
#define PixelFormat64bppPARGB (14 | (64 << 8) | PixelFormatAlpha | PixelFormatPAlpha | PixelFormatExtended)
|
||||
#define PixelFormat32bppCMYK (15 | (32 << 8))
|
||||
#define PixelFormatMax 16
|
||||
|
||||
static inline BOOL IsIndexedPixelFormat(PixelFormat format)
|
||||
{
|
||||
return (format & PixelFormatIndexed) != 0;
|
||||
}
|
||||
|
||||
static inline BOOL
|
||||
IsAlphaPixelFormat(PixelFormat format)
|
||||
static inline BOOL IsAlphaPixelFormat(PixelFormat format)
|
||||
{
|
||||
return (format & PixelFormatAlpha) != 0;
|
||||
}
|
||||
|
||||
static inline BOOL
|
||||
IsCanonicalPixelFormat(PixelFormat format)
|
||||
static inline BOOL IsCanonicalPixelFormat(PixelFormat format)
|
||||
{
|
||||
return (format & PixelFormatCanonical) != 0;
|
||||
}
|
||||
|
||||
static inline BOOL
|
||||
IsExtendedPixelFormat(PixelFormat format)
|
||||
static inline BOOL IsExtendedPixelFormat(PixelFormat format)
|
||||
{
|
||||
return (format & PixelFormatExtended) != 0;
|
||||
}
|
||||
|
||||
static inline UINT
|
||||
GetPixelFormatSize(PixelFormat format)
|
||||
static inline UINT GetPixelFormatSize(PixelFormat format)
|
||||
{
|
||||
return (format >> 8) & 0xff;
|
||||
}
|
||||
|
||||
enum PaletteFlags
|
||||
{
|
||||
PaletteFlagsHasAlpha = 1,
|
||||
PaletteFlagsGrayScale = 2,
|
||||
PaletteFlagsHalftone = 4
|
||||
PaletteFlagsHasAlpha = 1,
|
||||
PaletteFlagsGrayScale = 2,
|
||||
PaletteFlagsHalftone = 4
|
||||
};
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
||||
struct ColorPalette
|
||||
{
|
||||
public:
|
||||
public:
|
||||
UINT Flags;
|
||||
UINT Count;
|
||||
ARGB Entries[1];
|
||||
@@ -105,7 +106,7 @@ typedef struct ColorPalette
|
||||
ARGB Entries[1];
|
||||
} ColorPalette;
|
||||
|
||||
#endif /* end of c typedefs */
|
||||
#endif /* end of c typedefs */
|
||||
|
||||
typedef enum DitherType
|
||||
{
|
||||
|
||||
+108
-113
@@ -21,93 +21,90 @@
|
||||
|
||||
typedef float REAL;
|
||||
|
||||
enum Status
|
||||
{
|
||||
Ok = 0,
|
||||
GenericError = 1,
|
||||
InvalidParameter = 2,
|
||||
OutOfMemory = 3,
|
||||
ObjectBusy = 4,
|
||||
InsufficientBuffer = 5,
|
||||
NotImplemented = 6,
|
||||
Win32Error = 7,
|
||||
WrongState = 8,
|
||||
Aborted = 9,
|
||||
FileNotFound = 10,
|
||||
ValueOverflow = 11,
|
||||
AccessDenied = 12,
|
||||
UnknownImageFormat = 13,
|
||||
FontFamilyNotFound = 14,
|
||||
FontStyleNotFound = 15,
|
||||
NotTrueTypeFont = 16,
|
||||
UnsupportedGdiplusVersion = 17,
|
||||
GdiplusNotInitialized = 18,
|
||||
PropertyNotFound = 19,
|
||||
PropertyNotSupported = 20,
|
||||
ProfileNotFound = 21
|
||||
enum Status{
|
||||
Ok = 0,
|
||||
GenericError = 1,
|
||||
InvalidParameter = 2,
|
||||
OutOfMemory = 3,
|
||||
ObjectBusy = 4,
|
||||
InsufficientBuffer = 5,
|
||||
NotImplemented = 6,
|
||||
Win32Error = 7,
|
||||
WrongState = 8,
|
||||
Aborted = 9,
|
||||
FileNotFound = 10,
|
||||
ValueOverflow = 11,
|
||||
AccessDenied = 12,
|
||||
UnknownImageFormat = 13,
|
||||
FontFamilyNotFound = 14,
|
||||
FontStyleNotFound = 15,
|
||||
NotTrueTypeFont = 16,
|
||||
UnsupportedGdiplusVersion = 17,
|
||||
GdiplusNotInitialized = 18,
|
||||
PropertyNotFound = 19,
|
||||
PropertyNotSupported = 20,
|
||||
ProfileNotFound = 21
|
||||
};
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
typedef BOOL(CALLBACK *ImageAbort)(VOID *);
|
||||
typedef ImageAbort DrawImageAbort;
|
||||
typedef ImageAbort GetThumbnailImageAbort;
|
||||
typedef struct GdiplusAbort GdiplusAbort;
|
||||
typedef BOOL (CALLBACK * ImageAbort)(VOID *);
|
||||
typedef ImageAbort DrawImageAbort;
|
||||
typedef ImageAbort GetThumbnailImageAbort;
|
||||
typedef struct GdiplusAbort GdiplusAbort;
|
||||
|
||||
typedef BOOL(CALLBACK *EnumerateMetafileProc)(EmfPlusRecordType, UINT, UINT, const BYTE *, VOID *);
|
||||
typedef BOOL (CALLBACK * EnumerateMetafileProc)(EmfPlusRecordType,UINT,UINT,const BYTE*,VOID*);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
||||
class Size;
|
||||
|
||||
class Point
|
||||
{
|
||||
public:
|
||||
Point()
|
||||
{
|
||||
X = Y = 0;
|
||||
}
|
||||
public:
|
||||
Point()
|
||||
{
|
||||
X = Y = 0;
|
||||
}
|
||||
|
||||
Point(IN const Point &pt)
|
||||
{
|
||||
X = pt.X;
|
||||
Y = pt.Y;
|
||||
}
|
||||
Point(IN const Point &pt)
|
||||
{
|
||||
X = pt.X;
|
||||
Y = pt.Y;
|
||||
}
|
||||
|
||||
Point(const Size &size);
|
||||
|
||||
Point(IN INT x, IN INT y)
|
||||
{
|
||||
X = x;
|
||||
Y = y;
|
||||
}
|
||||
Point(IN INT x, IN INT y)
|
||||
{
|
||||
X = x;
|
||||
Y = y;
|
||||
}
|
||||
|
||||
Point
|
||||
operator+(IN const Point &pt) const
|
||||
{
|
||||
return Point(X + pt.X, Y + pt.Y);
|
||||
}
|
||||
Point operator+(IN const Point& pt) const
|
||||
{
|
||||
return Point(X + pt.X, Y + pt.Y);
|
||||
}
|
||||
|
||||
Point
|
||||
operator-(IN const Point &pt) const
|
||||
{
|
||||
return Point(X - pt.X, Y - pt.Y);
|
||||
}
|
||||
Point operator-(IN const Point& pt) const
|
||||
{
|
||||
return Point(X - pt.X, Y - pt.Y);
|
||||
}
|
||||
|
||||
BOOL
|
||||
Equals(IN const Point &pt) const
|
||||
{
|
||||
return (X == pt.X) && (Y == pt.Y);
|
||||
}
|
||||
BOOL Equals(IN const Point& pt)
|
||||
{
|
||||
return (X == pt.X) && (Y == pt.Y);
|
||||
}
|
||||
|
||||
public:
|
||||
public:
|
||||
INT X;
|
||||
INT Y;
|
||||
};
|
||||
@@ -116,52 +113,49 @@ class SizeF;
|
||||
|
||||
class PointF
|
||||
{
|
||||
public:
|
||||
PointF()
|
||||
{
|
||||
X = Y = 0.0f;
|
||||
}
|
||||
public:
|
||||
PointF()
|
||||
{
|
||||
X = Y = 0.0f;
|
||||
}
|
||||
|
||||
PointF(IN const PointF &pt)
|
||||
{
|
||||
X = pt.X;
|
||||
Y = pt.Y;
|
||||
}
|
||||
PointF(IN const PointF &pt)
|
||||
{
|
||||
X = pt.X;
|
||||
Y = pt.Y;
|
||||
}
|
||||
|
||||
PointF(const SizeF &size);
|
||||
|
||||
PointF(IN REAL x, IN REAL y)
|
||||
{
|
||||
X = x;
|
||||
Y = y;
|
||||
}
|
||||
PointF(IN REAL x, IN REAL y)
|
||||
{
|
||||
X = x;
|
||||
Y = y;
|
||||
}
|
||||
|
||||
PointF
|
||||
operator+(IN const PointF &pt) const
|
||||
{
|
||||
return PointF(X + pt.X, Y + pt.Y);
|
||||
}
|
||||
PointF operator+(IN const PointF& pt) const
|
||||
{
|
||||
return PointF(X + pt.X, Y + pt.Y);
|
||||
}
|
||||
|
||||
PointF
|
||||
operator-(IN const PointF &pt) const
|
||||
{
|
||||
return PointF(X - pt.X, Y - pt.Y);
|
||||
}
|
||||
PointF operator-(IN const PointF& pt) const
|
||||
{
|
||||
return PointF(X - pt.X, Y - pt.Y);
|
||||
}
|
||||
|
||||
BOOL
|
||||
Equals(IN const PointF &pt) const
|
||||
{
|
||||
return (X == pt.X) && (Y == pt.Y);
|
||||
}
|
||||
BOOL Equals(IN const PointF& pt)
|
||||
{
|
||||
return (X == pt.X) && (Y == pt.Y);
|
||||
}
|
||||
|
||||
public:
|
||||
public:
|
||||
REAL X;
|
||||
REAL Y;
|
||||
};
|
||||
|
||||
class PathData
|
||||
{
|
||||
public:
|
||||
public:
|
||||
PathData()
|
||||
{
|
||||
Count = 0;
|
||||
@@ -182,15 +176,14 @@ class PathData
|
||||
}
|
||||
}
|
||||
|
||||
private:
|
||||
private:
|
||||
PathData(const PathData &);
|
||||
PathData &
|
||||
operator=(const PathData &);
|
||||
PathData& operator=(const PathData &);
|
||||
|
||||
public:
|
||||
public:
|
||||
INT Count;
|
||||
PointF *Points;
|
||||
BYTE *Types;
|
||||
PointF* Points;
|
||||
BYTE* Types;
|
||||
};
|
||||
|
||||
class SizeF
|
||||
@@ -240,13 +233,14 @@ class SizeF
|
||||
|
||||
class RectF
|
||||
{
|
||||
public:
|
||||
public:
|
||||
REAL X;
|
||||
REAL Y;
|
||||
REAL Width;
|
||||
REAL Height;
|
||||
|
||||
RectF() : X(0), Y(0), Width(0), Height(0)
|
||||
RectF()
|
||||
: X(0), Y(0), Width(0), Height(0)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -255,7 +249,8 @@ class RectF
|
||||
{
|
||||
}
|
||||
|
||||
RectF(REAL x, REAL y, REAL width, REAL height) : X(x), Y(y), Width(width), Height(height)
|
||||
RectF(REAL x, REAL y, REAL width, REAL height)
|
||||
: X(x), Y(y), Width(width), Height(height)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -443,13 +438,14 @@ class Size
|
||||
|
||||
class Rect
|
||||
{
|
||||
public:
|
||||
public:
|
||||
INT X;
|
||||
INT Y;
|
||||
INT Width;
|
||||
INT Height;
|
||||
|
||||
Rect() : X(0), Y(0), Width(0), Height(0)
|
||||
Rect()
|
||||
: X(0), Y(0), Width(0), Height(0)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -457,7 +453,8 @@ class Rect
|
||||
{
|
||||
}
|
||||
|
||||
Rect(INT x, INT y, INT width, INT height) : X(x), Y(y), Width(width), Height(height)
|
||||
Rect(INT x, INT y, INT width, INT height)
|
||||
: X(x), Y(y), Width(width), Height(height)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -602,7 +599,7 @@ class Rect
|
||||
|
||||
class CharacterRange
|
||||
{
|
||||
public:
|
||||
public:
|
||||
CharacterRange()
|
||||
{
|
||||
First = Length = 0;
|
||||
@@ -614,15 +611,13 @@ class CharacterRange
|
||||
Length = length;
|
||||
}
|
||||
|
||||
CharacterRange &
|
||||
operator=(const CharacterRange &rhs)
|
||||
CharacterRange& operator=(const CharacterRange& rhs)
|
||||
{
|
||||
First = rhs.First;
|
||||
Length = rhs.Length;
|
||||
return *this;
|
||||
}
|
||||
|
||||
public:
|
||||
public:
|
||||
INT First;
|
||||
INT Length;
|
||||
};
|
||||
@@ -652,8 +647,8 @@ typedef struct PointF
|
||||
typedef struct PathData
|
||||
{
|
||||
INT Count;
|
||||
PointF *Points;
|
||||
BYTE *Types;
|
||||
PointF* Points;
|
||||
BYTE* Types;
|
||||
} PathData;
|
||||
|
||||
typedef struct RectF
|
||||
|
||||
Reference in New Issue
Block a user