# GrapeCity.Documents.Imaging.Windows.GcD2DBitmapGraphics

## Content

<div class="doc-site-dotnet-api-container">



  <h1 id="GrapeCity_Documents_Imaging_Windows_GcD2DBitmapGraphics" data-uid="GrapeCity.Documents.Imaging.Windows.GcD2DBitmapGraphics" class="text-break">GcD2DBitmapGraphics Class
</h1>
  <div class="markdown level0 summary"><p>Implements a Direct2D drawing surface.</p>
<p>
To create an instance of this class, use the <a class="xref" href="GrapeCity.Documents.Imaging.Windows.GcD2DBitmap.CreateGraphics.html#GrapeCity_Documents_Imaging_Windows_GcD2DBitmap_CreateGraphics_System_Nullable_System_Drawing_Color__">CreateGraphics(Color?)</a> method.
</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="../DS.Documents.Imaging/GrapeCity.Documents.Drawing.GcGraphics.html">GcGraphics</a></div>
    <div class="level2"><a class="xref" href="GrapeCity.Documents.Imaging.Windows.GcDXGraphics.html">GcDXGraphics</a></div>
    <div class="level3"><span class="xref">GcD2DBitmapGraphics</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>
  <h6><strong>Namespace</strong>: <a class="xref" href="GrapeCity.Documents.Imaging.Windows.html">GrapeCity.Documents.Imaging.Windows</a></h6>
  <h6><strong>Assembly</strong>: DS.Documents.Imaging.Windows.dll</h6>
  <h5 id="GrapeCity_Documents_Imaging_Windows_GcD2DBitmapGraphics_syntax">Syntax</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public class GcD2DBitmapGraphics : GcDXGraphics, IDisposable</code></pre>
  </div>
  <div class="codewrapper">
    <pre><code class="lang-vbnet hljs">Public Class GcD2DBitmapGraphics
    Inherits GcDXGraphics
    Implements IDisposable</code></pre>
  </div>
  <h3 id="fields">Fields
</h3>
  <table class="table table-bordered table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td id="GrapeCity_Documents_Imaging_Windows_GcD2DBitmapGraphics_Bitmap" data-uid="GrapeCity.Documents.Imaging.Windows.GcD2DBitmapGraphics.Bitmap">
          <a class="xref" href="GrapeCity.Documents.Imaging.Windows.GcD2DBitmapGraphics.Bitmap.html">Bitmap</a>
        </td>
        <td class="markdown level1 summary"><p>The owning <a class="xref" href="GrapeCity.Documents.Imaging.Windows.GcD2DBitmap.html">GcD2DBitmap</a> object.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h3 id="properties">Properties
</h3>
  <table class="table table-bordered table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td id="GrapeCity_Documents_Imaging_Windows_GcD2DBitmapGraphics_Features" data-uid="GrapeCity.Documents.Imaging.Windows.GcD2DBitmapGraphics.Features">
          <a class="xref" href="GrapeCity.Documents.Imaging.Windows.GcD2DBitmapGraphics.Features.html#GrapeCity_Documents_Imaging_Windows_GcD2DBitmapGraphics_Features">Features</a>
        </td>
        <td class="markdown level1 summary"><p>For internal use.
Gets the features supported by this graphics.</p>
</td>
      </tr>
      <tr>
        <td id="GrapeCity_Documents_Imaging_Windows_GcD2DBitmapGraphics_SurfaceResolution" data-uid="GrapeCity.Documents.Imaging.Windows.GcD2DBitmapGraphics.SurfaceResolution">
          <a class="xref" href="GrapeCity.Documents.Imaging.Windows.GcD2DBitmapGraphics.SurfaceResolution.html#GrapeCity_Documents_Imaging_Windows_GcD2DBitmapGraphics_SurfaceResolution">SurfaceResolution</a>
        </td>
        <td class="markdown level1 summary"><p>Gets the resolution of the underlying drawing surface (pixels per inch).</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="GrapeCity_Documents_Imaging_Windows_GcD2DBitmapGraphics_AfterDrawAction" data-uid="GrapeCity.Documents.Imaging.Windows.GcD2DBitmapGraphics.AfterDrawAction">
          <a class="xref" href="GrapeCity.Documents.Imaging.Windows.GcD2DBitmapGraphics.AfterDrawAction.html#GrapeCity_Documents_Imaging_Windows_GcD2DBitmapGraphics_AfterDrawAction">AfterDrawAction()</a>
        </td>
        <td class="markdown level1 summary"><p>Called after any draw action on the underlying render target.</p>
</td>
      </tr>
      <tr>
        <td id="GrapeCity_Documents_Imaging_Windows_GcD2DBitmapGraphics_BeforeDrawAction" data-uid="GrapeCity.Documents.Imaging.Windows.GcD2DBitmapGraphics.BeforeDrawAction">
          <a class="xref" href="GrapeCity.Documents.Imaging.Windows.GcD2DBitmapGraphics.BeforeDrawAction.html#GrapeCity_Documents_Imaging_Windows_GcD2DBitmapGraphics_BeforeDrawAction">BeforeDrawAction()</a>
        </td>
        <td class="markdown level1 summary"><p>Called before any draw action on the underlying render target.</p>
</td>
      </tr>
      <tr>
        <td id="GrapeCity_Documents_Imaging_Windows_GcD2DBitmapGraphics_Composite_GrapeCity_Documents_Drawing_IGcTransparencyGroup_System_Drawing_Rectangle_System_Drawing_Point_System_Nullable_System_Single__" data-uid="GrapeCity.Documents.Imaging.Windows.GcD2DBitmapGraphics.Composite(GrapeCity.Documents.Drawing.IGcTransparencyGroup,System.Drawing.Rectangle,System.Drawing.Point,System.Nullable{System.Single})">
          <a class="xref" href="GrapeCity.Documents.Imaging.Windows.GcD2DBitmapGraphics.Composite.html#GrapeCity_Documents_Imaging_Windows_GcD2DBitmapGraphics_Composite_GrapeCity_Documents_Drawing_IGcTransparencyGroup_System_Drawing_Rectangle_System_Drawing_Point_System_Nullable_System_Single__">Composite(IGcTransparencyGroup, Rectangle, Point, float?)</a>
        </td>
        <td class="markdown level1 summary"><p>For internal use.
Composites this <a class="xref" href="../DS.Documents.Imaging/GrapeCity.Documents.Drawing.GcGraphics.html">GcGraphics</a> and the <span class="xref">GrapeCity.Documents.Drawing.IGcTransparencyGroup</span> created
with the <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.drawing.rectangle">CreateTransparencyGroup(Rectangle, bool, bool, bool)</a> method.</p>
</td>
      </tr>
      <tr>
        <td id="GrapeCity_Documents_Imaging_Windows_GcD2DBitmapGraphics_CreateTransparencyGroup_System_Drawing_Rectangle_System_Boolean_System_Boolean_System_Boolean_" data-uid="GrapeCity.Documents.Imaging.Windows.GcD2DBitmapGraphics.CreateTransparencyGroup(System.Drawing.Rectangle,System.Boolean,System.Boolean,System.Boolean)">
          <a class="xref" href="GrapeCity.Documents.Imaging.Windows.GcD2DBitmapGraphics.CreateTransparencyGroup.html#GrapeCity_Documents_Imaging_Windows_GcD2DBitmapGraphics_CreateTransparencyGroup_System_Drawing_Rectangle_System_Boolean_System_Boolean_System_Boolean_">CreateTransparencyGroup(Rectangle, bool, bool, bool)</a>
        </td>
        <td class="markdown level1 summary"><p>For internal use.
Creates a <span class="xref">GrapeCity.Documents.Drawing.IGcTransparencyGroup</span> compatible with this graphics.
This group can be used later for:</p>
<ol>
<li>Compose with graphics using the <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.drawing.rectangle">Composite(IGcTransparencyGroup, Rectangle, Point, float?)</a> method</li>
<li>Create a transparency mask from this group using the <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.drawing.rectangle">CreateTransparencyMask(IGcTransparencyGroup, TransparencyMaskType, Rectangle, IGcTransparencyMaskFilter)</a> method
Note! If the transparency group supports <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.idisposable">IDisposable</a> interface it will be automatically disposed after usage.</li>
</ol>
</td>
      </tr>
      <tr>
        <td id="GrapeCity_Documents_Imaging_Windows_GcD2DBitmapGraphics_CreateTransparencyMask_GrapeCity_Documents_Drawing_IGcTransparencyGroup_GrapeCity_Documents_Drawing_TransparencyMaskType_System_Drawing_Rectangle_GrapeCity_Documents_Drawing_IGcTransparencyMaskFilter_" data-uid="GrapeCity.Documents.Imaging.Windows.GcD2DBitmapGraphics.CreateTransparencyMask(GrapeCity.Documents.Drawing.IGcTransparencyGroup,GrapeCity.Documents.Drawing.TransparencyMaskType,System.Drawing.Rectangle,GrapeCity.Documents.Drawing.IGcTransparencyMaskFilter)">
          <a class="xref" href="GrapeCity.Documents.Imaging.Windows.GcD2DBitmapGraphics.CreateTransparencyMask.html#GrapeCity_Documents_Imaging_Windows_GcD2DBitmapGraphics_CreateTransparencyMask_GrapeCity_Documents_Drawing_IGcTransparencyGroup_GrapeCity_Documents_Drawing_TransparencyMaskType_System_Drawing_Rectangle_GrapeCity_Documents_Drawing_IGcTransparencyMaskFilter_">CreateTransparencyMask(IGcTransparencyGroup, TransparencyMaskType, Rectangle, IGcTransparencyMaskFilter)</a>
        </td>
        <td class="markdown level1 summary"><p>For internal use.
Creates a transparency mask from a <span class="xref">GrapeCity.Documents.Drawing.IGcTransparencyGroup</span>,
this mask can be specified for this graphics using <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object">SetTransparencyMask(object)</a> method.
Note! If the transparency mask supports <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.idisposable">IDisposable</a> interface it will be automatically disposed after usage.</p>
</td>
      </tr>
      <tr>
        <td id="GrapeCity_Documents_Imaging_Windows_GcD2DBitmapGraphics_Dispose_System_Boolean_" data-uid="GrapeCity.Documents.Imaging.Windows.GcD2DBitmapGraphics.Dispose(System.Boolean)">
          <a class="xref" href="GrapeCity.Documents.Imaging.Windows.GcD2DBitmapGraphics.Dispose.html#GrapeCity_Documents_Imaging_Windows_GcD2DBitmapGraphics_Dispose_System_Boolean_">Dispose(bool)</a>
        </td>
        <td class="markdown level1 summary"><p>Performs cleanup operations on managed and unmanaged resources.</p>
</td>
      </tr>
      <tr>
        <td id="GrapeCity_Documents_Imaging_Windows_GcD2DBitmapGraphics_GetBlendMode" data-uid="GrapeCity.Documents.Imaging.Windows.GcD2DBitmapGraphics.GetBlendMode">
          <a class="xref" href="GrapeCity.Documents.Imaging.Windows.GcD2DBitmapGraphics.GetBlendMode.html#GrapeCity_Documents_Imaging_Windows_GcD2DBitmapGraphics_GetBlendMode">GetBlendMode()</a>
        </td>
        <td class="markdown level1 summary"><p>For internal use.
Returns the current blend mode.</p>
</td>
      </tr>
      <tr>
        <td id="GrapeCity_Documents_Imaging_Windows_GcD2DBitmapGraphics_InternalCreateClipRegion_GrapeCity_Documents_Drawing_IPath_" data-uid="GrapeCity.Documents.Imaging.Windows.GcD2DBitmapGraphics.InternalCreateClipRegion(GrapeCity.Documents.Drawing.IPath)">
          <a class="xref" href="GrapeCity.Documents.Imaging.Windows.GcD2DBitmapGraphics.InternalCreateClipRegion.html#GrapeCity_Documents_Imaging_Windows_GcD2DBitmapGraphics_InternalCreateClipRegion_GrapeCity_Documents_Drawing_IPath_">InternalCreateClipRegion(IPath)</a>
        </td>
        <td class="markdown level1 summary"><p>For internal use.</p>
</td>
      </tr>
      <tr>
        <td id="GrapeCity_Documents_Imaging_Windows_GcD2DBitmapGraphics_InternalCreateClipRegion_System_Drawing_RectangleF_" data-uid="GrapeCity.Documents.Imaging.Windows.GcD2DBitmapGraphics.InternalCreateClipRegion(System.Drawing.RectangleF)">
          <a class="xref" href="GrapeCity.Documents.Imaging.Windows.GcD2DBitmapGraphics.InternalCreateClipRegion.html#GrapeCity_Documents_Imaging_Windows_GcD2DBitmapGraphics_InternalCreateClipRegion_System_Drawing_RectangleF_">InternalCreateClipRegion(RectangleF)</a>
        </td>
        <td class="markdown level1 summary"><p>For internal use.</p>
</td>
      </tr>
      <tr>
        <td id="GrapeCity_Documents_Imaging_Windows_GcD2DBitmapGraphics_IsBlendModeSupported_GrapeCity_Documents_Drawing_BlendMode_" data-uid="GrapeCity.Documents.Imaging.Windows.GcD2DBitmapGraphics.IsBlendModeSupported(GrapeCity.Documents.Drawing.BlendMode)">
          <a class="xref" href="GrapeCity.Documents.Imaging.Windows.GcD2DBitmapGraphics.IsBlendModeSupported.html#GrapeCity_Documents_Imaging_Windows_GcD2DBitmapGraphics_IsBlendModeSupported_GrapeCity_Documents_Drawing_BlendMode_">IsBlendModeSupported(BlendMode)</a>
        </td>
        <td class="markdown level1 summary"><p>Indicates whether this graphics implementation supports a specified blend mode.</p>
<p><a class="xref" href="GrapeCity.Documents.Imaging.Windows.GcD2DBitmapGraphics.html">GcD2DBitmapGraphics</a> supports all blend modes, so this method always returns <a href="https://learn.microsoft.com/dotnet/csharp/language-reference/builtin-types/bool">true</a>.</p>
</td>
      </tr>
      <tr>
        <td id="GrapeCity_Documents_Imaging_Windows_GcD2DBitmapGraphics_PopTransparencyLayer" data-uid="GrapeCity.Documents.Imaging.Windows.GcD2DBitmapGraphics.PopTransparencyLayer">
          <a class="xref" href="GrapeCity.Documents.Imaging.Windows.GcD2DBitmapGraphics.PopTransparencyLayer.html#GrapeCity_Documents_Imaging_Windows_GcD2DBitmapGraphics_PopTransparencyLayer">PopTransparencyLayer()</a>
        </td>
        <td class="markdown level1 summary"><p>Stops redirecting drawing operations to the transparency layer that was created by the last
<a class="xref" href="../DS.Documents.Imaging/GrapeCity.Documents.Drawing.GcGraphics.PushTransparencyLayer.html#GrapeCity_Documents_Drawing_GcGraphics_PushTransparencyLayer_System_Nullable_System_Drawing_RectangleF__System_Single_">PushTransparencyLayer(RectangleF?, float)</a> call.</p>
</td>
      </tr>
      <tr>
        <td id="GrapeCity_Documents_Imaging_Windows_GcD2DBitmapGraphics_PushTransparencyLayer_System_Nullable_System_Drawing_RectangleF__System_Single_" data-uid="GrapeCity.Documents.Imaging.Windows.GcD2DBitmapGraphics.PushTransparencyLayer(System.Nullable{System.Drawing.RectangleF},System.Single)">
          <a class="xref" href="GrapeCity.Documents.Imaging.Windows.GcD2DBitmapGraphics.PushTransparencyLayer.html#GrapeCity_Documents_Imaging_Windows_GcD2DBitmapGraphics_PushTransparencyLayer_System_Nullable_System_Drawing_RectangleF__System_Single_">PushTransparencyLayer(RectangleF?, float)</a>
        </td>
        <td class="markdown level1 summary"><p>Adds a transparency layer to the current graphics. That layer receives all subsequent drawing
operations until <a class="xref" href="../DS.Documents.Imaging/GrapeCity.Documents.Drawing.GcGraphics.PopTransparencyLayer.html#GrapeCity_Documents_Drawing_GcGraphics_PopTransparencyLayer">PopTransparencyLayer()</a> is called.</p>
</td>
      </tr>
      <tr>
        <td id="GrapeCity_Documents_Imaging_Windows_GcD2DBitmapGraphics_SetBlendMode_GrapeCity_Documents_Drawing_BlendMode_" data-uid="GrapeCity.Documents.Imaging.Windows.GcD2DBitmapGraphics.SetBlendMode(GrapeCity.Documents.Drawing.BlendMode)">
          <a class="xref" href="GrapeCity.Documents.Imaging.Windows.GcD2DBitmapGraphics.SetBlendMode.html#GrapeCity_Documents_Imaging_Windows_GcD2DBitmapGraphics_SetBlendMode_GrapeCity_Documents_Drawing_BlendMode_">SetBlendMode(BlendMode)</a>
        </td>
        <td class="markdown level1 summary"><p>For internal use.
Sets the current blend mode.</p>
</td>
      </tr>
      <tr>
        <td id="GrapeCity_Documents_Imaging_Windows_GcD2DBitmapGraphics_SetTransparencyMask_System_Object_" data-uid="GrapeCity.Documents.Imaging.Windows.GcD2DBitmapGraphics.SetTransparencyMask(System.Object)">
          <a class="xref" href="GrapeCity.Documents.Imaging.Windows.GcD2DBitmapGraphics.SetTransparencyMask.html#GrapeCity_Documents_Imaging_Windows_GcD2DBitmapGraphics_SetTransparencyMask_System_Object_">SetTransparencyMask(object)</a>
        </td>
        <td class="markdown level1 summary"><p>For internal use.
Sets a transparency mask for subsequent drawing operations, <code class="paramref">mask</code>
was created with IGcGraphicsLayer.CreateTransparencyMask().
Note! <code class="paramref">mask</code> can be null, in this case mask should be removed.</p>
</td>
      </tr>
    </tbody>
  </table>

</div>
