| /** |
| * This file has no copyright assigned and is placed in the Public Domain. |
| * This file is part of the mingw-w64 runtime package. |
| * No warranty is given; refer to the file DISCLAIMER.PD within this package. |
| */ |
| |
| #ifndef DWRITE_2_H_INCLUDED |
| #define DWRITE_2_H_INCLUDED |
| |
| #include <dwrite_1.h> |
| |
| typedef enum DWRITE_GRID_FIT_MODE |
| { |
| DWRITE_GRID_FIT_MODE_DEFAULT, |
| DWRITE_GRID_FIT_MODE_DISABLED, |
| DWRITE_GRID_FIT_MODE_ENABLED |
| } DWRITE_GRID_FIT_MODE; |
| |
| #ifndef D3DCOLORVALUE_DEFINED |
| #define D3DCOLORVALUE_DEFINED |
| typedef struct _D3DCOLORVALUE { |
| union { |
| FLOAT r; |
| FLOAT dvR; |
| } DUMMYUNIONNAME1; |
| union { |
| FLOAT g; |
| FLOAT dvG; |
| } DUMMYUNIONNAME2; |
| union { |
| FLOAT b; |
| FLOAT dvB; |
| } DUMMYUNIONNAME3; |
| union { |
| FLOAT a; |
| FLOAT dvA; |
| } DUMMYUNIONNAME4; |
| } D3DCOLORVALUE,*LPD3DCOLORVALUE; |
| #endif /* D3DCOLORVALUE_DEFINED */ |
| |
| typedef D3DCOLORVALUE DWRITE_COLOR_F; |
| |
| typedef struct DWRITE_COLOR_GLYPH_RUN |
| { |
| DWRITE_GLYPH_RUN glyphRun; |
| DWRITE_GLYPH_RUN_DESCRIPTION *glyphRunDescription; |
| FLOAT baselineOriginX; |
| FLOAT baselineOriginY; |
| DWRITE_COLOR_F runColor; |
| UINT16 paletteIndex; |
| } DWRITE_COLOR_GLYPH_RUN; |
| |
| #undef INTERFACE |
| #define INTERFACE IDWriteFontFallback |
| DECLARE_INTERFACE_(IDWriteFontFallback,IUnknown) |
| { |
| BEGIN_INTERFACE |
| |
| #ifndef __cplusplus |
| /* IUnknown methods */ |
| STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE; |
| STDMETHOD_(ULONG, AddRef)(THIS) PURE; |
| STDMETHOD_(ULONG, Release)(THIS) PURE; |
| #endif |
| |
| STDMETHOD(MapCharacters)(THIS_ |
| IDWriteTextAnalysisSource *analysisSource, |
| UINT32 textPosition, |
| UINT32 textLength, |
| IDWriteFontCollection *baseFontCollection, |
| wchar_t const *baseFamilyName, |
| DWRITE_FONT_WEIGHT baseWeight, |
| DWRITE_FONT_STYLE baseStyle, |
| DWRITE_FONT_STRETCH baseStretch, |
| UINT32 *mappedLength, |
| IDWriteFont **mappedFont, |
| FLOAT *scale) PURE; |
| |
| END_INTERFACE |
| }; |
| |
| __CRT_UUID_DECL(IDWriteFontFallback, 0xefa008f9,0xf7a1,0x48bf,0xb0,0x5c,0xf2,0x24,0x71,0x3c,0xc0,0xff) |
| |
| #undef INTERFACE |
| #define INTERFACE IDWriteFontFallbackBuilder |
| DECLARE_INTERFACE_(IDWriteFontFallbackBuilder,IUnknown) |
| { |
| BEGIN_INTERFACE |
| |
| #ifndef __cplusplus |
| /* IUnknown methods */ |
| STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE; |
| STDMETHOD_(ULONG, AddRef)(THIS) PURE; |
| STDMETHOD_(ULONG, Release)(THIS) PURE; |
| #endif |
| |
| STDMETHOD(AddMapping)(THIS_ |
| DWRITE_UNICODE_RANGE const *ranges, |
| UINT32 rangesCount, |
| WCHAR const **targetFamilyNames, |
| UINT32 targetFamilyNamesCount, |
| IDWriteFontCollection *fontCollection __MINGW_DEF_ARG_VAL(NULL), |
| WCHAR const *localeName __MINGW_DEF_ARG_VAL(NULL), |
| WCHAR const *baseFamilyName __MINGW_DEF_ARG_VAL(NULL), |
| FLOAT scale __MINGW_DEF_ARG_VAL(1.0f)) PURE; |
| |
| STDMETHOD(AddMappings)(THIS_ |
| IDWriteFontFallback *fontFallback) PURE; |
| |
| STDMETHOD(CreateFontFallback)(THIS_ |
| IDWriteFontFallback **fontFallback) PURE; |
| |
| END_INTERFACE |
| }; |
| |
| __CRT_UUID_DECL(IDWriteFontFallbackBuilder, 0xfd882d06,0x8aba,0x4fb8,0xb8,0x49,0x8b,0xe8,0xb7,0x3e,0x14,0xde) |
| |
| #undef INTERFACE |
| #define INTERFACE IDWriteColorGlyphRunEnumerator |
| DECLARE_INTERFACE_(IDWriteColorGlyphRunEnumerator,IUnknown) |
| { |
| BEGIN_INTERFACE |
| |
| #ifndef __cplusplus |
| /* IUnknown methods */ |
| STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE; |
| STDMETHOD_(ULONG, AddRef)(THIS) PURE; |
| STDMETHOD_(ULONG, Release)(THIS) PURE; |
| #endif |
| |
| STDMETHOD(MoveNext)(THIS_ |
| BOOL *hasRun) PURE; |
| |
| STDMETHOD(GetCurrentRun)(THIS_ |
| DWRITE_COLOR_GLYPH_RUN const **colorGlyphRun) PURE; |
| |
| END_INTERFACE |
| }; |
| |
| __CRT_UUID_DECL(IDWriteColorGlyphRunEnumerator, 0xd31fbe17,0xf157,0x41a2,0x8d,0x24,0xcb,0x77,0x9e,0x05,0x60,0xe8) |
| |
| #undef INTERFACE |
| #define INTERFACE IDWriteRenderingParams2 |
| DECLARE_INTERFACE_(IDWriteRenderingParams2,IDWriteRenderingParams1) |
| { |
| BEGIN_INTERFACE |
| |
| #ifndef __cplusplus |
| /* IUnknown methods */ |
| STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE; |
| STDMETHOD_(ULONG, AddRef)(THIS) PURE; |
| STDMETHOD_(ULONG, Release)(THIS) PURE; |
| |
| /* IDWriteRenderingParams methods */ |
| STDMETHOD_(FLOAT, GetGamma)(THIS) PURE; |
| STDMETHOD_(FLOAT, GetEnhancedContrast)(THIS) PURE; |
| STDMETHOD_(FLOAT, GetClearTypeLevel)(THIS) PURE; |
| STDMETHOD_(DWRITE_PIXEL_GEOMETRY, GetPixelGeometry)(THIS) PURE; |
| STDMETHOD_(DWRITE_RENDERING_MODE, GetRenderingMode)(THIS) PURE; |
| |
| /* IDWriteRenderingParams1 methods */ |
| STDMETHOD_(FLOAT, GetGrayscaleEnhancedContrast)(THIS) PURE; |
| #endif |
| |
| /* IDWriteRenderingParams2 methods */ |
| STDMETHOD_(DWRITE_GRID_FIT_MODE, GetGridFitMode)(THIS) PURE; |
| |
| END_INTERFACE |
| }; |
| |
| __CRT_UUID_DECL(IDWriteRenderingParams2, 0xf9d711c3,0x9777,0x40ae,0x87,0xe8,0x3e,0x5a,0xf9,0xbf,0x09,0x48) |
| |
| #undef INTERFACE |
| #define INTERFACE IDWriteFactory2 |
| DECLARE_INTERFACE_(IDWriteFactory2,IDWriteFactory1) |
| { |
| BEGIN_INTERFACE |
| |
| #ifndef __cplusplus |
| /* IUnknown methods */ |
| STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE; |
| STDMETHOD_(ULONG, AddRef)(THIS) PURE; |
| STDMETHOD_(ULONG, Release)(THIS) PURE; |
| |
| /* IDWriteFactory methods */ |
| STDMETHOD(GetSystemFontCollection)(THIS_ |
| IDWriteFontCollection **fontCollection, |
| WINBOOL checkForUpdates __MINGW_DEF_ARG_VAL(FALSE)) PURE; |
| |
| STDMETHOD(CreateCustomFontCollection)(THIS_ |
| IDWriteFontCollectionLoader *collectionLoader, |
| void const *collectionKey, |
| UINT32 collectionKeySize, |
| IDWriteFontCollection **fontCollection) PURE; |
| |
| STDMETHOD(RegisterFontCollectionLoader)(THIS_ |
| IDWriteFontCollectionLoader *fontCollectionLoader) PURE; |
| |
| STDMETHOD(UnregisterFontCollectionLoader)(THIS_ |
| IDWriteFontCollectionLoader *fontCollectionLoader) PURE; |
| |
| STDMETHOD(CreateFontFileReference)(THIS_ |
| WCHAR const *filePath, |
| FILETIME const *lastWriteTime, |
| IDWriteFontFile **fontFile) PURE; |
| |
| STDMETHOD(CreateCustomFontFileReference)(THIS_ |
| void const *fontFileReferenceKey, |
| UINT32 fontFileReferenceKeySize, |
| IDWriteFontFileLoader *fontFileLoader, |
| IDWriteFontFile **fontFile) PURE; |
| |
| STDMETHOD(CreateFontFace)(THIS_ |
| DWRITE_FONT_FACE_TYPE fontFaceType, |
| UINT32 numberOfFiles, |
| IDWriteFontFile *const *fontFiles, |
| UINT32 faceIndex, |
| DWRITE_FONT_SIMULATIONS fontFaceSimulationFlags, |
| IDWriteFontFace **fontFace) PURE; |
| |
| STDMETHOD(CreateRenderingParams)(THIS_ |
| IDWriteRenderingParams **renderingParams) PURE; |
| |
| STDMETHOD(CreateMonitorRenderingParams)(THIS_ |
| HMONITOR monitor, |
| IDWriteRenderingParams **renderingParams) PURE; |
| |
| STDMETHOD(CreateCustomRenderingParams)(THIS_ |
| FLOAT gamma, |
| FLOAT enhancedContrast, |
| FLOAT clearTypeLevel, |
| DWRITE_PIXEL_GEOMETRY pixelGeometry, |
| DWRITE_RENDERING_MODE renderingMode, |
| IDWriteRenderingParams **renderingParams) PURE; |
| |
| STDMETHOD(RegisterFontFileLoader)(THIS_ |
| IDWriteFontFileLoader *fontFileLoader) PURE; |
| |
| STDMETHOD(UnregisterFontFileLoader)(THIS_ |
| IDWriteFontFileLoader *fontFileLoader) PURE; |
| |
| STDMETHOD(CreateTextFormat)(THIS_ |
| WCHAR const *fontFamilyName, |
| IDWriteFontCollection *fontCollection, |
| DWRITE_FONT_WEIGHT fontWeight, |
| DWRITE_FONT_STYLE fontStyle, |
| DWRITE_FONT_STRETCH fontStretch, |
| FLOAT fontSize, |
| WCHAR const *localeName, |
| IDWriteTextFormat **textFormat) PURE; |
| |
| STDMETHOD(CreateTypography)(THIS_ |
| IDWriteTypography **typography) PURE; |
| |
| STDMETHOD(GetGdiInterop)(THIS_ |
| IDWriteGdiInterop **gdiInterop) PURE; |
| |
| STDMETHOD(CreateTextLayout)(THIS_ |
| WCHAR const *string, |
| UINT32 stringLength, |
| IDWriteTextFormat *textFormat, |
| FLOAT maxWidth, |
| FLOAT maxHeight, |
| IDWriteTextLayout **textLayout) PURE; |
| |
| STDMETHOD(CreateGdiCompatibleTextLayout)(THIS_ |
| WCHAR const *string, |
| UINT32 stringLength, |
| IDWriteTextFormat *textFormat, |
| FLOAT layoutWidth, |
| FLOAT layoutHeight, |
| FLOAT pixelsPerDip, |
| DWRITE_MATRIX const *transform, |
| WINBOOL useGdiNatural, |
| IDWriteTextLayout **textLayout) PURE; |
| |
| STDMETHOD(CreateEllipsisTrimmingSign)(THIS_ |
| IDWriteTextFormat *textFormat, |
| IDWriteInlineObject **trimmingSign) PURE; |
| |
| STDMETHOD(CreateTextAnalyzer)(THIS_ |
| IDWriteTextAnalyzer **textAnalyzer) PURE; |
| |
| STDMETHOD(CreateNumberSubstitution)(THIS_ |
| DWRITE_NUMBER_SUBSTITUTION_METHOD substitutionMethod, |
| WCHAR const *localeName, |
| WINBOOL ignoreUserOverride, |
| IDWriteNumberSubstitution **numberSubstitution) PURE; |
| |
| STDMETHOD(CreateGlyphRunAnalysis)(THIS_ |
| DWRITE_GLYPH_RUN const *glyphRun, |
| FLOAT pixelsPerDip, |
| DWRITE_MATRIX const *transform, |
| DWRITE_RENDERING_MODE renderingMode, |
| DWRITE_MEASURING_MODE measuringMode, |
| FLOAT baselineOriginX, |
| FLOAT baselineOriginY, |
| IDWriteGlyphRunAnalysis **glyphRunAnalysis) PURE; |
| |
| /* IDWriteFactory1 methods */ |
| STDMETHOD(GetEudcFontCollection)(THIS_ |
| IDWriteFontCollection **fontCollection, |
| BOOL checkForUpdates __MINGW_DEF_ARG_VAL(FALSE)) PURE; |
| |
| STDMETHOD(CreateCustomRenderingParams)(THIS_ |
| FLOAT gamma, |
| FLOAT enhancedContrast, |
| FLOAT enhancedContrastGrayscale, |
| FLOAT clearTypeLevel, |
| DWRITE_PIXEL_GEOMETRY pixelGeometry, |
| DWRITE_RENDERING_MODE renderingMode, |
| IDWriteRenderingParams1 **renderingParams) PURE; |
| #endif |
| |
| /* IDWriteFactory2 methods */ |
| STDMETHOD(GetSystemFontFallback)(THIS_ |
| IDWriteFontFallback **fontFallback) PURE; |
| |
| STDMETHOD(CreateFontFallbackBuilder)(THIS_ |
| IDWriteFontFallbackBuilder **fontFallbackBuilder) PURE; |
| |
| STDMETHOD(TranslateColorGlyphRun)(THIS_ |
| FLOAT baselineOriginX, |
| FLOAT baselineOriginY, |
| DWRITE_GLYPH_RUN const *glyphRun, |
| DWRITE_GLYPH_RUN_DESCRIPTION const *glyphRunDescription, |
| DWRITE_MEASURING_MODE measuringMode, |
| DWRITE_MATRIX const *worldToDeviceTransform, |
| UINT32 colorPaletteIndex, |
| IDWriteColorGlyphRunEnumerator **colorLayers) PURE; |
| |
| STDMETHOD(CreateCustomRenderingParams)(THIS_ |
| FLOAT gamma, |
| FLOAT enhancedContrast, |
| FLOAT grayscaleEnhancedContrast, |
| FLOAT clearTypeLevel, |
| DWRITE_PIXEL_GEOMETRY pixelGeometry, |
| DWRITE_RENDERING_MODE renderingMode, |
| DWRITE_GRID_FIT_MODE gridFitMode, |
| IDWriteRenderingParams2 **renderingParams) PURE; |
| |
| #ifdef __cplusplus |
| using IDWriteFactory::CreateCustomRenderingParams; |
| using IDWriteFactory1::CreateCustomRenderingParams; |
| #endif |
| |
| STDMETHOD(CreateGlyphRunAnalysis)(THIS_ |
| DWRITE_GLYPH_RUN const *glyphRun, |
| DWRITE_MATRIX const *transform, |
| DWRITE_RENDERING_MODE renderingMode, |
| DWRITE_MEASURING_MODE measuringMode, |
| DWRITE_GRID_FIT_MODE gridFitMode, |
| DWRITE_TEXT_ANTIALIAS_MODE antialiasMode, |
| FLOAT baselineOriginX, |
| FLOAT baselineOriginY, |
| IDWriteGlyphRunAnalysis **glyphRunAnalysis) PURE; |
| |
| #ifdef __cplusplus |
| using IDWriteFactory::CreateGlyphRunAnalysis; |
| #endif |
| |
| END_INTERFACE |
| }; |
| |
| __CRT_UUID_DECL(IDWriteFactory2, 0x0439fc60,0xca44,0x4994,0x8d,0xee,0x3a,0x9a,0xf7,0xb7,0x32,0xec) |
| |
| #endif /* DWRITE_2_H_INCLUDED */ |