# C1.Util.DX.DirectWrite.Factory2

## Content

<div class="doc-site-dotnet-api-container">



  <h1 id="C1_Util_DX_DirectWrite_Factory2" data-uid="C1.Util.DX.DirectWrite.Factory2" class="text-break">Factory2 Class
</h1>
  <div class="markdown level0 summary"><p>IDWriteFactory2</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.CppObject.html">CppObject</a></div>
    <div class="level3"><a class="xref" href="C1.Util.DX.ComObject.html">ComObject</a></div>
    <div class="level4"><a class="xref" href="C1.Util.DX.DirectWrite.Factory.html">Factory</a></div>
    <div class="level5"><a class="xref" href="C1.Util.DX.DirectWrite.Factory1.html">Factory1</a></div>
    <div class="level6"><span class="xref">Factory2</span></div>
  </div>
  <div class="implements">
    <h5>Implements</h5>
    <div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.idisposable">IDisposable</a></div>
    <div><a class="xref" href="C1.Util.DX.IUnknown.html">IUnknown</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.WPF.DX.4.6.2.dll</h6>
  <h5 id="C1_Util_DX_DirectWrite_Factory2_syntax">Syntax</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">[Guid(&quot;0439fc60-ca44-4994-8dee-3a9af7b732ec&quot;)]
public class Factory2 : Factory1, IDisposable, IUnknown</code></pre>
  </div>
  <div class="codewrapper">
    <pre><code class="lang-vbnet hljs">&lt;Guid(&quot;0439fc60-ca44-4994-8dee-3a9af7b732ec&quot;)&gt;
Public Class Factory2
    Inherits Factory1
    Implements IDisposable, IUnknown</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_Factory2__ctor_System_IntPtr_" data-uid="C1.Util.DX.DirectWrite.Factory2.#ctor(System.IntPtr)">
          <a class="xref" href="C1.Util.DX.DirectWrite.Factory2.-ctor.html#C1_Util_DX_DirectWrite_Factory2__ctor_System_IntPtr_">Factory2(IntPtr)</a>
        </td>
        <td class="markdown level1 summary"><p>Initializes a new instance of the <a class="xref" href="C1.Util.DX.DirectWrite.Factory2.html">Factory2</a> class.</p>
</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_Factory2_Create_C1_Util_DX_DirectWrite_FactoryType_" data-uid="C1.Util.DX.DirectWrite.Factory2.Create(C1.Util.DX.DirectWrite.FactoryType)">
          <a class="xref" href="C1.Util.DX.DirectWrite.Factory2.Create.html#C1_Util_DX_DirectWrite_Factory2_Create_C1_Util_DX_DirectWrite_FactoryType_">Create(FactoryType)</a>
        </td>
        <td class="markdown level1 summary"><p>Creates a new instance of the <a class="xref" href="C1.Util.DX.DirectWrite.Factory2.html">Factory2</a> class.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_DirectWrite_Factory2_CreateCustomRenderingParams2_System_Single_System_Single_System_Single_System_Single_C1_Util_DX_DirectWrite_PixelGeometry_C1_Util_DX_DirectWrite_RenderingMode_C1_Util_DX_DirectWrite_GridFitMode_" data-uid="C1.Util.DX.DirectWrite.Factory2.CreateCustomRenderingParams2(System.Single,System.Single,System.Single,System.Single,C1.Util.DX.DirectWrite.PixelGeometry,C1.Util.DX.DirectWrite.RenderingMode,C1.Util.DX.DirectWrite.GridFitMode)">
          <a class="xref" href="C1.Util.DX.DirectWrite.Factory2.CreateCustomRenderingParams2.html#C1_Util_DX_DirectWrite_Factory2_CreateCustomRenderingParams2_System_Single_System_Single_System_Single_System_Single_C1_Util_DX_DirectWrite_PixelGeometry_C1_Util_DX_DirectWrite_RenderingMode_C1_Util_DX_DirectWrite_GridFitMode_">CreateCustomRenderingParams2(float, float, float, float, PixelGeometry, RenderingMode, GridFitMode)</a>
        </td>
        <td class="markdown level1 summary"><p>HRESULT IDWriteFactory2::CreateCustomRenderingParams(FLOAT gamma, FLOAT enhancedContrast, FLOAT grayscaleEnhancedContrast, FLOAT clearTypeLevel, DWRITE_PIXEL_GEOMETRY pixelGeometry, DWRITE_RENDERING_MODE renderingMode, DWRITE_GRID_FIT_MODE gridFitMode, [out] IDWriteRenderingParams2** renderingParams)</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_DirectWrite_Factory2_CreateFontFallbackBuilder" data-uid="C1.Util.DX.DirectWrite.Factory2.CreateFontFallbackBuilder">
          <a class="xref" href="C1.Util.DX.DirectWrite.Factory2.CreateFontFallbackBuilder.html#C1_Util_DX_DirectWrite_Factory2_CreateFontFallbackBuilder">CreateFontFallbackBuilder()</a>
        </td>
        <td class="markdown level1 summary"><p>HRESULT IDWriteFactory2::CreateFontFallbackBuilder([out] IDWriteFontFallbackBuilder** fontFallbackBuilder)</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_DirectWrite_Factory2_CreateGlyphRunAnalysis_C1_Util_DX_DirectWrite_GlyphRun_System_Nullable_C1_Util_DX_Matrix3x2__C1_Util_DX_DirectWrite_RenderingMode_C1_Util_DX_DirectWrite_MeasuringMode_C1_Util_DX_DirectWrite_GridFitMode_C1_Util_DX_DirectWrite_TextAntialiasMode_System_Single_System_Single_" data-uid="C1.Util.DX.DirectWrite.Factory2.CreateGlyphRunAnalysis(C1.Util.DX.DirectWrite.GlyphRun,System.Nullable{C1.Util.DX.Matrix3x2},C1.Util.DX.DirectWrite.RenderingMode,C1.Util.DX.DirectWrite.MeasuringMode,C1.Util.DX.DirectWrite.GridFitMode,C1.Util.DX.DirectWrite.TextAntialiasMode,System.Single,System.Single)">
          <a class="xref" href="C1.Util.DX.DirectWrite.Factory2.CreateGlyphRunAnalysis.html#C1_Util_DX_DirectWrite_Factory2_CreateGlyphRunAnalysis_C1_Util_DX_DirectWrite_GlyphRun_System_Nullable_C1_Util_DX_Matrix3x2__C1_Util_DX_DirectWrite_RenderingMode_C1_Util_DX_DirectWrite_MeasuringMode_C1_Util_DX_DirectWrite_GridFitMode_C1_Util_DX_DirectWrite_TextAntialiasMode_System_Single_System_Single_">CreateGlyphRunAnalysis(GlyphRun, Matrix3x2?, RenderingMode, MeasuringMode, GridFitMode, TextAntialiasMode, float, float)</a>
        </td>
        <td class="markdown level1 summary"><p>HRESULT IDWriteFactory2::CreateGlyphRunAnalysis([in] DWRITE_GLYPH_RUN* glyphRun, [in, optional] DWRITE_MATRIX* transform, DWRITE_RENDERING_MODE renderingMode, DWRITE_MEASURING_MODE measuringMode, DWRITE_GRID_FIT_MODE gridFitMode, DWRITE_TEXT_ANTIALIAS_MODE antialiasMode, FLOAT baselineOriginX, FLOAT baselineOriginY, [out] IDWriteGlyphRunAnalysis** glyphRunAnalysis)</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_DirectWrite_Factory2_GetSystemFontFallback" data-uid="C1.Util.DX.DirectWrite.Factory2.GetSystemFontFallback">
          <a class="xref" href="C1.Util.DX.DirectWrite.Factory2.GetSystemFontFallback.html#C1_Util_DX_DirectWrite_Factory2_GetSystemFontFallback">GetSystemFontFallback()</a>
        </td>
        <td class="markdown level1 summary"><p>HRESULT IDWriteFactory2::GetSystemFontFallback([out] IDWriteFontFallback** fontFallback)</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_DirectWrite_Factory2_TranslateColorGlyphRun_System_Single_System_Single_C1_Util_DX_DirectWrite_GlyphRun_C1_Util_DX_DirectWrite_GlyphRunDescription_C1_Util_DX_DirectWrite_MeasuringMode_System_Nullable_C1_Util_DX_Matrix3x2__System_Int32_" data-uid="C1.Util.DX.DirectWrite.Factory2.TranslateColorGlyphRun(System.Single,System.Single,C1.Util.DX.DirectWrite.GlyphRun,C1.Util.DX.DirectWrite.GlyphRunDescription,C1.Util.DX.DirectWrite.MeasuringMode,System.Nullable{C1.Util.DX.Matrix3x2},System.Int32)">
          <a class="xref" href="C1.Util.DX.DirectWrite.Factory2.TranslateColorGlyphRun.html#C1_Util_DX_DirectWrite_Factory2_TranslateColorGlyphRun_System_Single_System_Single_C1_Util_DX_DirectWrite_GlyphRun_C1_Util_DX_DirectWrite_GlyphRunDescription_C1_Util_DX_DirectWrite_MeasuringMode_System_Nullable_C1_Util_DX_Matrix3x2__System_Int32_">TranslateColorGlyphRun(float, float, GlyphRun, GlyphRunDescription, MeasuringMode, Matrix3x2?, int)</a>
        </td>
        <td class="markdown level1 summary"><p>HRESULT IDWriteFactory2::TranslateColorGlyphRun(FLOAT baselineOriginX, FLOAT baselineOriginY, [in] DWRITE_GLYPH_RUN* glyphRun, [in, optional] DWRITE_GLYPH_RUN_DESCRIPTION* glyphRunDescription, DWRITE_MEASURING_MODE measuringMode, [in, optional] DWRITE_MATRIX* worldToDeviceTransform, UINT32 colorPaletteIndex, [out] IDWriteColorGlyphRunEnumerator** colorLayers)</p>
</td>
      </tr>
    </tbody>
  </table>
  <h3 id="operators">Operators
</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_Factory2_op_Explicit_System_IntPtr__C1_Util_DX_DirectWrite_Factory2" data-uid="C1.Util.DX.DirectWrite.Factory2.op_Explicit(System.IntPtr)~C1.Util.DX.DirectWrite.Factory2">
          <a class="xref" href="C1.Util.DX.DirectWrite.Factory2.op_Explicit.html#C1_Util_DX_DirectWrite_Factory2_op_Explicit_System_IntPtr__C1_Util_DX_DirectWrite_Factory2">explicit operator Factory2(IntPtr)</a>
        </td>
        <td class="markdown level1 summary"><p>Performs an explicit conversion from <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.intptr">IntPtr</a> to <a class="xref" href="C1.Util.DX.DirectWrite.Factory2.html">Factory2</a>.</p>
</td>
      </tr>
    </tbody>
  </table>

</div>
