Xamarin.Essentials:Color ConvertersXamarin.Essentials: Color Converters

Xamarin.Essentials の ColorConverters クラスには、System.Drawing.Color 用のヘルパー メソッドがいくつかあります。The ColorConverters class in Xamarin.Essentials provides several helper methods for System.Drawing.Color.

作業開始Get started

この API の使用を始めるには、Xamarin.Essentials の概要ガイドを読み、ライブラリが正しくインストールされてプロジェクトに設定されていることを確認してください。To start using this API, read the getting started guide for Xamarin.Essentials to ensure the library is properly installed and set up in your projects.

Color Converters の使用Using Color Converters

自分のクラスの Xamarin.Essentials に参照を追加します。Add a reference to Xamarin.Essentials in your class:

using Xamarin.Essentials;

System.Drawing.Color の使用時、Xamarin.Forms の組み込みコンバーターを使用し、Hsl、Hex、UInt から色を作成できます。When working with System.Drawing.Color you can use the built in converters of Xamarin.Forms to create a color from Hsl, Hex, or UInt.

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

Color Extensions の使用Using Color Extensions

System.Drawing.Color の拡張メソッドを利用すると、さまざまなプロパティを適用できます。Extension methods on System.Drawing.Color enable you to apply different properties:

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

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

拡張メソッドには他にも次のようなものがあります。There are several other extension methods including:

  • ToUIntToUInt
  • MultiplyAlphaMultiplyAlpha
  • WithHueWithHue
  • WithAlphaWithAlpha
  • WithSaturationWithSaturation
  • WithLuminosityWithLuminosity

プラットフォーム拡張の使用Using Platform Extensions

また、System.Drawing.Color をプラットフォーム固有の色構造に変換できます。Additionally, you can convert System.Drawing.Color to the platform specific color structure. これらのメソッドは iOS、Android、UWP プロジェクトからのみ呼び出すことができます。These methods can only be called from the iOS, Android, and UWP projects.

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();

ToSystemColor メソッドは Android.Graphics.Color、UIKit.UIColor、Windows.UI.Color に適用されます。The ToSystemColor method applies to Android.Graphics.Color, UIKit.UIColor, and Windows.UI.Color.