タグ

関連タグで絞り込む (2)

タグの絞り込みを解除

ivsに関するtyamamotoのブックマーク (5)

  • 漢字1文字が最大8バイト、Unicodeの「IVS」とは?

    「漢字1文字は2バイト」という常識が、大きく変わろうとしている。現在改正中の「常用漢字表」に対応するためには、Unicodeの4バイト文字を使用する必要があるが、それだけでは済まない恐れがある。今後、戸籍や住民基台帳で使われている文字がUnicodeに追加されると、漢字1文字が最大8バイトになるかもしれない。文字コードに詳しい京都大学人文科学研究所附属東アジア人文情報学研究センターの安岡孝一准教授が、問題の核心を解説する。(日経コンピュータ) 先日公開した『新常用漢字表が迫るUnicode移行、「シフトJIS」では対応不可能』の読者から、「今後のシステムでは漢字1文字を最大4バイトで処理すればいいのか」という質問を頂いた。実は、UTF-8あるいはUTF-16で漢字を表す場合、最新のUnicodeにおけるIVS(Ideographic Variation Sequence)を考慮すると、漢

    漢字1文字が最大8バイト、Unicodeの「IVS」とは?
  • IVS文字・サロゲートペア文字の注意

  • サロゲートペアや結合文字が含まれているか調べる

    サロゲートペアや結合文字が含まれているか調べるString型の文字列にサロゲートペアや結合文字が含まれていると、非常に厄介です。これらを考慮しないでコードを書くと、文字列にこれらの文字が入っているときに、不具合が生じるかもしれません。ここでは文字列内にサロゲートペアや結合文字が含まれているかを調べる方法を紹介します。 サロゲートペアが含まれているか調べる通常は、1つのChar値で1つの文字を表現します。ところがサロゲートペア(代用対)は、2つのChar値を使って1つの文字を表現します。サロゲートペアの例としては、魚のホッケ(魚へんに花)(文字コードはU+29E3D)や、牛丼の吉野家の「よし」の字(土に口)(文字コードはU+20BB7)などがあります。ホッケの場合はU+D867とU+DE3D、「よし」の場合はU+D842とU+DFB7の2つのChar値を使って表現します。 サロゲートペアにつ

    サロゲートペアや結合文字が含まれているか調べる
  • Windows 10の日本語入力システム(MS-IME)で異体字を入力可能にする

    Windows Vista以降のWindows OSでは、日語文字コードセットが「JIS X 0213:2004(JIS2004)」準拠となり、それ以前のJIS90から変更されている。これに伴い、いくつかの漢字の字形が変更になっている(同じ文字コードで表示される字の形が変わっている。詳細はTIPS「メイリオ・フォントWindows XP/Server 2003で利用する(改訂版)」参照のこと)。 JIS90とJIS2004の字形の違い(一部) このようにJIS2004では、字形が変更されている。地名や名前など、JIS90の字形を使っているような場合は、Windows 8.1/10で入力できない。 そのため、Windows 7までは従来の字形を利用するための方法として、JIS90互換のフォントが提供されている(日マイクロソフトのサポートページ「Windows Vista、Windows

    Windows 10の日本語入力システム(MS-IME)で異体字を入力可能にする
  • Unicodeと、C#での文字列の扱い

    進化の過程で煩雑な文字コード体系になっているUnicodeは、プログラミングでの取り扱いが面倒だ。C#とUnicodeの関係はどうなっているのか? C#が抱える課題とその解決策について見てみよう。 ← 前回 連載 INDEX 前編では、文字コード、そしてUnicodeがこれまでにどのような進化の道程を歩んできたかを見た。そこで説明したように、文字コード自体が結構な複雑さになっている。当然、プログラミング言語における文字列の扱いにも面倒が付きまとう。 後編である今回は、C#のstring型がどういう実装になっているかや、現状抱えている課題、それに対して検討している解決策などについて説明していく(以下、文字コードは全て16進数で表記する)。 文字列型 まずは、プログラミング言語内部での文字列の扱いについて話そう。Unicodeの歴史で話した通り、もともと、Unicodeは2Bytes固定長の文

  • 1