# C1.Util.DX.DirectWrite.TextRendererBase

## Content

<div class="doc-site-dotnet-api-container">



  <h1 id="C1_Util_DX_DirectWrite_TextRendererBase" data-uid="C1.Util.DX.DirectWrite.TextRendererBase" class="text-break">TextRendererBase Class
</h1>
  <div class="markdown level0 summary"><p>Default implementation of TextRenderer. Need to implement at least a DrawXXX method to use it.</p>
</div>
  <div class="markdown level0 conceptual"></div>
  <div class="inheritance">
    <h5>Inheritance</h5>
    <div class="level0"><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object">object</a></div>
    <div class="level1"><a class="xref" href="C1.Util.DX.DisposeBase.html">DisposeBase</a></div>
    <div class="level2"><a class="xref" href="C1.Util.DX.CallbackBase.html">CallbackBase</a></div>
    <div class="level3"><span class="xref">TextRendererBase</span></div>
      <div class="level4"><a class="xref" href="C1.Util.DX.DirectWrite.TextRenderer1Base.html">TextRenderer1Base</a></div>
  </div>
  <div class="implements">
    <h5>Implements</h5>
    <div><a class="xref" href="C1.Util.DX.DirectWrite.TextRenderer.html">TextRenderer</a></div>
    <div><a class="xref" href="C1.Util.DX.DirectWrite.PixelSnapping.html">PixelSnapping</a></div>
    <div><a class="xref" href="C1.Util.DX.ICallbackable.html">ICallbackable</a></div>
    <div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.idisposable">IDisposable</a></div>
  </div>
  <h6><strong>Namespace</strong>: <a class="xref" href="C1.Util.DX.DirectWrite.html">C1.Util.DX.DirectWrite</a></h6>
  <h6><strong>Assembly</strong>: C1.Win.DX.4.8.dll</h6>
  <h5 id="C1_Util_DX_DirectWrite_TextRendererBase_syntax">Syntax</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public class TextRendererBase : CallbackBase, TextRenderer, PixelSnapping, ICallbackable, IDisposable</code></pre>
  </div>
  <div class="codewrapper">
    <pre><code class="lang-vbnet hljs">Public Class TextRendererBase
    Inherits CallbackBase
    Implements TextRenderer, PixelSnapping, ICallbackable, IDisposable</code></pre>
  </div>
  <h3 id="constructors">Constructors
</h3>
  <table class="table table-bordered table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td id="C1_Util_DX_DirectWrite_TextRendererBase__ctor" data-uid="C1.Util.DX.DirectWrite.TextRendererBase.#ctor">
          <a class="xref" href="C1.Util.DX.DirectWrite.TextRendererBase.-ctor.html#C1_Util_DX_DirectWrite_TextRendererBase__ctor">TextRendererBase()</a>
        </td>
        <td class="markdown level1 summary"></td>
      </tr>
    </tbody>
  </table>
  <h3 id="methods">Methods
</h3>
  <table class="table table-bordered table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td id="C1_Util_DX_DirectWrite_TextRendererBase_DrawGlyphRun_System_Object_System_Single_System_Single_C1_Util_DX_DirectWrite_MeasuringMode_C1_Util_DX_DirectWrite_GlyphRun_C1_Util_DX_DirectWrite_GlyphRunDescription_System_IntPtr_" data-uid="C1.Util.DX.DirectWrite.TextRendererBase.DrawGlyphRun(System.Object,System.Single,System.Single,C1.Util.DX.DirectWrite.MeasuringMode,C1.Util.DX.DirectWrite.GlyphRun,C1.Util.DX.DirectWrite.GlyphRunDescription,System.IntPtr)">
          <a class="xref" href="C1.Util.DX.DirectWrite.TextRendererBase.DrawGlyphRun.html#C1_Util_DX_DirectWrite_TextRendererBase_DrawGlyphRun_System_Object_System_Single_System_Single_C1_Util_DX_DirectWrite_MeasuringMode_C1_Util_DX_DirectWrite_GlyphRun_C1_Util_DX_DirectWrite_GlyphRunDescription_System_IntPtr_">DrawGlyphRun(object, float, float, MeasuringMode, GlyphRun, GlyphRunDescription, IntPtr)</a>
        </td>
        <td class="markdown level1 summary"><p>IDWriteTextLayout::Draw calls this function to instruct the client to render a run of glyphs.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_DirectWrite_TextRendererBase_DrawInlineObject_System_Object_System_Single_System_Single_C1_Util_DX_DirectWrite_InlineObject_System_Boolean_System_Boolean_System_IntPtr_" data-uid="C1.Util.DX.DirectWrite.TextRendererBase.DrawInlineObject(System.Object,System.Single,System.Single,C1.Util.DX.DirectWrite.InlineObject,System.Boolean,System.Boolean,System.IntPtr)">
          <a class="xref" href="C1.Util.DX.DirectWrite.TextRendererBase.DrawInlineObject.html#C1_Util_DX_DirectWrite_TextRendererBase_DrawInlineObject_System_Object_System_Single_System_Single_C1_Util_DX_DirectWrite_InlineObject_System_Boolean_System_Boolean_System_IntPtr_">DrawInlineObject(object, float, float, InlineObject, bool, bool, IntPtr)</a>
        </td>
        <td class="markdown level1 summary"><p>IDWriteTextLayout::Draw calls this application callback when it needs to draw an inline object.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_DirectWrite_TextRendererBase_DrawStrikethrough_System_Object_System_Single_System_Single_C1_Util_DX_DirectWrite_Strikethrough__System_IntPtr_" data-uid="C1.Util.DX.DirectWrite.TextRendererBase.DrawStrikethrough(System.Object,System.Single,System.Single,C1.Util.DX.DirectWrite.Strikethrough@,System.IntPtr)">
          <a class="xref" href="C1.Util.DX.DirectWrite.TextRendererBase.DrawStrikethrough.html#C1_Util_DX_DirectWrite_TextRendererBase_DrawStrikethrough_System_Object_System_Single_System_Single_C1_Util_DX_DirectWrite_Strikethrough__System_IntPtr_">DrawStrikethrough(object, float, float, ref Strikethrough, IntPtr)</a>
        </td>
        <td class="markdown level1 summary"><p>IDWriteTextLayout::Draw calls this function to instruct the client to draw a strikethrough.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_DirectWrite_TextRendererBase_DrawUnderline_System_Object_System_Single_System_Single_C1_Util_DX_DirectWrite_Underline__System_IntPtr_" data-uid="C1.Util.DX.DirectWrite.TextRendererBase.DrawUnderline(System.Object,System.Single,System.Single,C1.Util.DX.DirectWrite.Underline@,System.IntPtr)">
          <a class="xref" href="C1.Util.DX.DirectWrite.TextRendererBase.DrawUnderline.html#C1_Util_DX_DirectWrite_TextRendererBase_DrawUnderline_System_Object_System_Single_System_Single_C1_Util_DX_DirectWrite_Underline__System_IntPtr_">DrawUnderline(object, float, float, ref Underline, IntPtr)</a>
        </td>
        <td class="markdown level1 summary"><p>IDWriteTextLayout::Draw calls this function to instruct the client to draw an underline.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_DirectWrite_TextRendererBase_GetCurrentTransform_System_Object_" data-uid="C1.Util.DX.DirectWrite.TextRendererBase.GetCurrentTransform(System.Object)">
          <a class="xref" href="C1.Util.DX.DirectWrite.TextRendererBase.GetCurrentTransform.html#C1_Util_DX_DirectWrite_TextRendererBase_GetCurrentTransform_System_Object_">GetCurrentTransform(object)</a>
        </td>
        <td class="markdown level1 summary"><p>Gets a transform that maps abstract coordinates to DIPs.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_DirectWrite_TextRendererBase_GetPixelsPerDip_System_Object_" data-uid="C1.Util.DX.DirectWrite.TextRendererBase.GetPixelsPerDip(System.Object)">
          <a class="xref" href="C1.Util.DX.DirectWrite.TextRendererBase.GetPixelsPerDip.html#C1_Util_DX_DirectWrite_TextRendererBase_GetPixelsPerDip_System_Object_">GetPixelsPerDip(object)</a>
        </td>
        <td class="markdown level1 summary"><p>Gets the number of physical pixels per DIP.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_DirectWrite_TextRendererBase_IsPixelSnappingDisabled_System_Object_" data-uid="C1.Util.DX.DirectWrite.TextRendererBase.IsPixelSnappingDisabled(System.Object)">
          <a class="xref" href="C1.Util.DX.DirectWrite.TextRendererBase.IsPixelSnappingDisabled.html#C1_Util_DX_DirectWrite_TextRendererBase_IsPixelSnappingDisabled_System_Object_">IsPixelSnappingDisabled(object)</a>
        </td>
        <td class="markdown level1 summary"><p>Determines whether pixel snapping is disabled. The recommended default is FALSE,
unless doing animation that requires subpixel vertical placement.</p>
</td>
      </tr>
    </tbody>
  </table>

</div>
