SkiaSharp Graphics in Xamarin.Forms
Použití SkiaSharpu pro 2D grafiku v Xamarin.Forms aplikacích
SkiaSharp je 2D grafický systém pro .NET a C# založený na opensourcovém grafickém stroji Skia, který se ve velkém rozsahu používá v produktech Google. SkiaSharp můžete ve svých Xamarin.Forms aplikacích použít k kreslení 2D vektorové grafiky, rastrových obrázků a textu.
Tato příručka předpokládá, že jste obeznámeni s programováním Xamarin.Forms .
SkiaSharp Preliminaries
SkiaSharp pro Xamarin.Forms je zabalen jako balíček NuGet. Po vytvoření Xamarin.Forms řešení v sadě Visual Studio nebo Visual Studio pro Mac můžete pomocí správce balíčků NuGet vyhledat balíček SkiaSharp.Views.Forms a přidat ho do svého řešení. Pokud po přidání skiaSharpu zkontrolujete oddíl Reference každého projektu, uvidíte, že do každého projektu v řešení byly přidány různé knihovny SkiaSharp .
Pokud vaše aplikace cílí na iOS, upravte Xamarin.Forms jeho soubor Info.plist a změňte minimální cíl nasazení na iOS 8.0.
Na libovolné stránce jazyka C#, která používá SkiaSharp, budete chtít zahrnout using
direktivu pro SkiaSharp
obor názvů, která zahrnuje všechny třídy, struktury a výčty SkiaSharp, které použijete ve svém grafickém programování. Budete také chtít direktivu using
SkiaSharp.Views.Forms
pro obor názvů pro třídy specifické pro Xamarin.Forms. Jedná se o mnohem menší obor názvů, přičemž nejdůležitější třída je SKCanvasView
. Tato třída je odvozena od Xamarin.FormsView
třídy a hostuje výstup grafiky SkiaSharp.
Důležité
Obor SkiaSharp.Views.Forms
názvů obsahuje SKGLView
také třídu, která je odvozena z View
openGL pro vykreslování grafiky. Pro účely jednoduchosti se tento průvodce omezuje na SKCanvasView
, ale místo toho je použití SKGLView
poměrně podobné.
Základy kreslení ve SkiaSharpu
Některé z nejjednodušších grafických obrázků, které můžete kreslit pomocí SkiaSharpu, jsou kruhy, ovály a obdélníky. Při zobrazení těchto obrázků se dozvíte o souřadnicích, velikostech a barvách SkiaSharpu. Zobrazení textu a rastrovýchobrázkůchch
Čáry a cesty ve SkiaSharpu
Grafická cesta je řada propojených rovných čar a křivek. Cesty můžou být tahy, vyplněné nebo obojí. Tento článek zahrnuje mnoho aspektů kreslení čar, včetně konců tahů a spojení a přerušovaných a tečkovaných čar, ale zastavuje krátké geometrie křivek.
Transformace SkiaSharp
Transformace umožňují jednotný překlad, škálování, otočení nebo nerovnoměrnou distribuci grafických objektů. Tento článek také ukazuje, jak můžete použít standardní 3-by-3 transformační matici pro vytváření neffinových transformací a použití transformací na cesty.
Křivky a cesty ve SkiaSharpu
Zkoumání cest pokračuje přidáním křivek k objektům cesty a zneužitím dalších výkonných funkcí cesty. Uvidíte, jak můžete zadat celou cestu v stručné textovém řetězci, jak používat efekty cesty a jak se ponořit do vnitřních cest.
Rastrové obrázky SkiaSharp
Rastrové obrázky jsou obdélníková pole bitů odpovídajících pixelům zobrazovacího zařízení. Tato série článků ukazuje, jak načíst, uložit, zobrazit, vytvořit, kreslit, animovat a získat přístup k bitům rastrových obrázků SkiaSharp.
Efekty SkiaSharp
Efekty jsou vlastnosti, které mění normální zobrazení grafiky, včetně lineárních a kruhových přechodů, rastrových dlaždic, režimů prolnutí, rozostření a dalších.