.NET MAUI アプリに色々な文字を表示させてみる

お疲れ様です。M.Kです。
(世間一般での)夏休みも最終日ですね。
個人的な話ですが、先日都内某所にてハンムラビ法典、正確にはその石柱のレプリカを見てきました。
2メートル強ほどで意外と小さかったです。表面にはびっしりと楔形文字が刻まれていました。

というわけで本日は、今現在プロジェクトで使用している.NET MAUIアプリに、
楔形文字、ヒエログリフ、場所と時代が飛んで西夏文字を表示させてみたいと思います。
前者ふたつについては特に何も入れずできてしまったので、フォントが必要な西夏文字を追加しました。
Unicodeすごい。

今回、各文字そのものの説明は割愛させていただきます。詳細はWikipedia等参照ください。
表示させる文字も特に単語や文章ではなく、コピペUnicodeの並び順そのままです。もっと凝りたかったのですが時間がありませんでした。

環境
・.NET MAUI(.NET7.0)
・Visual Studio(Version 17.7.2)

前準備
楔形文字、ヒエログリフは特にフォントを入れなくても表示できるのですが、西夏文字にのみフォントが必要です。
以下から西夏文字に対応しているフォント、NotoSerifTangutのファイル(NotoSerifTangut-Regular.ttf)をダウンロードします。
https://github.com/notofonts/noto-fonts/tree/master/hinted/ttf/NotoSerifTangut

実装
先ほどダウンロードしたファイルをResources/Fontsフォルダ内に入れます。

MauiProgram.csに先ほど入れたフォントファイルの設定を追加します。
引数二つ目は、この後実際にタグ内で使うためのキーとなります。

一つ目のラベルが楔形文字、
二つ目のラベルがヒエログリフ、
三つ目のラベルが西夏文字になります。(エディタの中は□で表示されていますが)
西夏文字のみ、FontFamily=”NotoSerifTangut”を入れます。

アプリを起動すると以下のように表示されます。

こういった昔の文字をアプリに表示する機会というのはまずないとは思いますが、
案外簡単にできるということで少し面白く思っていただければ幸いです。

参考リンク
楔形文字
ヒエログリフ
西夏文字
シュトヘル達の名前を西夏文字 (Unicode) で書く