Pinxie & XiaoPinxie

Pinxieの読み方

「ピンシエ」と読みます。中国語のPinyin(ローマ字記法)をそのままソフト名に採用しました。「[才并]写(*)=漢字をローマ字で書き取る」という意味です。もっとも「貧血」と同音(厳密には声調が違いますが)なのはちょっとがっくりですが・・・。「Pinxie」の弟にあたる「XiaoPinxie」は「シアオピンシエ」と読みます。「小[才并]写(*)=小さいピンシエ」という意味です。

Pinxieの機能

S-JISまたは、GBのテキストファイルを対象に、よみがなをつける要領で、ファイル内の漢字に中国語の発音記号を付加する。入力ファイルのコードの種類と、付加する発音記号の組み合わせは以下の通りです。

  • S-JISにPinyinを付加する
  • GBにPinyinを付加するS
  • S-JISにカタカナ(S-JIS)を付加する
  • GBに注音字母(ポポモフォ、GB)を付加する
図1 オリジナル(GBエンコード)=『新華網』2009-03-22よりsample(gb).png 図2 オリジナル(GBエンコード)にPinyinを付加sample(gb_pinyin).png 図3 オリジナルをコンバート後(SJISエンコード)にカタカナを付加sample(jis_kana).png 図4 オリジナル(GBエンコード)に注音字母を付加sample(gb_bpmf).png

Pinxieの動作

「Pinxie」「XiaoPinxie」の動作原理を以下に示しました。[]は「XiaoPinxie」を示します。

1.入力ファイル[フィールド]の漢字がGBコードの場合

  • 入力ファイル[フィールド]の先頭から1字読み出す。
  • 漢字かどうかを見、漢字なら次にすすむ。漢字でなければスキップする
  • 発音辞書を検索してコードに相当する発音記号を読み出す
  • 発音記号を出力ファイル[フィールド]に書き込む
  • 一連の動作を入力ファイル[フィールド]の終端までくり返す

2.入力ファイルの漢字がS-JISコードの場合

  • 入力ファイル[フィールド]の先頭から1字読み出す。。
  • 漢字かどうかを見、漢字なら次にすすむ。漢字でなければスキップする
  • S-JIS→GB変換辞書を検索して、相当するGBコードを読み出す
  • そのGBコードを手がかりに、発音辞書を検索してコードに相当する発音記号を読み出す
  • 発音記号を出力ファイル[フィールド]に書き込む
  • 一連の動作を入力ファイル[フィールド]の終端までくり返す

発音データ

「Pinxie」「XiaoPinxie」の出力する発音記号は次のような仕様となっています。

  • Pinyin
    ・「発音」+「声調」(1-4)で表示する
    ・軽声は「声調」をつけない(声調0としない)
    ・ウムラウト付きの「u」は「v」で代用する(中国語IME『BOPOMOFO』の仕様と同様)
  • カタカナ
    ・「発音」のみ。これは「Pinxie」の発音記号が最大8文字までというプログラム上の理由とともに、カナによる表現は所詮中国語音の近似にとどまるため、声調を付ける意味があまりないと判断したことによります
    ・発音選定の原則は作者がある単位のために作成した「Pinyin=カナ対応表」ドラフト(未公開)に基づく
  • 注音符号
    ・1声は声調符号をつけない。2-4声は後に声調符号、軽声は前に声調符号をそれぞれつける(注音符号にたいする一般的な声調の付け方)
    ・ただしGBコード(注音符号は08区にアサイン)には専用の声調符号はなく、2-4声は03区07位、01区06位、03区64位で、軽声は01区04位で代用
    ・同様にGB未収録と思われる「ng」の符号はGB:56区03位(「兀」)で代用

特有の機能

「Pinxie」では発音データにユーザーが変更を加えることができます。またカタカナ、注音については発音データを別の発音記号システム(たとえばYale式、Wade-Giles式や反切(!?)など)に全面差し換えることができます。詳しくは付属の「PxInjection」の説明をお読み下さい。

※ただしデータを変更したり、差し換えたプログラムは再配布できません。あくまでユーザー自身の使用にとどまります。

「XiaoPinxie」には記憶機能といって、表示させた中国語の発音を一定の書式でファイルに出力することができます。出力したファイルを適当なツールでソートしたりすることで、ユーザー個人の中国語発音辞書などを作成することができます。

注(*)

ここで[才并]とあるのは「合成文字」の例です。合成文字はJIS漢字で表せない中国語の漢字を、JIS漢字の組み合わせであらわす仕組みで、例えばGBの「ni3」(あなた、君)を[イ尓]などとする。詳しくはここを参照。