半角から全角へ:組版とフォーム入力のために
日本語のフォームは全角入力を求めることが多く、英数字が混ざると幅も不揃いに見えます。変換は機械的な符号の対応ですが、スペースの扱いが見落とされがちです。
本当に必要になる場面
日本の申請書、履歴書、振込情報では全角での入力を求められることがよくあります。半角の氏名や数字を全角にしないと形式チェックを通りません。日本語組版でも、全角と半角が混ざると字間が不揃いに見えます。
古い文書の統一も同じです。同じ資料のなかで全角の箇所と半角の箇所が混在し、幅が揃っていません。全角に統一して日本語フォントと組み合わせると、より整って見えます。
- 全角入力を求める日本語フォーム
- 英数字混在の幅の統一
- 古い文書の全角半角の混在
変換の範囲と代償
変換の範囲は ASCII の可視文字 0x21 から 0x7E で、それぞれに 0xFEE0 を加えます。A は A、1 は 1、! は ! になります。漢字と仮名は範囲外で、日本語の 、と 。も変わりません。
スペースはすべて全角スペース U+3000 になります。英語の単語間も例外ではありません。Hello World は Hello World となり、語間がはっきり広がります。コードのインデント、URL、メールアドレスも崩れて動かなくなります。全角は幅が広いため、ボタンや表の文字があふれることもあります。
- ASCII の可視文字は 0xFEE0 を足すと全角
- スペースはすべて U+3000 になる
- 幅が広がるのでレイアウトのあふれに注意
代替手段と使わない場面
数字だけ全角にしたいなら、多くのフォームや入力モードが持つ変換のほうが安全です。日本語組版では数字と英字だけ全角にし、句読点は別の規則で扱うことが多いため、要件を確認してから実行してください。
逆に、日本語文書からコピーした全角数字でプログラムが失敗する場合は、全角から半角への変換を使います。どちらも文脈を読まないため、コード、パスワード、リンクを扱う前には必ず控えを取ってください。
よくある質問
英語の単語間が広がるのはなぜですか?
すべてのスペースが全角スペース U+3000 になり、漢字 1 文字ほどの幅になるためです。英語の単語間にも同じ間隔が入ります。不要なら変換後に半角スペースへ戻してください。
数字だけ全角にできますか?
本ツールは文章内のすべての ASCII 文字を変換します。数字だけを変えたい場合は、数字だけを別の行で変換して貼り戻すか、範囲選択に対応したエディタで置換してください。
変換したらコードが動かなくなりました。元に戻せますか?
コンパイラは全角記号を認識しないため、想定どおりの結果です。コード、URL、コマンドは全角にしてはいけません。控えから戻すか、全角から半角へ変換して戻してください。
関連ツール:半角から全角へ変換