IDWriteTextAnalyzer::GetGlyphPlacements method (dwrite.h)
Places glyphs output from the GetGlyphs method according to the font and the writing system's rendering rules.
Syntax
HRESULT GetGlyphPlacements(
[in] WCHAR const *textString,
[in] UINT16 const *clusterMap,
[in] DWRITE_SHAPING_TEXT_PROPERTIES *textProps,
UINT32 textLength,
[in] UINT16 const *glyphIndices,
[in] DWRITE_SHAPING_GLYPH_PROPERTIES const *glyphProps,
UINT32 glyphCount,
IDWriteFontFace *fontFace,
FLOAT fontEmSize,
BOOL isSideways,
BOOL isRightToLeft,
[in] DWRITE_SCRIPT_ANALYSIS const *scriptAnalysis,
[in, optional] WCHAR const *localeName,
[in, optional] DWRITE_TYPOGRAPHIC_FEATURES const **features,
[in, optional] UINT32 const *featureRangeLengths,
UINT32 featureRanges,
[out] FLOAT *glyphAdvances,
[out] DWRITE_GLYPH_OFFSET *glyphOffsets
);
Parameters
[in] textString
Type: const WCHAR*
An array of characters containing the original string from which the glyphs came.
[in] clusterMap
Type: const UINT16*
A pointer to the mapping from character ranges to glyph ranges. This is returned by GetGlyphs.
[in] textProps
Type: DWRITE_SHAPING_TEXT_PROPERTIES*
A pointer to an array of structures that contains shaping properties for each character. This structure is returned by GetGlyphs.
textLength
Type: UINT32
The text length of textString.
[in] glyphIndices
Type: const UINT16*
An array of glyph indices returned by GetGlyphs.
[in] glyphProps
Type: const DWRITE_SHAPING_GLYPH_PROPERTIES*
A pointer to an array of structures that contain shaping properties for each glyph returned by GetGlyphs.
glyphCount
Type: UINT32
The number of glyphs returned from GetGlyphs.
fontFace
Type: IDWriteFontFace*
A pointer to the font face that is the source for the output glyphs.
fontEmSize
Type: FLOAT
The logical font size in DIPs.
isSideways
Type: BOOL
A Boolean flag set to TRUE if the text is intended to be drawn vertically.
isRightToLeft
Type: BOOL
A Boolean flag set to TRUE for right-to-left text.
[in] scriptAnalysis
Type: const DWRITE_SCRIPT_ANALYSIS*
A pointer to a Script analysis result from an AnalyzeScript call.
[in, optional] localeName
Type: const WCHAR*
An array of characters containing the locale to use when selecting glyphs. For example, the same character may map to different glyphs for ja-jp versus zh-chs. If this is NULL, the default mapping based on the script is used.
[in, optional] features
Type: const DWRITE_TYPOGRAPHIC_FEATURES**
An array of pointers to the sets of typographic features to use in each feature range.
[in, optional] featureRangeLengths
Type: const UINT32*
The length of each feature range, in characters.
The sum of all lengths should be equal to textLength.
featureRanges
Type: UINT32
The number of feature ranges.
[out] glyphAdvances
Type: FLOAT*
When this method returns, contains the advance width of each glyph.
[out] glyphOffsets
Type: DWRITE_GLYPH_OFFSET*
When this method returns, contains the offset of the origin of each glyph.
Return value
Type: HRESULT
If this method succeeds, it returns S_OK. Otherwise, it returns an HRESULT error code.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows 7, Windows Vista with SP2 and Platform Update for Windows Vista [desktop apps | UWP apps] |
Minimum supported server | Windows Server 2008 R2, Windows Server 2008 with SP2 and Platform Update for Windows Server 2008 [desktop apps | UWP apps] |
Target Platform | Windows |
Header | dwrite.h |
Library | Dwrite.lib |
DLL | Dwrite.dll |