2D Drawing

Cross Platform 2D Drawing with SkiaSharp

SkiaSharp provides a powerful C# API for doing 2D graphics. It is powered by Google’s Skia library, the same library that powers Google Chrome, Firefox and Android’s graphic stacks.

SkiaSharp is a Portable Library, and ships conveniently as a cross-platform NuGet package, and supports the following platforms out of the box: macOS, Xamarin.Android, Xamarin.iOS, and the Windows Desktop.

Introduction to SkiaSharp

An overview of the core concepts of SkiaSharp and sample code to render graphics, text, bitmaps, and use image filters.

SkiaSharp Tutorials for Xamarin.Forms

Learn how to work with cross platform graphics that render in Xamarin.Forms:

  • Basics
    • Draw a circle
    • Respond to touch
    • Pixels and device-independent units
    • Scaling
    • Animation
    • Integrating text
  • Lines and Paths
    • Stroke caps
    • Disconnected lines
    • Simple paths
    • Stroke joins
    • Fill types
    • Dots and dashes

Platform Specific Notes

This page describes the setup instructions for SkiaSharp on different platforms including iOS, Android, macOS, and Windows.

API Documentation

You can browse the API documentation for SkiaSharp on our web site.

Work in Progress

SkiaSharp is a work in progress that we are sharing with our community. While we have bound important parts of the Skia API, much work remains to be done. We are using the stable C API surfaced by Skia, and our plan is to continue contributing our work to the C bindings of Skia to provide full coverage to the APIs.

To help us guide our binding efforts, please leave comments or suggestions as issues on the GitHub repository http://github.com/mono/SkiaSharp.

Xamarin Workbook

If it's not already installed, install the Xamarin Workbooks app first. The workbook file should download automatically, but if it doesn't, just click to start the workbook download manually.