using Android.Content;
using AndroidX.Emoji.Text;
namespace System.Application.UI
{
///
/// Android Emoji 官方兼容库
///
public static class EmojiCompatLibrary
{
///
/// 获取当前使用的 Emoji 字体
///
public static EmojiFontType CurrentFontType { get; private set; }
///
/// 初始化 Emoji 库
///
///
///
public static void Init(Context context, EmojiFontType emojiFontType = EmojiFontType.Twemoji)
{
var config = emojiFontType switch
{
EmojiFontType.NotoColorEmoji => Create("fonts/NotoColorEmojiCompat.ttf"),
EmojiFontType.Blobmoji => Create("fonts/BlobmojiCompat.ttf").SetReplaceAll(true),
EmojiFontType.Twemoji => Create("fonts/TwemojiCompat.ttf").SetReplaceAll(true),
EmojiFontType.EmojiOne => Create("fonts/emojione-android.ttf").SetReplaceAll(true),
_ => throw new ArgumentOutOfRangeException(nameof(emojiFontType), emojiFontType, null),
};
CurrentFontType = emojiFontType;
EmojiCompat.Init(config);
EmojiCompat.Config Create(string assetName) => new EmojiCompatLibraryConfig(context, assetName);
}
}
}