Gráficos de SkiaSharp en Xamarin.Forms

Usar SkiaSharp para gráficos 2D en las Xamarin.Forms aplicaciones

SkiaSharp es un sistema de gráficos 2D para .NET y C# impulsado por el motor gráfico de código abierto Skia que se utiliza ampliamente en los productos de Google. Puede usar SkiaSharp en las Xamarin.Forms aplicaciones para dibujar gráficos vectoriales 2D, mapas de bits y texto.

En esta guía se da por supuesto que está familiarizado con Xamarin.Forms la programación.

Preliminares de SkiaSharp

SkiaSharp para Xamarin.Forms se empaqueta como un paquete NuGet. Después de crear una Xamarin.Forms solución en Visual Studio o Visual Studio para Mac, puede usar el administrador de paquetes NuGet para buscar el paquete SkiaSharp.Views.Forms y agregarlo a la solución. Si comprueba la sección Referencias de cada proyecto después de agregar SkiaSharp, puede ver que se han agregado varias bibliotecas de SkiaSharp a cada uno de los proyectos de la solución.

Si la Xamarin.Forms aplicación tiene como destino iOS, edite su archivo Info.plist para cambiar el destino de implementación mínimo a iOS 8.0.

En cualquier página de C# que use SkiaSharp, querrá incluir una using directiva para el espacio de nombres, que abarca todas las clases, estructuras y enumeraciones de SkiaSharp que usará en la SkiaSharp programación de gráficos. También querrá una using directiva para el SkiaSharp.Views.Forms espacio de nombres de las clases específicas de Xamarin.Forms. Se trata de un espacio de nombres mucho más pequeño, con la clase más importante que es SKCanvasView. Esta clase deriva de la clase y hospeda la Xamarin.FormsView salida de gráficos SkiaSharp.

Importante

El SkiaSharp.Views.Forms espacio de nombres también contiene una SKGLView clase que deriva de View pero usa OpenGL para representar gráficos. Para simplificar, esta guía se restringe a SKCanvasView, pero el uso SKGLView en su lugar es bastante similar.

Conceptos básicos de dibujo de SkiaSharp

Algunas de las figuras gráficas más sencillas que puedes dibujar con SkiaSharp son círculos, óvalos y rectángulos. Al mostrar estas figuras, obtendrá información sobre las coordenadas, los tamaños y los colores de SkiaSharp. La visualización de texto y mapas de bits es más compleja, pero estos artículos también presentan esas técnicas.

Trazados y líneas de SkiaSharp

Un trazado gráfico es una serie de líneas rectas conectadas y curvas. Las rutas de acceso se pueden trazar, rellenar o ambas. En este artículo se incluyen muchos aspectos del dibujo de líneas, incluidos los extremos y combinaciones de trazo, y las líneas discontinuas y punteadas, pero se detiene a corto de geometrías de curva.

Transformaciones de SkiaSharp

Las transformaciones permiten traducir, escalar, rotar o sesgar uniformemente objetos gráficos. En este artículo también se muestra cómo puede usar una matriz de transformación estándar de 3 a 3 para crear transformaciones no afinas y aplicar transformaciones a rutas de acceso.

Trazados y curvas de SkiaSharp

La exploración de rutas de acceso continúa agregando curvas a objetos path y aprovechando otras características de ruta de acceso eficaces. Verá cómo puede especificar un trazado completo en una cadena de texto concisa, cómo usar efectos de trazado y cómo profundizar en los elementos internos del trazado.

Mapas de bits de SkiaSharp

Los mapas de bits son matrices rectangulares de bits correspondientes a los píxeles de un dispositivo de visualización. En esta serie de artículos se muestra cómo cargar, guardar, mostrar, crear, dibujar, animar y acceder a los bits de los mapas de bits SkiaSharp.

Efectos de SkiaSharp

Los efectos son propiedades que modifican la visualización normal de gráficos, incluidos degradados lineales y circulares, mosaicos de mapa de bits, modos de mezcla, desenfoque y otros.