Skip to content

Features

Shawn Hargreaves edited this page Oct 12, 2015 · 31 revisions

The main things we have implemented in Win2D so far are:

Easy-to-use Windows Runtime API
  • Available from .NET and C++
  • Supports Windows 10, Windows 8.1, and Windows Phone 8.1
Immediate mode 2D graphics rendering with GPU acceleration
  • Implemented as a layer on top of Direct2D, DirectImage, and DirectWrite
  • Interop to and from underlying types, so you can mix & match Win2D with native D2D
Bitmap graphics
  • Load, save, and draw bitmap images
  • Render to texture
  • Use bitmaps as opacity masks
Vector graphics
  • Draw primitive shapes (lines, rectangles, circles, etc.) or arbitrarily complex geometry
  • Fill shapes using solid colors, image brushes, or linear and radial gradients
  • Draw lines of any width with flexible stroke styles (dotted, dashed, etc.)
  • High quality antialiasing
  • Rich geometry manipulation (union, intersect, compute point on path, tessellate, etc.)
  • Clip drawing to arbitrary geometric regions
  • Capture drawing operations in command lists for later replay
  • Rasterize ink strokes (from a stylus)
Powerful image processing effects
  • Blurs
  • Blends
  • Color adjustments (brightness, contrast, exposure, highlights & shadows, etc.)
  • Filters (convolve, edge detection, emboss, sharpen)
  • Lighting
  • Custom pixel shaders
  • And many more...
Text
  • Fully internationalized Unicode text rendering
  • Text layouts can be drawn, measured, or hit-tested against
  • Convert text outlines to geometry
UI integration
  • XAML CanvasControl make it easy to get up and running
  • Can also create advanced things like owner-draw XAML controls
  • XAML CanvasAnimatedControl provides Update/Draw game loop programming model
  • XAML CanvasVirtualControl for drawing to very large virtualized surfaces
  • For those who prefer to bypass XAML, can also draw directly to a CoreWindow
  • Printing

Check out the product backlog to see what we plan to work on next.

Clone this wiki locally