public HRESULT GetJustifiedGlyphs(IDWriteFontFace *fontFace, float fontEmSize, DWRITE_SCRIPT_ANALYSIS scriptAnalysis, [NativeTypeName("UINT32")] uint textLength, [NativeTypeName("UINT32")] uint glyphCount, [NativeTypeName("UINT32")] uint maxGlyphCount, [NativeTypeName("const UINT16 *")] ushort *clusterMap, [NativeTypeName("const UINT16 *")] ushort *glyphIndices, [NativeTypeName("const FLOAT *")] float *glyphAdvances, [NativeTypeName("const FLOAT *")] float *justifiedGlyphAdvances, [NativeTypeName("const DWRITE_GLYPH_OFFSET *")] DWRITE_GLYPH_OFFSET *justifiedGlyphOffsets, [NativeTypeName("const DWRITE_SHAPING_GLYPH_PROPERTIES *")] DWRITE_SHAPING_GLYPH_PROPERTIES *glyphProperties, [NativeTypeName("UINT32 *")] uint *actualGlyphCount, [NativeTypeName("UINT16 *")] ushort *modifiedClusterMap, [NativeTypeName("UINT16 *")] ushort *modifiedGlyphIndices, float *modifiedGlyphAdvances, DWRITE_GLYPH_OFFSET *modifiedGlyphOffsets)
 {
     return(((delegate * unmanaged <IDWriteTextAnalyzer1 *, IDWriteFontFace *, float, DWRITE_SCRIPT_ANALYSIS, uint, uint, uint, ushort *, ushort *, float *, float *, DWRITE_GLYPH_OFFSET *, DWRITE_SHAPING_GLYPH_PROPERTIES *, uint *, ushort *, ushort *, float *, DWRITE_GLYPH_OFFSET *, int>)(lpVtbl[18]))((IDWriteTextAnalyzer1 *)Unsafe.AsPointer(ref this), fontFace, fontEmSize, scriptAnalysis, textLength, glyphCount, maxGlyphCount, clusterMap, glyphIndices, glyphAdvances, justifiedGlyphAdvances, justifiedGlyphOffsets, glyphProperties, actualGlyphCount, modifiedClusterMap, modifiedGlyphIndices, modifiedGlyphAdvances, modifiedGlyphOffsets));
 }
 public HRESULT GetJustificationOpportunities(IDWriteFontFace *fontFace, float fontEmSize, DWRITE_SCRIPT_ANALYSIS scriptAnalysis, [NativeTypeName("UINT32")] uint textLength, [NativeTypeName("UINT32")] uint glyphCount, [NativeTypeName("const WCHAR *")] ushort *textString, [NativeTypeName("const UINT16 *")] ushort *clusterMap, [NativeTypeName("const DWRITE_SHAPING_GLYPH_PROPERTIES *")] DWRITE_SHAPING_GLYPH_PROPERTIES *glyphProperties, DWRITE_JUSTIFICATION_OPPORTUNITY *justificationOpportunities)
 {
     return(((delegate * unmanaged <IDWriteTextAnalyzer1 *, IDWriteFontFace *, float, DWRITE_SCRIPT_ANALYSIS, uint, uint, ushort *, ushort *, DWRITE_SHAPING_GLYPH_PROPERTIES *, DWRITE_JUSTIFICATION_OPPORTUNITY *, int>)(lpVtbl[16]))((IDWriteTextAnalyzer1 *)Unsafe.AsPointer(ref this), fontFace, fontEmSize, scriptAnalysis, textLength, glyphCount, textString, clusterMap, glyphProperties, justificationOpportunities));
 }
 public HRESULT GetScriptProperties(DWRITE_SCRIPT_ANALYSIS scriptAnalysis, DWRITE_SCRIPT_PROPERTIES *scriptProperties)
 {
     return(((delegate * unmanaged <IDWriteTextAnalyzer1 *, DWRITE_SCRIPT_ANALYSIS, DWRITE_SCRIPT_PROPERTIES *, int>)(lpVtbl[14]))((IDWriteTextAnalyzer1 *)Unsafe.AsPointer(ref this), scriptAnalysis, scriptProperties));
 }
 public HRESULT GetBaseline(IDWriteFontFace *fontFace, DWRITE_BASELINE baseline, BOOL isVertical, BOOL isSimulationAllowed, DWRITE_SCRIPT_ANALYSIS scriptAnalysis, [NativeTypeName("const WCHAR *")] ushort *localeName, [NativeTypeName("INT32 *")] int *baselineCoordinate, BOOL *exists)
 {
     return(((delegate * unmanaged <IDWriteTextAnalyzer1 *, IDWriteFontFace *, DWRITE_BASELINE, BOOL, BOOL, DWRITE_SCRIPT_ANALYSIS, ushort *, int *, BOOL *, int>)(lpVtbl[11]))((IDWriteTextAnalyzer1 *)Unsafe.AsPointer(ref this), fontFace, baseline, isVertical, isSimulationAllowed, scriptAnalysis, localeName, baselineCoordinate, exists));
 }
 public HRESULT CheckTypographicFeature(IDWriteFontFace *fontFace, DWRITE_SCRIPT_ANALYSIS scriptAnalysis, [NativeTypeName("const WCHAR *")] ushort *localeName, DWRITE_FONT_FEATURE_TAG featureTag, [NativeTypeName("UINT32")] uint glyphCount, [NativeTypeName("const UINT16 *")] ushort *glyphIndices, [NativeTypeName("UINT8 *")] byte *featureApplies)
 {
     return(((delegate * unmanaged <IDWriteTextAnalyzer2 *, IDWriteFontFace *, DWRITE_SCRIPT_ANALYSIS, ushort *, DWRITE_FONT_FEATURE_TAG, uint, ushort *, byte *, int>)(lpVtbl[21]))((IDWriteTextAnalyzer2 *)Unsafe.AsPointer(ref this), fontFace, scriptAnalysis, localeName, featureTag, glyphCount, glyphIndices, featureApplies));
 }
 public HRESULT GetTypographicFeatures(IDWriteFontFace *fontFace, DWRITE_SCRIPT_ANALYSIS scriptAnalysis, [NativeTypeName("const WCHAR *")] ushort *localeName, [NativeTypeName("UINT32")] uint maxTagCount, [NativeTypeName("UINT32 *")] uint *actualTagCount, DWRITE_FONT_FEATURE_TAG *tags)
 {
     return(((delegate * unmanaged <IDWriteTextAnalyzer2 *, IDWriteFontFace *, DWRITE_SCRIPT_ANALYSIS, ushort *, uint, uint *, DWRITE_FONT_FEATURE_TAG *, int>)(lpVtbl[20]))((IDWriteTextAnalyzer2 *)Unsafe.AsPointer(ref this), fontFace, scriptAnalysis, localeName, maxTagCount, actualTagCount, tags));
 }