# C1.Util.DX.DirectWrite.TextAnalyzer.GetGlyphs

## Content

<div class="doc-site-dotnet-api-container">



<h1 id="C1_Util_DX_DirectWrite_TextAnalyzer_GetGlyphs_" data-uid="C1.Util.DX.DirectWrite.TextAnalyzer.GetGlyphs*">GetGlyphs Method
</h1>
<div class="markdown level0 summary"></div>
<div class="markdown level0 conceptual"></div>



<a id="C1_Util_DX_DirectWrite_TextAnalyzer_GetGlyphs_" data-uid="C1.Util.DX.DirectWrite.TextAnalyzer.GetGlyphs*"></a>
<h4 id="C1_Util_DX_DirectWrite_TextAnalyzer_GetGlyphs_System_String_System_Int32_C1_Util_DX_DirectWrite_FontFace_System_Boolean_System_Boolean_C1_Util_DX_DirectWrite_ScriptAnalysis_System_String_C1_Util_DX_DirectWrite_NumberSubstitution_C1_Util_DX_DirectWrite_FontFeature_____System_Int32___System_Int32_System_Int16___C1_Util_DX_DirectWrite_ShapingTextProperties___System_Int16___C1_Util_DX_DirectWrite_ShapingGlyphProperties___" data-uid="C1.Util.DX.DirectWrite.TextAnalyzer.GetGlyphs(System.String,System.Int32,C1.Util.DX.DirectWrite.FontFace,System.Boolean,System.Boolean,C1.Util.DX.DirectWrite.ScriptAnalysis,System.String,C1.Util.DX.DirectWrite.NumberSubstitution,C1.Util.DX.DirectWrite.FontFeature[][],System.Int32[],System.Int32,System.Int16[],C1.Util.DX.DirectWrite.ShapingTextProperties[],System.Int16[],C1.Util.DX.DirectWrite.ShapingGlyphProperties[])">GetGlyphs(string, int, FontFace, bool, bool, ScriptAnalysis, string, NumberSubstitution, FontFeature[][], int[], int, short[], ShapingTextProperties[], short[], ShapingGlyphProperties[])</h4>
<div class="markdown level1 summary"><p>Gets the glyphs (TODO doc)</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="declaration">Declaration</h5>
<div class="codewrapper">
  <pre><code class="lang-csharp hljs">public int GetGlyphs(string textString, int textLength, FontFace fontFace, bool isSideways, bool isRightToLeft, ScriptAnalysis scriptAnalysis, string localeName, NumberSubstitution numberSubstitution, FontFeature[][] features, int[] featureRangeLengths, int maxGlyphCount, short[] clusterMap, ShapingTextProperties[] textProps, short[] glyphIndices, ShapingGlyphProperties[] glyphProps)</code></pre>
</div>
<div class="codewrapper">
  <pre><code class="lang-vbnet hljs">Public Function GetGlyphs(textString As String, textLength As Integer, fontFace As FontFace, isSideways As Boolean, isRightToLeft As Boolean, scriptAnalysis As ScriptAnalysis, localeName As String, numberSubstitution As NumberSubstitution, features As FontFeature()(), featureRangeLengths As Integer(), maxGlyphCount As Integer, clusterMap As Short(), textProps As ShapingTextProperties(), glyphIndices As Short(), glyphProps As ShapingGlyphProperties()) As Integer</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-condensed">
  <thead>
    <tr>
      <th>Type</th>
      <th>Name</th>
      <th>Description</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></td>
      <td><span class="parametername">textString</span></td>
      <td><p>The text string.</p>
</td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></td>
      <td><span class="parametername">textLength</span></td>
      <td><p>Length of the text.</p>
</td>
    </tr>
    <tr>
      <td><a class="xref" href="C1.Util.DX.DirectWrite.FontFace.html">FontFace</a></td>
      <td><span class="parametername">fontFace</span></td>
      <td><p>The font face.</p>
</td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></td>
      <td><span class="parametername">isSideways</span></td>
      <td><p>if set to <code>true</code> [is sideways].</p>
</td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></td>
      <td><span class="parametername">isRightToLeft</span></td>
      <td><p>if set to <code>true</code> [is right to left].</p>
</td>
    </tr>
    <tr>
      <td><a class="xref" href="C1.Util.DX.DirectWrite.ScriptAnalysis.html">ScriptAnalysis</a></td>
      <td><span class="parametername">scriptAnalysis</span></td>
      <td><p>The script analysis.</p>
</td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></td>
      <td><span class="parametername">localeName</span></td>
      <td><p>Name of the locale.</p>
</td>
    </tr>
    <tr>
      <td><a class="xref" href="C1.Util.DX.DirectWrite.NumberSubstitution.html">NumberSubstitution</a></td>
      <td><span class="parametername">numberSubstitution</span></td>
      <td><p>The number substitution.</p>
</td>
    </tr>
    <tr>
      <td><a class="xref" href="C1.Util.DX.DirectWrite.FontFeature.html">FontFeature</a>[][]</td>
      <td><span class="parametername">features</span></td>
      <td><p>The features.</p>
</td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a>[]</td>
      <td><span class="parametername">featureRangeLengths</span></td>
      <td><p>The feature range lengths.</p>
</td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></td>
      <td><span class="parametername">maxGlyphCount</span></td>
      <td><p>The max glyph count.</p>
</td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int16">short</a>[]</td>
      <td><span class="parametername">clusterMap</span></td>
      <td><p>The cluster map.</p>
</td>
    </tr>
    <tr>
      <td><a class="xref" href="C1.Util.DX.DirectWrite.ShapingTextProperties.html">ShapingTextProperties</a>[]</td>
      <td><span class="parametername">textProps</span></td>
      <td><p>The text props.</p>
</td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int16">short</a>[]</td>
      <td><span class="parametername">glyphIndices</span></td>
      <td><p>The glyph indices.</p>
</td>
    </tr>
    <tr>
      <td><a class="xref" href="C1.Util.DX.DirectWrite.ShapingGlyphProperties.html">ShapingGlyphProperties</a>[]</td>
      <td><span class="parametername">glyphProps</span></td>
      <td><p>The glyph props.</p>
</td>
    </tr>
  </tbody>
</table>
<h5 class="returns">Returns</h5>
<table class="table table-bordered table-condensed">
  <thead>
    <tr>
      <th>Type</th>
      <th>Description</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></td>
      <td></td>
    </tr>
  </tbody>
</table>


<a id="C1_Util_DX_DirectWrite_TextAnalyzer_GetGlyphs_" data-uid="C1.Util.DX.DirectWrite.TextAnalyzer.GetGlyphs*"></a>
<h4 id="C1_Util_DX_DirectWrite_TextAnalyzer_GetGlyphs_System_String_System_Int32_C1_Util_DX_DirectWrite_FontFace_C1_Util_DX_Bool_C1_Util_DX_Bool_C1_Util_DX_DirectWrite_ScriptAnalysis_System_String_C1_Util_DX_DirectWrite_NumberSubstitution_System_IntPtr_System_Int32___System_Int32_System_Int32_System_Int16___C1_Util_DX_DirectWrite_ShapingTextProperties___System_Int16___C1_Util_DX_DirectWrite_ShapingGlyphProperties___" data-uid="C1.Util.DX.DirectWrite.TextAnalyzer.GetGlyphs(System.String,System.Int32,C1.Util.DX.DirectWrite.FontFace,C1.Util.DX.Bool,C1.Util.DX.Bool,C1.Util.DX.DirectWrite.ScriptAnalysis,System.String,C1.Util.DX.DirectWrite.NumberSubstitution,System.IntPtr,System.Int32[],System.Int32,System.Int32,System.Int16[],C1.Util.DX.DirectWrite.ShapingTextProperties[],System.Int16[],C1.Util.DX.DirectWrite.ShapingGlyphProperties[])">GetGlyphs(string, int, FontFace, Bool, Bool, ScriptAnalysis, string, NumberSubstitution, IntPtr, int[], int, int, short[], ShapingTextProperties[], short[], ShapingGlyphProperties[])</h4>
<div class="markdown level1 summary"><p>HRESULT IDWriteTextAnalyzer::GetGlyphs([In, Buffer] const wchar_t* textString,[In] unsigned int textLength,[In] IDWriteFontFace* fontFace,[In] BOOL isSideways,[In] BOOL isRightToLeft,[In] const DWRITE_SCRIPT_ANALYSIS* scriptAnalysis,[In, Optional] const wchar_t* localeName,[In, Optional] IDWriteNumberSubstitution* numberSubstitution,[In, Optional] const void** features,[In, Buffer, Optional] const unsigned int* featureRangeLengths,[In] unsigned int featureRanges,[In] unsigned int maxGlyphCount,[Out, Buffer] unsigned short* clusterMap,[Out, Buffer] DWRITE_SHAPING_TEXT_PROPERTIES* textProps,[Out, Buffer] unsigned short* glyphIndices,[Out, Buffer] DWRITE_SHAPING_GLYPH_PROPERTIES* glyphProps,[Out] unsigned int* actualGlyphCount)</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="declaration">Declaration</h5>
<div class="codewrapper">
  <pre><code class="lang-csharp hljs">public int GetGlyphs(string textString, int textLength, FontFace fontFace, Bool isSideways, Bool isRightToLeft, ScriptAnalysis scriptAnalysis, string localeName, NumberSubstitution numberSubstitution, IntPtr features, int[] featureRangeLengths, int featureRanges, int maxGlyphCount, short[] clusterMap, ShapingTextProperties[] textProps, short[] glyphIndices, ShapingGlyphProperties[] glyphProps)</code></pre>
</div>
<div class="codewrapper">
  <pre><code class="lang-vbnet hljs">Public Function GetGlyphs(textString As String, textLength As Integer, fontFace As FontFace, isSideways As Bool, isRightToLeft As Bool, scriptAnalysis As ScriptAnalysis, localeName As String, numberSubstitution As NumberSubstitution, features As IntPtr, featureRangeLengths As Integer(), featureRanges As Integer, maxGlyphCount As Integer, clusterMap As Short(), textProps As ShapingTextProperties(), glyphIndices As Short(), glyphProps As ShapingGlyphProperties()) As Integer</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-condensed">
  <thead>
    <tr>
      <th>Type</th>
      <th>Name</th>
      <th>Description</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></td>
      <td><span class="parametername">textString</span></td>
      <td></td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></td>
      <td><span class="parametername">textLength</span></td>
      <td></td>
    </tr>
    <tr>
      <td><a class="xref" href="C1.Util.DX.DirectWrite.FontFace.html">FontFace</a></td>
      <td><span class="parametername">fontFace</span></td>
      <td></td>
    </tr>
    <tr>
      <td><a class="xref" href="C1.Util.DX.Bool.html">Bool</a></td>
      <td><span class="parametername">isSideways</span></td>
      <td></td>
    </tr>
    <tr>
      <td><a class="xref" href="C1.Util.DX.Bool.html">Bool</a></td>
      <td><span class="parametername">isRightToLeft</span></td>
      <td></td>
    </tr>
    <tr>
      <td><a class="xref" href="C1.Util.DX.DirectWrite.ScriptAnalysis.html">ScriptAnalysis</a></td>
      <td><span class="parametername">scriptAnalysis</span></td>
      <td></td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></td>
      <td><span class="parametername">localeName</span></td>
      <td></td>
    </tr>
    <tr>
      <td><a class="xref" href="C1.Util.DX.DirectWrite.NumberSubstitution.html">NumberSubstitution</a></td>
      <td><span class="parametername">numberSubstitution</span></td>
      <td></td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.intptr">IntPtr</a></td>
      <td><span class="parametername">features</span></td>
      <td></td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a>[]</td>
      <td><span class="parametername">featureRangeLengths</span></td>
      <td></td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></td>
      <td><span class="parametername">featureRanges</span></td>
      <td></td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></td>
      <td><span class="parametername">maxGlyphCount</span></td>
      <td></td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int16">short</a>[]</td>
      <td><span class="parametername">clusterMap</span></td>
      <td></td>
    </tr>
    <tr>
      <td><a class="xref" href="C1.Util.DX.DirectWrite.ShapingTextProperties.html">ShapingTextProperties</a>[]</td>
      <td><span class="parametername">textProps</span></td>
      <td></td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int16">short</a>[]</td>
      <td><span class="parametername">glyphIndices</span></td>
      <td></td>
    </tr>
    <tr>
      <td><a class="xref" href="C1.Util.DX.DirectWrite.ShapingGlyphProperties.html">ShapingGlyphProperties</a>[]</td>
      <td><span class="parametername">glyphProps</span></td>
      <td></td>
    </tr>
  </tbody>
</table>
<h5 class="returns">Returns</h5>
<table class="table table-bordered table-condensed">
  <thead>
    <tr>
      <th>Type</th>
      <th>Description</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></td>
      <td></td>
    </tr>
  </tbody>
</table>


<a id="C1_Util_DX_DirectWrite_TextAnalyzer_GetGlyphs_" data-uid="C1.Util.DX.DirectWrite.TextAnalyzer.GetGlyphs*"></a>
<h4 id="C1_Util_DX_DirectWrite_TextAnalyzer_GetGlyphs_System_IntPtr_System_Int32_System_IntPtr_System_Boolean_System_Boolean_C1_Util_DX_DirectWrite_ScriptAnalysis_System_IntPtr_System_IntPtr_System_IntPtr_System_IntPtr_System_Int32_System_IntPtr_System_IntPtr_System_IntPtr_System_IntPtr_System_Int32__" data-uid="C1.Util.DX.DirectWrite.TextAnalyzer.GetGlyphs(System.IntPtr,System.Int32,System.IntPtr,System.Boolean,System.Boolean,C1.Util.DX.DirectWrite.ScriptAnalysis,System.IntPtr,System.IntPtr,System.IntPtr,System.IntPtr,System.Int32,System.IntPtr,System.IntPtr,System.IntPtr,System.IntPtr,System.Int32@)">GetGlyphs(IntPtr, int, IntPtr, bool, bool, ScriptAnalysis, IntPtr, IntPtr, IntPtr, IntPtr, int, IntPtr, IntPtr, IntPtr, IntPtr, out int)</h4>
<div class="markdown level1 summary"><p>HRESULT IDWriteTextAnalyzer::GetGlyphs([In, Buffer] const wchar_t* textString,[In] unsigned int textLength,[In] IDWriteFontFace* fontFace,[In] BOOL isSideways,[In] BOOL isRightToLeft,[In] const DWRITE_SCRIPT_ANALYSIS* scriptAnalysis,[In, Optional] const wchar_t* localeName,[In, Optional] IDWriteNumberSubstitution* numberSubstitution,[In, Optional] const void** features,[In, Buffer, Optional] const unsigned int* featureRangeLengths,[In] unsigned int featureRanges,[In] unsigned int maxGlyphCount,[Out, Buffer] unsigned short* clusterMap,[Out, Buffer] DWRITE_SHAPING_TEXT_PROPERTIES* textProps,[Out, Buffer] unsigned short* glyphIndices,[Out, Buffer] DWRITE_SHAPING_GLYPH_PROPERTIES* glyphProps,[Out] unsigned int* actualGlyphCount)</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="declaration">Declaration</h5>
<div class="codewrapper">
  <pre><code class="lang-csharp hljs">public HResult GetGlyphs(IntPtr textString, int textLength, IntPtr fontFace, bool isSideways, bool isRightToLeft, ScriptAnalysis scriptAnalysis, IntPtr localeName, IntPtr numberSubstitution, IntPtr features, IntPtr featureRangeLengths, int maxGlyphCount, IntPtr clusterMap, IntPtr textProps, IntPtr glyphIndices, IntPtr glyphProps, out int actualGlyphCount)</code></pre>
</div>
<div class="codewrapper">
  <pre><code class="lang-vbnet hljs">Public Function GetGlyphs(textString As IntPtr, textLength As Integer, fontFace As IntPtr, isSideways As Boolean, isRightToLeft As Boolean, scriptAnalysis As ScriptAnalysis, localeName As IntPtr, numberSubstitution As IntPtr, features As IntPtr, featureRangeLengths As IntPtr, maxGlyphCount As Integer, clusterMap As IntPtr, textProps As IntPtr, glyphIndices As IntPtr, glyphProps As IntPtr, ByRef actualGlyphCount As Integer) As HResult</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-condensed">
  <thead>
    <tr>
      <th>Type</th>
      <th>Name</th>
      <th>Description</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.intptr">IntPtr</a></td>
      <td><span class="parametername">textString</span></td>
      <td></td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></td>
      <td><span class="parametername">textLength</span></td>
      <td></td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.intptr">IntPtr</a></td>
      <td><span class="parametername">fontFace</span></td>
      <td></td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></td>
      <td><span class="parametername">isSideways</span></td>
      <td></td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></td>
      <td><span class="parametername">isRightToLeft</span></td>
      <td></td>
    </tr>
    <tr>
      <td><a class="xref" href="C1.Util.DX.DirectWrite.ScriptAnalysis.html">ScriptAnalysis</a></td>
      <td><span class="parametername">scriptAnalysis</span></td>
      <td></td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.intptr">IntPtr</a></td>
      <td><span class="parametername">localeName</span></td>
      <td></td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.intptr">IntPtr</a></td>
      <td><span class="parametername">numberSubstitution</span></td>
      <td></td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.intptr">IntPtr</a></td>
      <td><span class="parametername">features</span></td>
      <td></td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.intptr">IntPtr</a></td>
      <td><span class="parametername">featureRangeLengths</span></td>
      <td></td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></td>
      <td><span class="parametername">maxGlyphCount</span></td>
      <td></td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.intptr">IntPtr</a></td>
      <td><span class="parametername">clusterMap</span></td>
      <td></td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.intptr">IntPtr</a></td>
      <td><span class="parametername">textProps</span></td>
      <td></td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.intptr">IntPtr</a></td>
      <td><span class="parametername">glyphIndices</span></td>
      <td></td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.intptr">IntPtr</a></td>
      <td><span class="parametername">glyphProps</span></td>
      <td></td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></td>
      <td><span class="parametername">actualGlyphCount</span></td>
      <td></td>
    </tr>
  </tbody>
</table>
<h5 class="returns">Returns</h5>
<table class="table table-bordered table-condensed">
  <thead>
    <tr>
      <th>Type</th>
      <th>Description</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><a class="xref" href="C1.Util.DX.HResult.html">HResult</a></td>
      <td></td>
    </tr>
  </tbody>
</table>
</div>
