| /** |
| * 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_1_H_INCLUDED |
| #define DWRITE_1_H_INCLUDED |
| |
| #include <dwrite.h> |
| |
| enum DWRITE_OUTLINE_THRESHOLD { |
| DWRITE_OUTLINE_THRESHOLD_ANTIALIASED, |
| DWRITE_OUTLINE_THRESHOLD_ALIASED |
| }; |
| |
| enum DWRITE_BASELINE |
| { |
| DWRITE_BASELINE_DEFAULT, |
| DWRITE_BASELINE_ROMAN, |
| DWRITE_BASELINE_CENTRAL, |
| DWRITE_BASELINE_MATH, |
| DWRITE_BASELINE_HANGING, |
| DWRITE_BASELINE_IDEOGRAPHIC_BOTTOM, |
| DWRITE_BASELINE_IDEOGRAPHIC_TOP, |
| DWRITE_BASELINE_MINIMUM, |
| DWRITE_BASELINE_MAXIMUM, |
| }; |
| |
| enum DWRITE_GLYPH_ORIENTATION_ANGLE |
| { |
| DWRITE_GLYPH_ORIENTATION_ANGLE_0_DEGREES, |
| DWRITE_GLYPH_ORIENTATION_ANGLE_90_DEGREES, |
| DWRITE_GLYPH_ORIENTATION_ANGLE_180_DEGREES, |
| DWRITE_GLYPH_ORIENTATION_ANGLE_270_DEGREES, |
| }; |
| |
| enum DWRITE_TEXT_ANTIALIAS_MODE |
| { |
| DWRITE_TEXT_ANTIALIAS_MODE_CLEARTYPE, |
| DWRITE_TEXT_ANTIALIAS_MODE_GRAYSCALE |
| }; |
| |
| struct DWRITE_CARET_METRICS { |
| INT16 slopeRise; |
| INT16 slopeRun; |
| INT16 offset; |
| }; |
| |
| struct DWRITE_UNICODE_RANGE { |
| UINT32 first; |
| UINT32 last; |
| }; |
| |
| struct DWRITE_FONT_METRICS1 : public DWRITE_FONT_METRICS { |
| INT16 glyphBoxLeft; |
| INT16 glyphBoxTop; |
| INT16 glyphBoxRight; |
| INT16 glyphBoxBottom; |
| INT16 subscriptPositionX; |
| INT16 subscriptPositionY; |
| INT16 subscriptSizeX; |
| INT16 subscriptSizeY; |
| INT16 superscriptPositionX; |
| INT16 superscriptPositionY; |
| INT16 superscriptSizeX; |
| INT16 superscriptSizeY; |
| BOOL hasTypographicMetrics; |
| }; |
| |
| struct DWRITE_SCRIPT_PROPERTIES |
| { |
| UINT32 isoScriptCode; |
| UINT32 isoScriptNumber; |
| UINT32 clusterLookahead; |
| UINT32 justificationCharacter; |
| UINT32 restrictCaretToClusters : 1; |
| UINT32 usesWordDividers : 1; |
| UINT32 isDiscreteWriting : 1; |
| UINT32 isBlockWriting : 1; |
| UINT32 isDistributedWithinCluster : 1; |
| UINT32 isConnectedWriting : 1; |
| UINT32 isCursiveWriting : 1; |
| UINT32 reserved : 25; |
| }; |
| |
| struct DWRITE_JUSTIFICATION_OPPORTUNITY |
| { |
| FLOAT expansionMinimum; |
| FLOAT expansionMaximum; |
| FLOAT compressionMaximum; |
| UINT32 expansionPriority : 8; |
| UINT32 compressionPriority : 8; |
| UINT32 allowResidualExpansion : 1; |
| UINT32 allowResidualCompression : 1; |
| UINT32 applyToLeadingEdge : 1; |
| UINT32 applyToTrailingEdge : 1; |
| UINT32 reserved : 12; |
| }; |
| |
| union DWRITE_PANOSE { |
| UINT8 values[10]; |
| UINT8 familyKind; |
| struct { |
| UINT8 familyKind; |
| UINT8 serifStyle; |
| UINT8 weight; |
| UINT8 proportion; |
| UINT8 contrast; |
| UINT8 strokeVariation; |
| UINT8 armStyle; |
| UINT8 letterform; |
| UINT8 midline; |
| UINT8 xHeight; |
| } text; |
| struct { |
| UINT8 familyKind; |
| UINT8 toolKind; |
| UINT8 weight; |
| UINT8 spacing; |
| UINT8 aspectRatio; |
| UINT8 contrast; |
| UINT8 scriptTopology; |
| UINT8 scriptForm; |
| UINT8 finials; |
| UINT8 xAscent; |
| } script; |
| struct { |
| UINT8 familyKind; |
| UINT8 decorativeClass; |
| UINT8 weight; |
| UINT8 aspect; |
| UINT8 contrast; |
| UINT8 serifVariant; |
| UINT8 fill; |
| UINT8 lining; |
| UINT8 decorativeTopology; |
| UINT8 characterRange; |
| } decorative; |
| struct { |
| UINT8 familyKind; |
| UINT8 symbolKind; |
| UINT8 weight; |
| UINT8 spacing; |
| UINT8 aspectRatioAndContrast; |
| UINT8 aspectRatio94; |
| UINT8 aspectRatio119; |
| UINT8 aspectRatio157; |
| UINT8 aspectRatio163; |
| UINT8 aspectRatio211; |
| } symbol; |
| }; |
| |
| #undef INTERFACE |
| #define INTERFACE IDWriteFontCollection |
| DECLARE_INTERFACE_(IDWriteFontFace1, IDWriteFontFace) |
| { |
| BEGIN_INTERFACE |
| |
| #ifndef __cplusplus |
| /* IUnknown methods */ |
| STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE; |
| STDMETHOD_(ULONG, AddRef)(THIS) PURE; |
| STDMETHOD_(ULONG, Release)(THIS) PURE; |
| |
| /* IDWriteFontFace methods */ |
| STDMETHOD_(DWRITE_FONT_FACE_TYPE, GetType)(THIS) PURE; |
| |
| STDMETHOD(GetFiles)(THIS_ |
| UINT32 *numberOfFiles, |
| IDWriteFontFile **fontFiles) PURE; |
| |
| STDMETHOD_(UINT32, GetIndex)(THIS) PURE; |
| STDMETHOD_(DWRITE_FONT_SIMULATIONS, GetSimulations)(THIS) PURE; |
| STDMETHOD_(WINBOOL, IsSymbolFont)(THIS) PURE; |
| |
| STDMETHOD_(void, GetMetrics)(THIS_ |
| DWRITE_FONT_METRICS *fontFaceMetrics) PURE; |
| |
| STDMETHOD_(UINT16, GetGlyphCount)(THIS) PURE; |
| |
| STDMETHOD(GetDesignGlyphMetrics)(THIS_ |
| UINT16 const *glyphIndices, |
| UINT32 glyphCount, |
| DWRITE_GLYPH_METRICS *glyphMetrics, |
| WINBOOL isSideways __MINGW_DEF_ARG_VAL(FALSE)) PURE; |
| |
| STDMETHOD(GetGlyphIndices)(THIS_ |
| UINT32 const *codePoints, |
| UINT32 codePointCount, |
| UINT16 *glyphIndices) PURE; |
| |
| STDMETHOD(TryGetFontTable)(THIS_ |
| UINT32 openTypeTableTag, |
| const void **tableData, |
| UINT32 *tableSize, |
| void **tableContext, |
| WINBOOL *exists) PURE; |
| |
| STDMETHOD_(void, ReleaseFontTable)(THIS_ |
| void *tableContext) PURE; |
| |
| STDMETHOD(GetGlyphRunOutline)(THIS_ |
| FLOAT emSize, |
| UINT16 const *glyphIndices, |
| FLOAT const *glyphAdvances, |
| DWRITE_GLYPH_OFFSET const *glyphOffsets, |
| UINT32 glyphCount, |
| WINBOOL isSideways, |
| WINBOOL isRightToLeft, |
| IDWriteGeometrySink *geometrySink) PURE; |
| |
| STDMETHOD(GetRecommendedRenderingMode)(THIS_ |
| FLOAT emSize, |
| FLOAT pixelsPerDip, |
| DWRITE_MEASURING_MODE measuringMode, |
| IDWriteRenderingParams *renderingParams, |
| DWRITE_RENDERING_MODE *renderingMode) PURE; |
| |
| STDMETHOD(GetGdiCompatibleMetrics)(THIS_ |
| FLOAT emSize, |
| FLOAT pixelsPerDip, |
| DWRITE_MATRIX const *transform, |
| DWRITE_FONT_METRICS *fontFaceMetrics) PURE; |
| |
| |
| STDMETHOD(GetGdiCompatibleGlyphMetrics)(THIS_ |
| FLOAT emSize, |
| FLOAT pixelsPerDip, |
| DWRITE_MATRIX const *transform, |
| WINBOOL useGdiNatural, |
| UINT16 const *glyphIndices, |
| UINT32 glyphCount, |
| DWRITE_GLYPH_METRICS *glyphMetrics, |
| WINBOOL isSideways __MINGW_DEF_ARG_VAL(FALSE)) PURE; |
| #endif |
| |
| /* IDWriteFontFace1 methods */ |
| STDMETHOD_(void, GetMetrics)(THIS_ DWRITE_FONT_METRICS1*) PURE; |
| STDMETHOD(GetGdiCompatibleMetrics)(THIS_ FLOAT,FLOAT,DWRITE_MATRIX const*,DWRITE_FONT_METRICS1*) PURE; |
| STDMETHOD_(void, GetCaretMetrics)(THIS_ DWRITE_CARET_METRICS*) PURE; |
| STDMETHOD(GetUnicodeRanges)(THIS_ UINT32, DWRITE_UNICODE_RANGE*,UINT32*) PURE; |
| STDMETHOD_(BOOL, IsMonospacedFont)(THIS) PURE; |
| STDMETHOD(GetDesignGlyphAdvances)(THIS_ UINT32,UINT16 const*,INT32*,BOOL isSideways __MINGW_DEF_ARG_VAL(FALSE)) PURE; |
| STDMETHOD(GetGdiCompatibleGlyphAdvances)(THIS_ FLOAT,FLOAT,DWRITE_MATRIX const*,BOOL,BOOL,UINT32, |
| UINT16 const*,INT32*) PURE; |
| STDMETHOD(GetKerningPairAdjustments)(THIS_ UINT32,UINT16 const*,INT32*) PURE; |
| STDMETHOD_(BOOL, HasKerningPairs)(THIS); |
| STDMETHOD(GetRecommendedRenderingMode)(FLOAT,FLOAT,FLOAT,DWRITE_MATRIX const*,BOOL, |
| DWRITE_OUTLINE_THRESHOLD,DWRITE_MEASURING_MODE,DWRITE_RENDERING_MODE*) PURE; |
| STDMETHOD(GetVerticalGlyphVariants)(THIS_ UINT32,UINT16 const*,UINT16*); |
| STDMETHOD_(BOOL, HasVerticalGlyphVariants)(THIS); |
| }; |
| |
| __CRT_UUID_DECL(IDWriteFontFace1, 0xa71efdb4,0x9fdb,0x4838,0xad,0x90,0xcf,0xc3,0xbe,0x8c,0x3d,0xaf); |
| |
| #undef INTERFACE |
| #define INTERFACE IDWriteRenderingParams1 |
| DECLARE_INTERFACE_(IDWriteRenderingParams1,IDWriteRenderingParams) |
| { |
| 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; |
| #endif |
| |
| /* IDWriteRenderingParams1 methods */ |
| STDMETHOD_(FLOAT, GetGrayscaleEnhancedContrast)(THIS) PURE; |
| |
| END_INTERFACE |
| }; |
| |
| __CRT_UUID_DECL(IDWriteRenderingParams1, 0x94413cf4,0xa6fc,0x4248,0x8b,0x50,0x66,0x74,0x34,0x8f,0xca,0xd3) |
| |
| interface IDWriteTextAnalysisSource1; |
| interface IDWriteTextAnalysisSink1; |
| interface IDWriteRenderingParams1; |
| |
| #undef INTERFACE |
| #define INTERFACE IDWriteTextAnalyzer1 |
| DECLARE_INTERFACE_(IDWriteTextAnalyzer1,IDWriteTextAnalyzer) |
| { |
| BEGIN_INTERFACE |
| |
| #ifndef __cplusplus |
| /* IUnknown methods */ |
| STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE; |
| STDMETHOD_(ULONG, AddRef)(THIS) PURE; |
| STDMETHOD_(ULONG, Release)(THIS) PURE; |
| |
| /* IDWriteTextAnalyzer methods */ |
| STDMETHOD(AnalyzeScript)(THIS_ |
| IDWriteTextAnalysisSource* analysisSource, |
| UINT32 textPosition, |
| UINT32 textLength, |
| IDWriteTextAnalysisSink *analysisSink) PURE; |
| |
| STDMETHOD(AnalyzeBidi)(THIS_ |
| IDWriteTextAnalysisSource *analysisSource, |
| UINT32 textPosition, |
| UINT32 textLength, |
| IDWriteTextAnalysisSink *analysisSink) PURE; |
| |
| STDMETHOD(AnalyzeNumberSubstitution)(THIS_ |
| IDWriteTextAnalysisSource *analysisSource, |
| UINT32 textPosition, |
| UINT32 textLength, |
| IDWriteTextAnalysisSink *analysisSink) PURE; |
| |
| STDMETHOD(AnalyzeLineBreakpoints)(THIS_ |
| IDWriteTextAnalysisSource *analysisSource, |
| UINT32 textPosition, |
| UINT32 textLength, |
| IDWriteTextAnalysisSink *analysisSink) PURE; |
| |
| STDMETHOD(GetGlyphs)(THIS_ |
| WCHAR const *textString, |
| UINT32 textLength, |
| IDWriteFontFace *fontFace, |
| WINBOOL isSideways, |
| WINBOOL isRightToLeft, |
| DWRITE_SCRIPT_ANALYSIS const *scriptAnalysis, |
| WCHAR const *localeName, |
| IDWriteNumberSubstitution *numberSubstitution, |
| DWRITE_TYPOGRAPHIC_FEATURES const **features, |
| UINT32 const *featureRangeLengths, |
| UINT32 featureRanges, |
| UINT32 maxGlyphCount, |
| UINT16 *clusterMap, |
| DWRITE_SHAPING_TEXT_PROPERTIES *textProps, |
| UINT16 *glyphIndices, |
| DWRITE_SHAPING_GLYPH_PROPERTIES *glyphProps, |
| UINT32 *actualGlyphCount) PURE; |
| |
| STDMETHOD(GetGlyphPlacements)(THIS_ |
| WCHAR const *textString, |
| UINT16 const *clusterMap, |
| DWRITE_SHAPING_TEXT_PROPERTIES *textProps, |
| UINT32 textLength, |
| UINT16 const *glyphIndices, |
| DWRITE_SHAPING_GLYPH_PROPERTIES const *glyphProps, |
| UINT32 glyphCount, |
| IDWriteFontFace *fontFace, |
| FLOAT fontEmSize, |
| WINBOOL isSideways, |
| WINBOOL isRightToLeft, |
| DWRITE_SCRIPT_ANALYSIS const *scriptAnalysis, |
| WCHAR const *localeName, |
| DWRITE_TYPOGRAPHIC_FEATURES const **features, |
| UINT32 const *featureRangeLengths, |
| UINT32 featureRanges, |
| FLOAT *glyphAdvances, |
| DWRITE_GLYPH_OFFSET *glyphOffsets) PURE; |
| |
| STDMETHOD(GetGdiCompatibleGlyphPlacements)(THIS_ |
| WCHAR const *textString, |
| UINT16 const *clusterMap, |
| DWRITE_SHAPING_TEXT_PROPERTIES *textProps, |
| UINT32 textLength, |
| UINT16 const *glyphIndices, |
| DWRITE_SHAPING_GLYPH_PROPERTIES const *glyphProps, |
| UINT32 glyphCount, |
| IDWriteFontFace *fontFace, |
| FLOAT fontEmSize, |
| FLOAT pixelsPerDip, |
| DWRITE_MATRIX const *transform, |
| WINBOOL useGdiNatural, |
| WINBOOL isSideways, |
| WINBOOL isRightToLeft, |
| DWRITE_SCRIPT_ANALYSIS const* scriptAnalysis, |
| WCHAR const *localeName, |
| DWRITE_TYPOGRAPHIC_FEATURES const **features, |
| UINT32 const *featureRangeLengths, |
| UINT32 featureRanges, |
| FLOAT *glyphAdvances, |
| DWRITE_GLYPH_OFFSET *glyphOffsets) PURE; |
| #endif |
| |
| /* IDWriteTextAnalyzer1 methods */ |
| STDMETHOD(ApplyCharacterSpacing)(THIS_ |
| FLOAT leadingSpacing, |
| FLOAT trailingSpacing, |
| FLOAT minimumAdvanceWidth, |
| UINT32 textLength, |
| UINT32 glyphCount, |
| UINT16 const* clusterMap, |
| FLOAT const* glyphAdvances, |
| DWRITE_GLYPH_OFFSET const* glyphOffsets, |
| DWRITE_SHAPING_GLYPH_PROPERTIES const* glyphProperties, |
| FLOAT* modifiedGlyphAdvances, |
| DWRITE_GLYPH_OFFSET* modifiedGlyphOffsets) PURE; |
| |
| STDMETHOD(GetBaseline)(THIS_ |
| IDWriteFontFace* fontFace, |
| DWRITE_BASELINE baseline, |
| BOOL isVertical, |
| BOOL isSimulationAllowed, |
| DWRITE_SCRIPT_ANALYSIS scriptAnalysis, |
| WCHAR const* localeName, |
| INT32* baselineCoordinate, |
| BOOL* exists |
| ) PURE; |
| |
| STDMETHOD(AnalyzeVerticalGlyphOrientation)( |
| IDWriteTextAnalysisSource1* analysisSource, |
| UINT32 textPosition, |
| UINT32 textLength, |
| IDWriteTextAnalysisSink1* analysisSink |
| ) PURE; |
| |
| STDMETHOD(GetGlyphOrientationTransform)( |
| DWRITE_GLYPH_ORIENTATION_ANGLE glyphOrientationAngle, |
| BOOL isSideways, |
| DWRITE_MATRIX* transform |
| ) PURE; |
| |
| STDMETHOD(GetScriptProperties)( |
| DWRITE_SCRIPT_ANALYSIS scriptAnalysis, |
| DWRITE_SCRIPT_PROPERTIES* scriptProperties |
| ) PURE; |
| |
| STDMETHOD(GetTextComplexity)( |
| WCHAR const* textString, |
| UINT32 textLength, |
| IDWriteFontFace* fontFace, |
| BOOL* isTextSimple, |
| UINT32* textLengthRead, |
| UINT16* glyphIndices |
| ) PURE; |
| |
| STDMETHOD(GetJustificationOpportunities)( |
| IDWriteFontFace* fontFace, |
| FLOAT fontEmSize, |
| DWRITE_SCRIPT_ANALYSIS scriptAnalysis, |
| UINT32 textLength, |
| UINT32 glyphCount, |
| WCHAR const* textString, |
| UINT16 const* clusterMap, |
| DWRITE_SHAPING_GLYPH_PROPERTIES const* glyphProperties, |
| DWRITE_JUSTIFICATION_OPPORTUNITY* justificationOpportunities |
| ) PURE; |
| |
| STDMETHOD(JustifyGlyphAdvances)( |
| FLOAT lineWidth, |
| UINT32 glyphCount, |
| DWRITE_JUSTIFICATION_OPPORTUNITY const* justificationOpportunities, |
| FLOAT const* glyphAdvances, |
| DWRITE_GLYPH_OFFSET const* glyphOffsets, |
| FLOAT* justifiedGlyphAdvances, |
| DWRITE_GLYPH_OFFSET* justifiedGlyphOffsets |
| ) PURE; |
| |
| STDMETHOD(GetJustifiedGlyphs)( |
| IDWriteFontFace* fontFace, |
| FLOAT fontEmSize, |
| DWRITE_SCRIPT_ANALYSIS scriptAnalysis, |
| UINT32 textLength, |
| UINT32 glyphCount, |
| UINT32 maxGlyphCount, |
| UINT16 const* clusterMap, |
| UINT16 const* glyphIndices, |
| FLOAT const* glyphAdvances, |
| FLOAT const* justifiedGlyphAdvances, |
| DWRITE_GLYPH_OFFSET const* justifiedGlyphOffsets, |
| DWRITE_SHAPING_GLYPH_PROPERTIES const* glyphProperties, |
| UINT32* actualGlyphCount, |
| UINT16* modifiedClusterMap, |
| UINT16* modifiedGlyphIndices, |
| FLOAT* modifiedGlyphAdvances, |
| DWRITE_GLYPH_OFFSET* modifiedGlyphOffsets |
| ) PURE; |
| |
| END_INTERFACE |
| }; |
| |
| __CRT_UUID_DECL(IDWriteTextAnalyzer1, 0x80dad800,0xe21f,0x4e83,0x4e,0xce,0xbf,0xcc,0xe5,0x00,0xdb,0x7c); |
| |
| #undef INTERFACE |
| #define INTERFACE IDWriteFactory1 |
| DECLARE_INTERFACE_(IDWriteFactory1,IDWriteFactory) |
| { |
| 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; |
| #endif |
| |
| /* 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; |
| |
| #ifdef __cplusplus |
| using IDWriteFactory::CreateCustomRenderingParams; |
| #endif |
| |
| END_INTERFACE |
| }; |
| |
| __CRT_UUID_DECL(IDWriteFactory1, 0x30572f99,0xdac6,0x41db,0xa1,0x6e,0x04,0x86,0x30,0x7e,0x60,0x6a) |
| |
| #undef INTERFACE |
| #define INTERFACE IDWriteBitmapRenderTarget1 |
| DECLARE_INTERFACE_(IDWriteBitmapRenderTarget1,IDWriteBitmapRenderTarget) |
| { |
| BEGIN_INTERFACE |
| |
| #ifndef __cplusplus |
| /* IUnknown methods */ |
| STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE; |
| STDMETHOD_(ULONG, AddRef)(THIS) PURE; |
| STDMETHOD_(ULONG, Release)(THIS) PURE; |
| |
| /* IDWriteBitmapRenderTarget methods */ |
| STDMETHOD(DrawGlyphRun)(THIS_ |
| FLOAT baselineOriginX, |
| FLOAT baselineOriginY, |
| DWRITE_MEASURING_MODE measuringMode, |
| DWRITE_GLYPH_RUN const *glyphRun, |
| IDWriteRenderingParams *renderingParams, |
| COLORREF textColor, |
| RECT *blackBoxRect __MINGW_DEF_ARG_VAL(NULL)) PURE; |
| |
| STDMETHOD_(HDC, GetMemoryDC)(THIS) PURE; |
| STDMETHOD_(FLOAT, GetPixelsPerDip)(THIS) PURE; |
| |
| STDMETHOD(SetPixelsPerDip)(THIS_ |
| FLOAT pixelsPerDip) PURE; |
| |
| STDMETHOD(GetCurrentTransform)(THIS_ |
| DWRITE_MATRIX* transform) PURE; |
| |
| STDMETHOD(SetCurrentTransform)(THIS_ |
| DWRITE_MATRIX const *transform) PURE; |
| |
| STDMETHOD(GetSize)(THIS_ |
| SIZE *size) PURE; |
| |
| STDMETHOD(Resize)(THIS_ |
| UINT32 width, |
| UINT32 height) PURE; |
| |
| #endif |
| |
| STDMETHOD_(DWRITE_TEXT_ANTIALIAS_MODE, GetTextAntialiasMode)(THIS) PURE; |
| |
| STDMETHOD(SetTextAntialiasMode)(THIS_ |
| DWRITE_TEXT_ANTIALIAS_MODE antialiasMode) PURE; |
| |
| END_INTERFACE |
| }; |
| |
| __CRT_UUID_DECL(IDWriteBitmapRenderTarget1, 0x791e8298,0x3ef3,0x4230,0x98,0x80,0xc9,0xbd,0xec,0xc4,0x20,0x64) |
| |
| #endif /* DWRITE_1_H_INCLUDED */ |