SkiaSharp Gráficos em Xamarin.Forms

Use o SkiaSharp para gráficos 2D em seus Xamarin.Forms aplicativos

SkiaSharp é um sistema gráfico 2D para .NET e C# alimentado pelo motor gráfico de código aberto Skia que é usado extensivamente em produtos do Google. Você pode usar o SkiaSharp em seus Xamarin.Forms aplicativos para desenhar gráficos vetoriais 2D, bitmaps e texto.

Este guia pressupõe que você esteja familiarizado com Xamarin.Forms a programação.

SkiaSharp Preliminares

SkiaSharp for Xamarin.Forms é embalado como um pacote NuGet. Depois de criar uma Xamarin.Forms solução no Visual Studio ou no Visual Studio para Mac, você pode usar o gerenciador de pacotes NuGet para procurar o pacote SkiaSharp.Views.Forms e adicioná-lo à sua solução. Se você verificar a seção Referências de cada projeto depois de adicionar SkiaSharp, poderá ver que várias bibliotecas SkiaSharp foram adicionadas a cada um dos projetos na solução.

Se o Xamarin.Forms aplicativo tiver como destino o iOS, edite o arquivo Info.plist para alterar o destino mínimo de implantação para iOS 8.0.

Em qualquer página C# que use SkiaSharp, você desejará incluir uma using diretiva para o SkiaSharp namespace, que engloba todas as classes, estruturas e enumerações SkiaSharp que você usará em sua programação gráfica. Você também desejará uma using diretiva para o SkiaSharp.Views.Forms namespace para as classes específicas do Xamarin.Forms. Este é um namespace muito menor, com a classe mais importante sendo SKCanvasView. Essa classe deriva da classe e hospeda Xamarin.FormsView sua saída gráfica SkiaSharp.

Importante

O SkiaSharp.Views.Forms namespace também contém uma SKGLView classe que deriva de View , mas usa OpenGL para renderizar gráficos. Para fins de simplicidade, este guia se restringe a SKCanvasView, mas usar SKGLView em vez disso é bastante semelhante.

Noções básicas de desenho do SkiaSharp

Algumas das figuras gráficas mais simples que você pode desenhar com o SkiaSharp são círculos, ovais e retângulos. Ao exibir essas figuras, você aprenderá sobre as coordenadas, tamanhos e cores do SkiaSharp. A exibição de texto e bitmaps é mais complexa, mas esses artigos também introduzem essas técnicas.

Caminhos e linhas de SkiaSharp

Um caminho gráfico é uma série de linhas retas e curvas conectadas. Os caminhos podem ser traçados, preenchidos ou ambos. Este artigo abrange muitos aspectos do desenho de linhas, incluindo extremidades e junções de traçado e linhas tracejadas e pontilhadas, mas não contém geometrias de curva.

Transformações de SkiaSharp

As transformações permitem que os objetos gráficos sejam uniformemente traduzidos, dimensionados, girados ou distorcidos. Este artigo também mostra como você pode usar uma matriz de transformação 3 por 3 padrão para criar transformações não afins e aplicar transformações a caminhos.

Curvas e caminhos de SkiaSharp

A exploração de caminhos continua com a adição de curvas a objetos de caminho e a exploração de outros recursos de caminho poderosos. Você verá como pode especificar um caminho inteiro em uma cadeia de caracteres de texto concisa, como usar efeitos de caminho e como explorar os internos do caminho.

Bitmaps do SkiaSharp

Bitmaps são matrizes retangulares de bits correspondentes aos pixels de um dispositivo de exibição. Esta série de artigos mostra como carregar, salvar, exibir, criar, desenhar, animar e acessar os bits de bitmaps SkiaSharp.

Efeitos SkiaSharp

Efeitos são propriedades que alteram a exibição normal de gráficos, incluindo gradientes lineares e circulares, mosaico de bitmap, modos de mesclagem, desfoque e outros.