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 db0e4715ff Do not stretch the background (#2922)
* Do not stretch the background

When resizing a view, the background will be stretched making the image distorted and not a great experience.

This PR make sure to never scale the background brush and rather keep it top-left aligned.

* Update SKXamlCanvas.cs

* Scale the brush instead of stretching it

(cherry picked from commit 3ace63b183)
2024-07-05 08:18:45 +00:00
.config Update Cake to the latest 2.x version (#2500) 2023-06-21 06:04:42 +08:00
.github Try do basic automation of issues and PRs 2022-08-12 12:52:31 +02:00
benchmarks Update benchmark projects (#2130) 2022-06-28 03:36:37 +02:00
binding Fix the GetKerningPairAdjustments API. (#2858) (#2886) 2024-06-18 11:12:11 +02:00
cake Update Cake to the latest 2.x version (#2500) 2023-06-21 06:04:42 +08:00
changelogs Re-generate all the changelogs (#2592) (#2593) 2023-09-01 04:59:52 +08:00
docs@55b444d6e1 Re-generate docs 2022-08-14 13:15:56 +02:00
externals Revert "[release/2.x] Update libjpeg-turbo to 3.0.0 (#2581)" (#2702) 2024-01-10 22:12:27 +02:00
images Add net6.0-* for the binding projects (#1707) 2021-06-16 08:23:56 +02:00
interactive Split SkiaSharp package into smaller "Native Asset" packages (#1758) 2021-08-06 02:09:17 +02:00
native [release/2.x] Clean up APIScan and other compliance yaml (#2805) 2024-03-27 16:15:21 +02:00
nuget Use new license expressions (#2877) 2024-05-31 20:53:29 +02:00
samples feat: Move to JSImport for WinUI Target on net7.0 (#2428) 2023-06-21 21:17:49 +08:00
scripts Bump the SkiaSharp versions to 2.88.9 2024-04-09 16:57:46 +02:00
source Do not stretch the background (#2922) 2024-07-05 08:18:45 +00:00
tests [release/2.x] Clean up APIScan and other compliance yaml (#2805) 2024-03-27 16:15:21 +02:00
utils Update a few dependencies (#2487) 2023-06-14 17:03:33 +02:00
.editorconfig Add WASM Support for Uno Platform (#1333) 2020-07-21 03:22:38 +02:00
.gitattributes Add a .gitattributes for the bash scripts 2018-07-20 00:00:19 +02:00
.gitignore Ignore some macOS files 2023-03-15 14:02:53 +02:00
.gitmodules Remove the externals/harfbuzz submodule (#1599) 2021-02-01 23:13:44 +02:00
CODE-OF-CONDUCT.md Link Code of Conduct (#1216) 2020-04-08 11:00:42 +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 and externals/skia submodule (#2118) 2022-06-17 19:20:54 +02:00
VERSIONS.txt Bump the SkiaSharp versions to 2.88.9 2024-04-09 16:57:46 +02:00
bootstrapper.ps1 Switch to .NET Tool version of Cake (#1793) 2021-09-04 00:16:26 +02:00
bootstrapper.sh Switch to .NET Tool version of Cake (#1793) 2021-09-04 00:16:26 +02:00
build.cake [release/2.x] Clean up APIScan and other compliance yaml (#2805) 2024-03-27 16:15:21 +02:00
cgmanifest.json Add `$schema` to `cgmanifest.json` (#2232) 2023-06-07 23:12:27 +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
nuget.config Use the new XHarness .NET tool and latest .NET 6 MAUI (#2478) 2023-06-07 22:42:37 +02:00

README.md

SkiaSharp

SkiaSharp HarfBuzzSharp

SkiaSharp.Views SkiaSharp.Views.Forms SkiaSharp.Views.Maui.Controls SkiaSharp.Views.Uno

discord 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
  • .NET 6
  • Tizen
  • Android
  • iOS
  • tvOS
  • watchOS
  • macOS
  • Mac Catalyst
  • WinUI 3 (Windows App SDK / Uno Platform)
  • Windows Classic Desktop (Windows.Forms / WPF)
  • Windows UWP (Desktop / Mobile / Xbox / HoloLens)
  • Web Assembly (WASM)
  • Uno Platform (iOS / macOS / Android / WebAssembly / UWP)

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

Building SkiaSharp is mostly straight forward. The main issue is the multiple dependencies for each platform.

However, these are easy to install as they are found on the various websites. If you are just working on managed code, it is even easier as there mays to skip all the native builds.

  • To get started building, go here.
  • If you are just wanting a custom Linux build, go here

Compare Code

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

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