月の満ち欠けは古くから時間の流れを知る手がかりとしても利用されており、人間にとって非常に身近で神秘的な存在。そんな月の満ち欠けを利用して文字を書く「月文字」が簡単に生成できるジェネレーターを、エンジニアのたんごこうや(@ngocoder)さんが開発しました。

月文字ジェネレータ

https://tsukimoji.com/

月の絵文字で文字が書けるWebアプリ「月文字ジェネレータ」を作ってみた???? - Qiita

https://qiita.com/Yougurut/items/e0fa51ecb62619444e10

「月文字」とはどんなものかというと、このようにさまざまな満ち欠けを表す月の絵文字を利用して線を描き、文字を表すというもの。以下の画像では「G」という文字が月の明るくなった部分で表されています。



Twitterなどでバズることも多いこの月文字を、簡単に生成できるのが月文字ジェネレータ。公式ページの背景画像には、「月」「文」「字」の3文字が月の満ち欠けで表されていました。



月文字ジェネレータの使い方はとても簡単。公式ページ下部の入力フォームに月文字で表したい文字を入力し、「変換」をクリック。



「変換に成功しました。」と表示されるので、ページを下部にスクロールしていくと……



入力した文字が月文字で表されていました。



入力文字数が多いと縦長になってしまいますが、ちゃんと「GIGAZINE」という文字が月の満ち欠けで再現されています。



表示フォーム下部の「クリップボードにコピー」をクリックすると、月文字がコピーできます。



ひらがなの「あ」を月文字に変換してみるとこんな感じ。



月文字の幅は自由に変えることができ……



文字の太さも調節可能。



「カラーモード」から「カスタム」をクリックすると、月の代わりに別の絵文字を使うこともできます。



文字部分の絵文字候補と……



背景部分の絵文字を選択できます。



今回は「C」という文字の変換を試みたのですが、月の満ち欠け以外の絵文字では微妙な線の膨らみやカーブを作り出すのが難しいようで、少ない列数ではあまりうまくいきませんでした。



実際に「い」の月文字をジェネレーターで生成し、コピーされたものをTwitterで投稿するとこのようになりました。列数は10、文字の太さは「ふつう」です。Twitterに投稿する時は、デフォルトの13行だと文字数オーバーしてしまうため、140文字に収めたい場合は列数を減らす必要があります。



月文字ジェネレータは漢字でも動作します。「月」を変換するとこうなり……



「夜」だとこんな感じ。



月文字ジェネレータでは、入力された文字からPythonの画像処理ライブラリPython Image Library(PIL)で文字画像を生成。その後、エンジニアの綿岡晃輝(@wataoka)さんが開発したAA(アスキーアート)変換エンジンに読み込ませています。すると元の文字を月文字で表せるというわけ。



月文字ジェネレータを使えば、お気に入りの月文字をSNSに貼ったり友人にメッセージで送ったりして楽しむことが、とても手軽にできるようになっていました。