2015-11-13 18:21:00 +03:00
|
|
|
# SkiaSharp
|
2015-11-14 07:33:17 +03:00
|
|
|
|
2016-02-23 00:04:36 +03:00
|
|
|
SkiaSharp is a cross-platform, managed binding for the
|
2016-02-22 19:22:29 +03:00
|
|
|
Skia Graphics Library (https://skia.org/)
|
2015-11-14 07:33:17 +03:00
|
|
|
|
2016-02-22 19:22:29 +03:00
|
|
|
## What is Included
|
2015-11-14 07:33:17 +03:00
|
|
|
|
2016-02-23 00:04:36 +03:00
|
|
|
SkiaSharp provides a PCL and platform-specific bindings for:
|
2015-11-14 07:33:17 +03:00
|
|
|
|
2016-02-22 19:22:29 +03:00
|
|
|
- Mac OS X
|
|
|
|
- Xamarin.Android
|
|
|
|
- Xamarin.iOS
|
|
|
|
- Windows Desktop
|
|
|
|
- Mac Desktop
|
|
|
|
|
2016-02-22 21:44:17 +03:00
|
|
|
You can also build this on your particular variant of Unix
|
|
|
|
to create your native libraries.
|
2016-02-22 19:22:29 +03:00
|
|
|
|
2016-02-23 19:48:23 +03:00
|
|
|
## Using SkiaSharp
|
2016-02-22 19:22:29 +03:00
|
|
|
|
2016-02-22 21:44:17 +03:00
|
|
|
Check our getting [started guide](https://developer.xamarin.com/guides/cross-platform/drawing/)
|
2016-02-22 19:22:29 +03:00
|
|
|
|
2016-02-23 19:48:23 +03:00
|
|
|
## Building SkiaSharp
|
|
|
|
|
2016-03-01 12:30:33 +03:00
|
|
|
### Mac OS X
|
|
|
|
|
|
|
|
Run from Bash
|
2016-02-23 19:48:23 +03:00
|
|
|
|
|
|
|
$ ./bootstrapper.sh -t libs
|
|
|
|
|
2016-03-01 12:30:33 +03:00
|
|
|
### Windows
|
|
|
|
|
|
|
|
You need Python 2.7 in `PATH` environment variable. Then you need to run following commands from `skia` directory:
|
|
|
|
|
|
|
|
> ..\depot_tools\gclient.bat config --unmanaged https://github.com/mono/skia.git
|
|
|
|
> ..\depot_tools\gclient.bat sync
|
|
|
|
|
|
|
|
The process will take some time while gclient downloads Skia build dependencies.
|
|
|
|
|
|
|
|
Then you can finally build it:
|
2016-02-23 19:48:23 +03:00
|
|
|
|
|
|
|
> .\bootstrapper.ps1 -Target libs
|
|
|
|
|
2016-03-01 12:30:33 +03:00
|
|
|
|
|
|
|
|
2016-02-23 19:48:23 +03:00
|
|
|
There are several targets available:
|
|
|
|
|
|
|
|
- `externals` - builds all the native libraries
|
|
|
|
- [win] `externals-windows` - builds the native libraries for Windows
|
|
|
|
- [mac] `externals-osx` - builds the native libraries for Mac OS X
|
|
|
|
- [mac] `externals-ios` - builds the native libraries for iOS
|
|
|
|
- [mac] `externals-andoid` - builds the native libraries for Android
|
|
|
|
- `libs` - builds all the managed libraries
|
|
|
|
- [win] `libs-windows` - builds the managed libraries that can be built on Windows
|
|
|
|
- [mac] `libs-osx` - builds the managed libraries that can be built on Mac OS X
|
|
|
|
- `tests` - builds and runs the tests
|
|
|
|
- `samples` - builds the samples available for the current platform
|
|
|
|
- `docs` - updates the mdoc files
|
|
|
|
- `nuget` - packages the libraries into a NuGet
|
|
|
|
- `CI` - builds everything
|
|
|
|
|
2016-02-22 19:22:29 +03:00
|
|
|
## Where is Windows Phone / Store
|
|
|
|
|
|
|
|
At this time, Windows Phone and Windows Store apps are not
|
|
|
|
supported. This is due to the native library not supporting
|
|
|
|
those platforms:
|
|
|
|
|
2016-02-22 19:37:58 +03:00
|
|
|
- https://bugs.chromium.org/p/skia/issues/detail?id=2059
|
|
|
|
- https://groups.google.com/forum/#!searchin/skia-discuss/windows$20phone/skia-discuss/VHRCLl-XV8E/YpUKZr4OVKgJ
|
|
|
|
- https://groups.google.com/forum/#!searchin/skia-discuss/windows$208/skia-discuss/FF4-KzRRDp8/S0Uoy1f0waIJ
|