Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
ColorConversionExtensions proporciona una serie de métodos de extensión que admiten la conversión, modificación o inspección de Colors.
Puedes encontrar ColorConversionExtensions en el espacio de nombres CommunityToolkit.Maui.Core.Extensions, así que solo tienes que añadir la siguiente línea para comenzar:
using CommunityToolkit.Maui.Core.Extensions;
Convertir colores
Los siguientes métodos permiten convertir Color.
ToBlackOrWhite
El método ToBlackOrWhite convierte Color en un valor monocromo de Colors.Black o Colors.White.
En el ejemplo siguiente se muestra cómo convertir Colors.Red a un valor monocromo:
using CommunityToolkit.Maui.Extensions.Core;
Colors.Red.ToBlackOrWhite();
ToBlackOrWhiteForText
El método ToBlackOrWhiteForText convierte el Color en un valor monocromo de Colors.Black o Colors.White en función de si el Color se considera oscuro para el ojo humano.
En el ejemplo siguiente se muestra cómo convertir Colors.Red a un valor monocromo:
using CommunityToolkit.Maui.Extensions.Core;
Colors.Red.ToBlackOrWhiteForText();
ToGrayScale
El método ToGrayScale convierte Color a una escala de grises Color.
En el ejemplo siguiente se muestra cómo convertir Colors.Red a un valor de escala de grises:
using CommunityToolkit.Maui.Extensions.Core;
Colors.Red.ToGrayScale();
ToInverseColor
El método ToInverseColor invierte el/la Color.
En el ejemplo siguiente se muestra cómo invertir Colors.Red:
using CommunityToolkit.Maui.Extensions.Core;
Colors.Red.ToInverseColor();
Determinar la oscuridad del color
Los métodos siguientes permiten determinar si Color se considera oscuro.
IsDark
Método IsDark si Color es oscuro.
En el ejemplo siguiente se muestra cómo determinar si Colors.Red se considera oscuro:
using CommunityToolkit.Maui.Extensions.Core;
Colors.Red.IsDark();
Es oscuro a la vista
El método IsDarkForTheEye si Color es oscuro para el ojo humano.
En el ejemplo siguiente se muestra cómo determinar si Colors.Red se considera oscuro para el ojo humano:
using CommunityToolkit.Maui.Extensions.Core;
Colors.Red.IsDarkForTheEye();
Obtener los componentes del color
Los métodos siguientes permiten obtener uno de los componentes de Color.
GetByteRed
El GetByteRed método obtiene el componente rojo de Color como un valor entre 0 y 255.
En el ejemplo siguiente se muestra cómo obtener el componente rojo de Colors.Red:
using CommunityToolkit.Maui.Extensions.Core;
Colors.Red.GetByteRed();
GetByteGreen
El GetByteGreen método obtiene el componente verde de Color como un valor entre 0 y 255.
En el ejemplo siguiente se muestra cómo obtener el componente verde de Colors.Red:
using CommunityToolkit.Maui.Extensions.Core;
Colors.Red.GetByteGreen();
GetByteBlue
El GetByteBlue método obtiene el componente azul de Color como un valor entre 0 y 255.
En el ejemplo siguiente se muestra cómo obtener el componente azul de Colors.Red:
using CommunityToolkit.Maui.Extensions.Core;
Colors.Red.GetByteBlue();
GetDegreeHue
El método GetDegreeHue obtiene el componente de tono de Color como un valor comprendido entre 0 y 360.
En el ejemplo siguiente se muestra cómo obtener el componente de matiz de Colors.Red:
using CommunityToolkit.Maui.Extensions.Core;
Colors.Red.GetDegreeHue();
GetPercentCyan
El GetPercentCyan método obtiene el componente cian de Color como un valor entre 0 y 1.
En el ejemplo siguiente se muestra cómo obtener el componente cian de Colors.Red:
using CommunityToolkit.Maui.Extensions.Core;
Colors.Red.GetPercentCyan();
GetPercentMagenta
El GetPercentMagenta método obtiene el componente magenta de Color como un valor entre 0 y 1.
En el ejemplo siguiente se muestra cómo obtener el componente magenta de Colors.Red:
using CommunityToolkit.Maui.Extensions.Core;
Colors.Red.GetPercentMagenta();
GetPercentYellow
El GetPercentYellow método obtiene el componente amarillo de Color como un valor entre 0 y 1.
En el ejemplo siguiente se muestra cómo obtener el componente amarillo de Colors.Red:
using CommunityToolkit.Maui.Extensions.Core;
Colors.Red.GetPercentYellow();
GetPercentBlackKey
El GetPercentBlackKey método obtiene el componente de clave negra de Color como un valor entre 0 y 1.
En el ejemplo siguiente se muestra cómo obtener el componente de clave negra de Colors.Red:
using CommunityToolkit.Maui.Extensions.Core;
Colors.Red.GetPercentBlackKey();
GetByteAlpha
El GetByteAlpha método obtiene el componente alfa de Color como un valor entre 0 y 255.
En el ejemplo siguiente se muestra cómo obtener el componente alfa de Colors.Red:
using CommunityToolkit.Maui.Extensions.Core;
Colors.Red.GetByteAlpha();
Para color de la cadena
Los siguientes métodos permiten convertir el Color en un esquema de color string.
ToCmykaString
El método ToCmykaString convierte el/la Color en un/a string que contiene los componentes cian, magenta, amarillo y negro. El resultado string estará en el formato : CMYKA(cyan,magenta,yellow,key,alpha) donde cian, magenta, amarillo y clave serán un valor entre 0% y 100%, y alfa será un valor entre 0 y 1 (por ejemplo CMYKA(0%,100%,100%,0%,1) , para Colors.Red).
En el ejemplo siguiente se muestra cómo convertir Colors.Red a una cadena CMYKA:
using CommunityToolkit.Maui.Extensions.Core;
Colors.Red.ToCmykaString();
Depende de la configuración de la referencia cultural, el valor alfa puede tener un delimeter diferente:
new Color(0, 0, 0, 0.5f).ToCmykaString(new System.Globalization.CultureInfo("en-US")); // returns "CMYKA(0%,0%,0%,100%,0.5)"
new Color(0, 0, 0, 0.5f).ToCmykaString(new System.Globalization.CultureInfo("uk-UA")); // returns "CMYKA(0%,0%,0%,100%,0,5)"
ToCmykString
El método ToCmykString convierte el Color en un string que contiene los componentes cian, magenta, amarillo y negro. El resultado string estará en el formato : CMYK(cyan,magenta,yellow,key) donde cian, magenta, amarillo y clave serán un valor entre 0% y 100% (por ejemplo CMYK(0%,100%,100%,0%) , para Colors.Red).
En el ejemplo siguiente se muestra cómo convertir Colors.Red en una cadena CMYK:
using CommunityToolkit.Maui.Extensions.Core;
Colors.Red.ToCmykString();
ToHslaString
El método ToHslaString convierte el/la Color en un/una string que contiene los componentes cian, magenta, amarillo y negro. El resultado string estará en el formato: HSLA(hue,saturation,lightness,alpha) donde el matiz será un valor entre 0 y 360, la saturación y la saturación serán un valor entre 0% y 100%, y alfa será un valor entre 0 y 1 (por ejemplo HSLA(0,100%,50%,1) , para Colors.Red).
En el ejemplo siguiente se muestra cómo convertir Colors.Red a una cadena HSLA:
using CommunityToolkit.Maui.Extensions.Core;
Colors.Red.ToHslaString();
Depende de la configuración de la referencia cultural, el valor alfa puede tener un delimeter diferente:
new Color(0, 0, 0, 0.5f).ToHslaString(new System.Globalization.CultureInfo("en-US")); // returns "HSLA(0%,0%,0%,100%,0.5)"
new Color(0, 0, 0, 0.5f).ToHslaString(new System.Globalization.CultureInfo("uk-UA")); // returns "HSLA(0%,0%,0%,100%,0,5)"
ToHslString
El método ToHslString convierte Color en un objeto string que contiene los componentes cian, magenta, amarillo y negro. El resultado string estará en el formato: HSL(hue,saturation,lightness) donde el tono será un valor entre 0 y 360, la saturación y la saturación serán un valor entre 0% y 100% (por ejemplo HSL(0,100%,50%) , para Colors.Red).
En el ejemplo siguiente se muestra cómo convertir Colors.Red en una cadena HSL:
using CommunityToolkit.Maui.Extensions.Core;
Colors.Red.ToHslString();
ToRgbaString
El método ToRgbaString convierte el Color en un string que contiene los componentes rojo, verde, azul y alfa. El resultado string estará en el formato : RGB(red,green,blue,alpha) donde rojo, verde y azul será un valor entre 0 y 255, y alfa será un valor entre 0 y 1 (por ejemplo RGBA(255,0,0,1) , para Colors.Red).
En el ejemplo siguiente se muestra cómo convertir Colors.Red a una cadena RGBA:
using CommunityToolkit.Maui.Extensions.Core;
Colors.Red.ToRgbaString();
Depende de la configuración de la referencia cultural, el valor alfa puede tener un delimeter diferente:
new Color(0, 0, 0, 0.5f).ToRgbaString(new System.Globalization.CultureInfo("en-US")); // returns "RGBA(0,0,0,0.5)"
new Color(0, 0, 0, 0.5f).ToRgbaString(new System.Globalization.CultureInfo("uk-UA")); // returns "RGBA(0,0,0,0,5)"
ToRgbString
El método ToRgbString convierte el Color en un string que contiene los componentes rojo, verde y azul. El resultado string estará en el formato : RGB(red,green,blue) donde rojo, verde y azul será un valor entre 0 y 255 (por ejemplo RGB(255,0,0) , para Colors.Red).
En el ejemplo siguiente se muestra cómo convertir Colors.Red a una cadena RGB:
using CommunityToolkit.Maui.Extensions.Core;
Colors.Red.ToRgbString();
Con componentes de color
Los métodos siguientes permiten reemplazar uno de los componentes de Color.
WithRed
El método WithRed aplica el redComponent proporcionado al Color. Tenga en cuenta que redComponent puede ser entre double 0 y 1, o entre byte 0 y 255.
En el ejemplo siguiente se muestra cómo aplicar el componente rojo a Colors.Red:
using CommunityToolkit.Maui.Extensions.Core;
Colors.Red.WithRed(0.5);
WithGreen
El método WithGreen aplica el greenComponent proporcionado al Color. Tenga en cuenta que greenComponent puede ser entre double 0 y 1, o entre byte 0 y 255.
En el ejemplo siguiente se muestra cómo aplicar el componente verde a Colors.Red:
using CommunityToolkit.Maui.Extensions.Core;
Colors.Red.WithGreen(0.5);
WithBlue
El método WithBlue aplica el blueComponent proporcionado al Color. Tenga en cuenta que blueComponent puede ser entre double 0 y 1, o entre byte 0 y 255.
En el ejemplo siguiente se muestra cómo aplicar el componente azul a Colors.Red:
using CommunityToolkit.Maui.Extensions.Core;
Colors.Red.WithBlue(0.5);
WithCyan
El método WithCyan aplica el cyanComponent proporcionado al Color. Tenga en cuenta que cyanComponent debe ser un valor entre 0 y 1.
En el ejemplo siguiente se muestra cómo aplicar el componente cian a Colors.Red:
using CommunityToolkit.Maui.Extensions.Core;
Colors.Red.WithCyan(0.5);
WithMagenta
El método WithMagenta aplica el magentaComponent proporcionado al Color. Tenga en cuenta que magentaComponent debe ser un valor entre 0 y 1.
En el ejemplo siguiente se muestra cómo aplicar el componente magenta a Colors.Red:
using CommunityToolkit.Maui.Extensions.Core;
Colors.Red.WithMagenta(0.5);
WithYellow
El método WithYellow aplica el yellowComponent proporcionado al Color. Tenga en cuenta que yellowComponent debe ser un valor entre 0 y 1.
En el ejemplo siguiente se muestra cómo aplicar el componente amarillo a Colors.Red:
using CommunityToolkit.Maui.Extensions.Core;
Colors.Red.WithYellow(0.5);
WithBlackKey
El método WithBlackKey aplica el blackKeyComponent proporcionado a Color. Tenga en cuenta que blackKeyComponent debe ser un valor entre 0 y 1.
En el ejemplo siguiente se muestra cómo aplicar el componente de clave negra a Colors.Red:
using CommunityToolkit.Maui.Extensions.Core;
Colors.Red.WithBlackKey(0.5);
Ejemplos
Puede encontrar un ejemplo de esta extensión en acción en la aplicación de ejemplo .NET MAUI Community Toolkit.
API
Puede encontrar el código fuente de ColorConversionExtensions en el repositorio .NET MAUI Community Toolkit GitHub.
.NET MAUI Community Toolkit