透明文字とは
あらゆる端末が表示できる文字を定める規格 Unicode には、わざと空白にしてある文字がいくつか含まれています。幅の広いスペースのように組版用に作られたものもあれば、特定の文字体系で使う埋め草(フィラー)の文字もあります。どれも見えないのに、本物の文字として数えられます。
「空に見える」のに「空ではない」。この差が便利なところです。空の名前や空のメッセージを受け付けないアプリでも、こうした文字なら受け付けることがよくあります。
日本語を入力する人にとって身近な全角スペース(U+3000)も空白の文字ですが、通常のスペースと同じように空白として扱われ、入力の前後から取り除かれることがよくあります。下の表の文字は、プログラム上は空白として扱われないものが中心です(開発者向けのメモも参照してください)。
使い方
- 「文字」を選びます。初期設定の Hangul Filler が、もっとも多くの場所で使えます。
- 「文字数」を設定します。空白の名前なら1つで十分です。
- 「透明文字をコピー」を押します。
- アプリ、ゲーム、フォームに貼り付けます。
コピーできたか不安なときは、まずテスト欄に貼り付けてください。見つかった透明文字の数が表示されます。
どの文字を選ぶべきか
| 文字 | コード | おすすめの用途 |
|---|---|---|
| Hangul Filler | U+3164 | ゲームの名前、ユーザー名、チャットのメッセージ |
| Braille Blank | U+2800 | Instagram のプロフィールとキャプション、行間の調整 |
| Zero Width Space | U+200B | 単語の中の見えない区切り。幅はゼロ |
| Zero Width Joiner | U+200D | ゼロ幅スペースが取り除かれてしまう場所 |
| No-Break Space | U+00A0 | まとめられたり折り返されたりしてはいけないスペース |
| Em Space | U+2003 | 単語の間の、目に見える広い空き |
上の2つは、画面上で英字1文字分くらいの幅を取ります。ゼロ幅の文字はまったく場所を取りません。隙間に見える名前ではなく、本当に空に見える名前にしたい場合は、この違いが重要です。
主な使い道
- 名前欄を空にできないゲームやチャットアプリでの空白の名前
- WhatsApp、Discord、Telegram、iMessage での空のメッセージ
- 通常の改行や連続したスペースが削除される Instagram や TikTok でのプロフィールの余白
- スマートフォンやパソコンでの空白のフォルダー名やファイル名
- 書式が使えない場所での文字の中央寄せや字下げ
- テスト:自分で作ったフォームやアプリが、空に見える入力をどう扱うかの確認
うまくいかないとき
どの文字を許可するかはプラットフォームが決めていて、予告なくルールを変えます。貼り付けが拒否されたり、小さな四角が表示されたりしたら、次を試してください。
- 一覧の別の文字を試す。
- 複数ではなく、まず1文字だけ使う。
- アプリによっては、普通の文字2つの間に空白の文字を入れてから、普通の文字を削除する。
小さな四角や疑問符が表示されるのは、アプリのフォントにその文字がないためです。Braille Blank と Hangul Filler は、もっとも多くのフォントに含まれています。
開発者向けのメモ
ユーザーが空白の名前を登録してくる問題でこのページに来たのなら、通常の空白文字を取り除くだけでは不十分です。これらのコードポイントも入力からチェックするか、名前に目に見える英字・数字・文字が少なくとも1つ含まれているかを検証してください。たとえば JavaScript の trim() は全角スペース(U+3000)、No-Break Space、Em Space は取り除きますが、Hangul Filler(U+3164)、Braille Blank(U+2800)、ゼロ幅の文字(U+200B、U+200D)は取り除きません。