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 usingSkiaSharp.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.