SkiaSharp is a cross-platform 2D graphics API for .NET platforms based on Google's Skia Graphics Library. It provides a comprehensive 2D API that can be used across mobile, server and desktop models to render images.
Перейти к файлу
Matthew Leibowitz 34093ecb6e
Pulling in some changes from other places (#1054)
2019-12-07 23:09:32 +02:00
.github Update bug-report.md 2019-12-03 16:01:38 +02:00
binding Pulling in some changes from other places (#1054) 2019-12-07 23:09:32 +02:00
cake Improve native build process + add Nano Server (#1040) 2019-12-04 03:12:12 +02:00
changelogs Updated all the samples (#1021) 2019-11-21 21:26:38 +02:00
docs@06af499f4c Updated all the samples (#1021) 2019-11-21 21:26:38 +02:00
externals Cherry pick some fixes for buffer overflow bugs (#1037) 2019-11-27 10:14:24 +02:00
images Added a wide NuGet icon 2019-11-23 02:50:38 +02:00
native Improve native build process + add Nano Server (#1040) 2019-12-04 03:12:12 +02:00
nuget Improve native build process + add Nano Server (#1040) 2019-12-04 03:12:12 +02:00
samples Updated all the samples (#1021) 2019-11-21 21:26:38 +02:00
scripts Improve native build process + add Nano Server (#1040) 2019-12-04 03:12:12 +02:00
source Improve native build process + add Nano Server (#1040) 2019-12-04 03:12:12 +02:00
tests Pulling in some changes from other places (#1054) 2019-12-07 23:09:32 +02:00
tools Update the docs and reduce diff (#979) 2019-10-17 14:29:31 +02:00
utils Pulling in some changes from other places (#1054) 2019-12-07 23:09:32 +02:00
workbooks Set the version to v1.60.2 for the upcoming release 2018-05-29 23:35:10 +02:00
.editorconfig Use Span<T> for data, bitmap data and text blobs (#865) 2019-06-26 12:56:14 +02:00
.gitattributes Add a .gitattributes for the bash scripts 2018-07-20 00:00:19 +02:00
.gitignore Some of the colorspaces created are just references (#922) 2019-09-24 01:34:44 +02:00
.gitmodules HarfBuzzSharp 2.6.1 (#929) 2019-09-28 16:18:59 +02:00
External-Dependency-Info.txt Added the licensing information to the nugets 2018-02-23 04:19:30 +02:00
LICENSE.md updated the license 2018-02-23 04:20:37 +02:00
LICENSE.txt Moving more work into MSBuild 2018-03-20 05:01:37 +02:00
README.md Update README.md (#1043) 2019-12-02 21:02:06 +02:00
VERSIONS.txt Improve native build process + add Nano Server (#1040) 2019-12-04 03:12:12 +02:00
bootstrapper.ps1 Few changes for release (#850) 2019-05-24 07:14:37 +02:00
bootstrapper.sh Few changes for release (#850) 2019-05-24 07:14:37 +02:00
build.cake Improve native build process + add Nano Server (#1040) 2019-12-04 03:12:12 +02:00
global.json Some of the colorspaces created are just references (#922) 2019-09-24 01:34:44 +02:00
mono.pub Added strong name signing #92 2016-08-12 00:11:33 +02:00
mono.snk Added strong name signing #92 2016-08-12 00:11:33 +02:00

README.md

SkiaSharp

SkiaSharp SkiaSharp.Views SkiaSharp.Views.Forms HarfBuzzSharp
chat SkiaSharp API Docs HarfBuzzSharp API Docs SkiaSharp Guides
Build Status Build Status

SkiaSharp is a cross-platform 2D graphics API for .NET platforms based on Google's Skia Graphics Library (skia.org). It provides a comprehensive 2D API that can be used across mobile, server and desktop models to render images.

SkiaSharp provides cross-platform bindings for:

  • .NET Standard 1.3
  • .NET Core
  • Tizen
  • Xamarin.Android
  • Xamarin.iOS
  • Xamarin.tvOS
  • Xamarin.watchOS
  • Xamarin.Mac
  • Windows Classic Desktop (Windows.Forms / WPF)
  • Windows UWP (Desktop / Mobile / Xbox / HoloLens)

The API Documentation is available on the web to browse.

Using SkiaSharp

SkiaSharp is available as a convenient NuGet package, to use install the package like this:

nuget install SkiaSharp

Because there are multiple distros of Linux, and we cannot possibly support them all, we have a separate NuGet package that will contain the supported binaries for a few distros: SkiaSharp.NativeAssets.Linux. (distros) (more info)

There is also a early access feed that you can use to get the latest and greatest, before it goes out to the public:

https://aka.ms/skiasharp-eap/index.json

Building SkiaSharp

Before building SkiaSharp:

  • Python 2.7 is available in the PATH environment variable on Windows
  • Android NDK r15 is available in the ANDROID_NDK_HOME environment variable on macOS
  • .NET Core is installed on all platforms
  • C/C++ Compiler (MSVC / "Desktop development" package on Windows)

First, clone the repository:

$ git clone https://github.com/mono/SkiaSharp.git

Next, set up the submodules:

$ cd SkiaSharp
$ git submodule update --init --recursive

Finally, build everything:

Mac/Linux:

$ ./bootstrapper.sh -t everything

Windows:

> .\bootstrapper.ps1 -t everything

Compare Code

Here are some links to show the differences in our code as compared to Google's code.

What version are we on? m68
Are we up-to-date with Google? Compare
What have we added? Compare