Xamarin.Essentials: Conversores de cores

A classe ColorConverters em Xamarin.Essentials fornece vários métodos auxiliares para System.Drawing.Color.

Introdução

Para começar a usar essa API, leia o guia de introdução para Xamarin.Essentials garantir que a biblioteca esteja instalada e configurada corretamente em seus projetos.

Usando conversores de cor

Adicione uma referência a Xamarin.Essentials em sua classe:

using Xamarin.Essentials;

Ao trabalhar com System.Drawing.Color você, você pode usar os conversores internos de Xamarin.Essentials para criar uma cor a partir de Hsl, Hex ou UInt.

var blueHex = ColorConverters.FromHex("#3498db");
var blueHsl = ColorConverters.FromHsl(204, 70, 53);
var blueUInt = ColorConverters.FromUInt(3447003);

Usando extensões de cor

Os métodos de extensão em System.Drawing.Color permitem aplicar propriedades diferentes:

var blue = ColorConverters.FromHex("#3498db");

// Multiplies the current alpha by 50%
var blueWithAlpha = blue.MultiplyAlpha(.5f);

Há vários outros métodos de extensão incluindo:

  • GetComplementary
  • MultiplyAlpha
  • ToUInt
  • WithAlpha
  • WithHue
  • WithLuminosity
  • WithSaturation

Usando as extensões de plataforma

Além disso, você pode converter System.Drawing.Color para a estrutura de cor específica da plataforma. Esses métodos só podem ser chamados do iOS, do Android e dos projetos UWP.

var system = System.Drawing.Color.FromArgb(255, 52, 152, 219);

// Extension to convert to Android.Graphics.Color, UIKit.UIColor, or Windows.UI.Color
var platform = system.ToPlatformColor();
var platform = new Android.Graphics.Color(52, 152, 219, 255);

// Back to System.Drawing.Color
var system = platform.ToSystemColor();

O método ToSystemColor se aplica a Android.Graphics.Color, UIKit.UIColor e Windows.UI.Color.

API

Encontre mais vídeos sobre o Xamarin no Channel 9 e no YouTube.