D2Phap.DXControl 2.4.0

There is a newer version of this package available.
See the version list below for details.
dotnet add package D2Phap.DXControl --version 2.4.0                
NuGet\Install-Package D2Phap.DXControl -Version 2.4.0                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="D2Phap.DXControl" Version="2.4.0" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add D2Phap.DXControl --version 2.4.0                
#r "nuget: D2Phap.DXControl, 2.4.0"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install D2Phap.DXControl as a Cake Addin
#addin nuget:?package=D2Phap.DXControl&version=2.4.0

// Install D2Phap.DXControl as a Cake Tool
#tool nuget:?package=D2Phap.DXControl&version=2.4.0                

D2Phap.DXControl

  • A WinForms hybrid control that supports both Direct2D and GDI+ drawing thanks to WicNet.
  • This control is used in ImageGlass software since version 9.0.

Nuget

Features

  • High performance drawing using Direct2D.
  • Names and types are exactly the same as the native concepts of Direct2D (interfaces, enums, structures, constants, methods, arguments, guids, etc...). So you can read the official documentation, use existing C/C++ samples, and start coding with .NET right away.
  • All native COM interfaces are generated as .NET (COM) interfaces, this makes .NET programming easier, but they are not strictly needed.
  • Option to draw by GDI+.
  • Supports animation drawing for both Direct2D and GDI+.

Requirements:

  • .NET 6.0, 7.0

Installation

Run the command

Install-Package D2Phap.DXControl

Example

<img src="https://user-images.githubusercontent.com/3154213/185740243-6a3cb1b6-13e6-4888-8c57-ce8ac9998c6e.png" width="500" />

Draws a rectangle, then moves it to the right side.

using D2Phap;

// create a WinForms custom control that extends from DXControl
public class DXCanvas : DXControl
{
    private RectangleF animatableRectangle = new(100, 100, 400, 200);

    public DXCanvas()
    {
        EnableAnimation = true;

        // use Direct2D
        UseHardwareAcceleration = true;
    }

    protected override void OnRender(IGraphics g)
    {
        // draw a yellow rectangle with green border
        g.FillRectangle(rectText, Color.FromArgb(100, Yellow));
        g.DrawRectangle(rectText, Color.Green);
    }


    // Update frame logics for animation
    protected override void OnFrame(FrameEventArgs e)
    {
        // animate the rectangle to the right
        animatableRectangle.left++;
    }
}

See Demo project for full details.

License

MIT

Support this project

Thanks for your gratitude and finance help!

Product Compatible and additional computed target framework versions.
.NET net6.0-windows7.0 is compatible.  net7.0-windows was computed.  net7.0-windows7.0 is compatible.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net6.0-windows7.0

  • net7.0-windows7.0

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories (1)

Showing the top 1 popular GitHub repositories that depend on D2Phap.DXControl:

Repository Stars
d2phap/ImageGlass
🏞 A lightweight, versatile image viewer