Xamarin.Essentials:色のコンバーター
Xamarin.Essentials の ColorConverters クラスには、System.Drawing.Color 用のヘルパー メソッドがいくつかあります。
作業開始
この API の使用を始めるには、Xamarin.Essentials の概要ガイドを読み、ライブラリが正しくインストールされてプロジェクトに設定されていることを確認してください。
Color Converters の使用
クラスの Xamarin.Essentials への参照を追加します。
using Xamarin.Essentials;
System.Drawing.Color
の使用時には、Xamarin.Essentials の組み込みコンバーターを使用し、Hsl、Hex、UInt から色を作成できます。
var blueHex = ColorConverters.FromHex("#3498db");
var blueHsl = ColorConverters.FromHsl(204, 70, 53);
var blueUInt = ColorConverters.FromUInt(3447003);
Color Extensions の使用
System.Drawing.Color
の拡張メソッドを利用すると、さまざまなプロパティを適用できます。
var blue = ColorConverters.FromHex("#3498db");
// Multiplies the current alpha by 50%
var blueWithAlpha = blue.MultiplyAlpha(.5f);
拡張メソッドには他にも次のようなものがあります。
- GetComplementary
- MultiplyAlpha
- ToUInt
- WithAlpha
- WithHue
- WithLuminosity
- WithSaturation
プラットフォーム拡張の使用
また、System.Drawing.Color をプラットフォーム固有の色構造に変換できます。 これらのメソッドは iOS、Android、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();
ToSystemColor
メソッドは Android.Graphics.Color、UIKit.UIColor、Windows.UI.Color に適用されます。
API
- Color Converters のソース コード
- Color Converters の API ドキュメント
- Color Extensions のソース コード
- Color Extensions の API ドキュメント