Skip to content

Releases: d2phap/DXControl

v2.6.0

08 Jul 12:52

Choose a tag to compare

Install/Update it from Nuget:

https://www.nuget.org/packages/D2Phap.DXControl

What's new:

Full Changelog: 2.5.0...2.6.0

v2.5.0 - Direct2D 1.3

25 Feb 16:09

Choose a tag to compare

Install/Update it from Nuget:

https://www.nuget.org/packages/D2Phap.DXControl

What's new:

  • Use Direct2D 1.3 features by default (see Breaking changes).
  • Exposed event VerticalBlankTickerWaitError to handle exception from VerticalBlankTicker.
  • Added virtual method void OnVerticalBlankTickerWaitError(VerticalBlankTickerErrorEventArgs e).
  • Fixed Win32 WAIT_TIMEOUT error: The wait operation timed out. when the monitor is turned off.

⚠️ Breaking changes!

These changes are because of upgrading to Direct2D 1.3, and using IComObject<> to utilize the extension methods.

1. DXControl class

Properties Old type New type
DXControl.RenderTarget ID2D1HwndRenderTarget IComObject<ID2D1HwndRenderTarget>
DXControl.Device ID2D1DeviceContext IComObject<ID2D1DeviceContext6>
DXControl.Direct2DFactory ID2D1Factory IComObject<ID2D1Factory1>
DXControl.DirectWriteFactory IDWriteFactory IComObject<IDWriteFactory5>

2. D2DGraphics class

Old type New type
The argument object? bitmap in D2DGraphics.DrawBitmap(...) ID2D1Bitmap ComObject<ID2D1Bitmap1>
D2DGraphics.DeviceContext ID2D1DeviceContext IComObject<ID2D1DeviceContext6>

3. DXHelper class

Old type New type
The argument bmp in DXHelper.DisposeD2D1Bitmap(...) ID2D1Bitmap IComObject<ID2D1Bitmap1>
The return value of DXHelper.CreateDefaultBitmapProps(...) D2D1_BITMAP_PROPERTIES D2D1_BITMAP_PROPERTIES1
The argument dc in DXHelper.ToD2D1Bitmap(...) ID2D1DeviceContext IComObject<ID2D1DeviceContext6>
The return value of DXHelper.ToD2D1Bitmap(...) ComObject<ID2D1Bitmap> IComObject<ID2D1Bitmap1>

Full Changelog: 2.4.1...2.5.0

2.4.1 - Chore

28 Jan 07:47

Choose a tag to compare

Install/Update it from Nuget:

https://www.nuget.org/packages/D2Phap.DXControl

What's new:

  • Updated WicNet to v1.6.4.1.
  • Removed DISPLAY_DEVICE, DISPLAY_DEVICE_FLAGS files.
  • Removed extensions methods: CapitalizeFirst(), EqualsIgnoreCase(), Nullify().

Full Changelog: 2.3.1...2.4.1

v2.3.1 - `MeasureText` fix

15 Dec 05:48

Choose a tag to compare

Install/Update it from Nuget:

https://www.nuget.org/packages/D2Phap.DXControl

What's new:

  • Fixed D2DGraphics.MeasureText() is not correct.
  • Exposed all private variable of DXControl as protected variables.

Full Changelog: 2.3.0...2.3.1

v2.3.0 - DPI improvement

14 Dec 12:16

Choose a tag to compare

Install/Update it from Nuget:

https://www.nuget.org/packages/D2Phap.DXControl

What's new:

  • Improves DPI scaling for drawing text
  • Updates WicNet to v1.6.1
  • Adds support for .NET 7

⚠️ Breaking changes!

  • Removed methods: DrawGeometry, GetCombinedRectanglesGeometry, GetCombinedEllipsesGeometry from the interface IGraphics, but kept it for D2DGraphics

Full Changelog: 2.2.0...2.3.0

v2.2.0 - DrawGeometry

20 Oct 15:16

Choose a tag to compare

Install/Update it from Nuget:

https://www.nuget.org/packages/D2Phap.DXControl

What's new:

  • Added 3 new methods to IGraphics interface:
    • GetCombinedRectanglesGeometry()
    • GetCombinedEllipsesGeometry()
    • DrawGeometry()
  • Added D2DFactory property to D2DGraphics

WIP / Limitation:

  • When using method DrawGeometry() in GdiGraphics, only CombineMode.Intesect and CombineMode.Exclude work correctly.

Full Changelog: 2.1.0...2.2.0

v2.1.0 - Unkown Error 0xc01e0006

24 Sep 04:22

Choose a tag to compare

Install/Update it from Nuget:

https://www.nuget.org/packages/D2Phap.DXControl

What's Changed

  • Fixed an unhandled exception when the display is turned off, VerticalBlankTicker throws an unknown error 0xc01e0006: smourier/DirectN#29

Full Changelog: 2.0.0...2.1.0

v2.0.0 - Hybrid graphics

20 Aug 10:10
4bebea1

Choose a tag to compare

What's Changed

  • Added support for drawing hybrid graphics by IGraphics interface
  • Replaced OnDirect2DRender() and OnGdiPlusRender() by OnRender(IGraphics)
  • Replaced events: RenderByDirect2D and RenderByGdiPLus by Render
  • Removed DXGraphics class, use IGraphics instead.
  • Added new helper functions to DXHelper.
  • Added new enums: DirectN.D2D1_BITMAP_BRUSH_PROPERTIES, DirectN.D2D1_BITMAP_BRUSH_PROPERTIES1

Full Changelog: 1.1.0...2.0.0

v1.1.0 - Stable release

05 Aug 13:44

Choose a tag to compare

Lots of fixes and improvements

Full Changelog: 1.0.3...1.1.0

Nuget package: https://www.nuget.org/packages/D2Phap.DXControl

v1.0.3 - First release

30 Jul 10:22

Choose a tag to compare