RKBGNBUN(3)

名前
RkBgnBun / RkwBgnBun - 指定した長さの読みの漢字変換

形式
#include <canna/RK.h>
int RkBgnBun(cxnum, yomi, maxyomi, mode)
int cxnum;
unsigned char *yomi;
int maxyomi;
int mode;
int RkwBgnBun(cxnum, yomi, maxyomi, mode)
int cxnum;
wchar_t *yomi;
int maxyomi;
int mode;

説明
RkBgnBun は，長さ maxyomi バイトの読みがな yomi を漢字に変換します． 読みがなは， EUC コードの文字境界に従わなければなりません． コンテクストは変換モードに入り，カレント文節，カレント候補ともに 0 に 設定されます．

RkwBgnBun は, yomi が wchar_t 型で与えられる点が RkBgnBun と異なります. また maxyomi は, バイト長ではなく文字長を表すようになります.

mode は，各文節に追加されるコード変換候補をビットフィールドで表現します． ビットフィールドの幅は RK_XFERBITS で，次のいずれかを指定することができます．

    RK_XFER
        ひらがな

    RK_HFER
        半角文字

    RK_KFER
        カタカナ

    RK_ZFER
        全角文字

カレント文節の候補数をNとした場合，最下位のビットフィールドから順番に N，N+1，… 番目の候補を読みがなからコード変換により候補を追加します． なお，対応するビットフィールドが 0 になった所で，候補追加は終了します．

以下に例を示します
    mode                               候補
    RK_XFER                            仮名を かなを
    (RK_XFER << RK_XFERBITS) | RK_KFER 仮名を カナヲ かなを
    (RK_KFER << RK_XFERBITS) | RK_XFER 仮名を かなを カナヲ

コンテクストは， RkBgnBun から RkEndBun(3) に至るまで，変換モードに入ります．変換モードはネストすることはできません．

戻り値
変換で得られた文節の個数を示します． 変換に失敗した場合には -1 を返します．

関連情報
RkEndBun(3)