Delphi Programming / Object Pascal
サイトのトップページへ リンクのページへ ロゴマーク
[掲載 2024年10月18日] [更新 2024年10月18日]* Delphi 一般・その他 [未分類 - OS の操作等]
コードポイント ( 文字コード ) による文字の入力
動作確認等 Windows 10 ビルド 19043 Pro 64 bit
[整理番号 - 1842]







文字をコードポイント ( 文字コード ) で入力


必要となる場面があるかは分かりませんが、コードポイントの値を変換する操作でも文字を入力することができます。また、ワード (Microsoft Word) やワードパッド (Wordpad) では、入力済みの文字のコードポイントを調べることもできます。




[備考]
本ページでは 異体字として IPAmj明朝というフォントを使用した結果を経緯しています。このフォントをインストールしていない環境では異なる結果となります。





01_IME の入力モードを [ 全角英数 ] にする


コードポイントの値は、[全角英数] 入力モードの状態で入力します。
日本語 IME を ON にした直後の入力モードは [ひらがな] です。
[全角英数] モードにするには、日本語 IME が ON の状態で [Shift] + [無変換] のキー操作をします。その状態で [無変換] キーを 1 回だけ押すと、元の [ひらがな] 入力の状態に戻ります。




図1
入力モードを [全角英数] にする
  • Microsof IME を ON にする
    筆者は [半角 / 全角 - 漢字] キーを使用
  • [Shift] + [無変換]
  • 入力確定後、
    [無変換] キー押下で元の入力モードになる





02_コードポイントを入力して [ F5 ] キーで変換する


下図は、 を入力する手順です。 のコードポイントは U+671D です。
メモ帳を起動して、日本語 IME を ON にして [全角英数] 入力モードにします。

コードポイントの値は 16 進数表記です。0 ~ 9 の他に A ~ F までの値も使用しますが、A ~ F の値は小文字でも構いません。U+ は、ユニコードのコードポイントであることを意味するプリフィックスです。U+ を除いた値を入力します。

通常、数値の場合、先行する 0 (ゼロ) を省略できます。例えば 0034 は 34 と同じです。コードポイントを入力する場合、先行する 0 を省略することはできません。桁数に意味があります。コードポイントは 4 桁または 5 桁のどちらかです。




図2
コードポイントの値を入力
  • のコードポイントは U+671D なので
    671D を入力

図3
[F5] で変換した状態
  • [Enter] キーを押して確定する

図4
[Enter] で確定した状態

[備考]
入力したコードポイントに該当する文字が存在しない場合、[F5] キーを押すと、IME パッドが起動します。





03_複数のコードポイント構成の文字の場合 - 異体字セレクタ


基底文字のコードポイントの値と異体字セレクタの値を同時に入力することはできません。確定した文字に対して異体字セレクタを追加する形になります。異体字セレクタは 5 桁です。先頭の 3 桁は常に E01 です。最後の 2 桁は 00 ~ 9F です。

下図は、 に異体字セレクタ E0103 を追加する例です。




図5
異体字セレクタの入力手順
  • 入力モードを [全角英数] にして入力
  • E0103 を入力
  • [F5] キーを押して変換

図6
[F5] で変換した状態
  • [Enter] キーを押して確定する

図7
[Enter] で確定した状態
  • 異体字になる

図8
[Back Space] キーを押す
  • 元に戻る
  • Microsoft Word 2019 では文字の削除になる


[備考]
ウェブブラウザの入力部や Microsoft Excel 2019 では、具体的な文字がない異体字セレクタの値を入力する方法での異体字入力はできません。Unicode の単一のコードポイントによる文字の入力は可能です。





04_複数のコードポイント構成の文字の場合 - 結合文字


ひらがなの「か」に半濁点を結合する例です。普通に「か」を入力して確定しておきます。
確定前の文字のコードポイントと、半濁点のコードポイントを同時に入力することはできません。確定した文字に対して半濁点を結合する形にになります。




図9
コードポイントの値を入力
  • 入力モードを [全角英数] にして入力
  • 半濁点のコードポイントの値 309A を入力
  • [F5] キーを押して変換

図10
[F5] で変換した状態
  • [Enter] キーを押して確定する
  • 変換候補の値を入力するわけではない

図11
[Enter] で確定した状態
  • 半濁点付きの文字になる
  • [Back Space] キーを押すと元に戻る
    Microsoft Word 2019 では結合文字の削除





05_変換候補の文字は 1 つとは限らない


このコードポイントの値を変換する方法は、Unicode 専用というわけではありません。別の符号化方式の文字も、コードポイントが同じであれば変換候補に現れます。変換の対象となる符号化方式は、Unicode、Shift_JIS、区点コード、JIS コードです。区点コードと JIS コードは、JIS X 0208 の第 1 水準と第 2 水準の漢字です。

下図は、全角の 7426 を入力して [F5] キーを押した状態です。




図12
変換候補の文字
  • は U+7426 の文字

  • は JIS コードが 7426 の文字

  • は区点コードが 7426 の文字





06_入力済み文字のコードポイント確認と変更 - Microsoft Word


ワード (Microsoft Word) やワードパッド (Wordpad) では、入力済みの文字のコードポイントを調べたり編集することが可能です。コードポイントには、半角文字を使用します。メモ帳にはこの機能はありません。
下図は Microsoft Word 2019 での操作例です。

入力キャレットを、コードポイントを調べたい文字の右側に移動して [Alt] + [X] のキー操作をします。コードポイントが表示されます。再度 [Alt] + [X] のキー操作をすれば終了です。




図13
コードポイントの値を調べる
  • [Alt] + [X]

図14
異体字なので異体字セレクタの値が表示される
  • 表示文字が基底文字になる

図15
値を変更
  • 半角文字で入力
  • 変更したら [Alt] + [X]

図16
別の異体字になる

異体字セレクタ、あるいは結合した文字だけを削除したい場合は、[Alt] + [X] で表示された値を削除します。Microsoft Word 2019 の場合、[Back Space] キーを押すと削除になります。



[備考]
これは Microsoft IME の機能ではなく、ワードやワードパッドの機能です。Microsoft Excel 2019 には、[Alt] + [X] による文字の編集機能はありません。