日本語の文章に対してふりがなを付けるRubyのライブラリはありますか？


日本語学習者向けのサイトを構築するために漢字を含む日本語の文章にルビをつける機能が欲しいのですが、そのような機能を実装するためのライブラリはありますか？

そのような機能を提供するウェブページはあるのですが、ライブラリやAPIが見つかりませんでした。

<http://elephant.ddo.jp/exruby/rubyexpress.html>

できれば`ruby`で扱いたいのですが、Linux上で使えるものであればなんでも構いません。




初めてルビのタグを見ましたが、"漢字"にルビをふるタグは次のようになるようです。タグの構成自体は簡単ですね。MeCabのような形態素解析で、漢字交じりの文を単語に分けて、かつその読みを取得すれば、良いと思います。

[code]

    <ruby>
      <rb>漢</rb>
      <rp>（</rp><rt>かん</rt><rp>）</rp>
    </ruby>
    <ruby>
      <rb>字</rb>
      <rp>（</rp><rt>じ</rt><rp>）</rp>
    </ruby>
    
[/code]

MeCabに「今日もしないとね。」と入力すると次のような出力が得られます。8番目の要素が読みなので,もし漢字が含まれていれば、8番目の読みをルビとすればよさそうです。

[code]

    % mecab -N2
    今日もしないとね。
    今日    名詞,副詞可能,*,*,*,*,今日,キョウ,キョー
    も      助詞,係助詞,*,*,*,*,も,モ,モ
    し      動詞,自立,*,*,サ変・スル,未然形,する,シ,シ
    ない    助動詞,*,*,*,特殊・ナイ,基本形,ない,ナイ,ナイ
    と      助詞,接続助詞,*,*,*,*,と,ト,ト
    ね      助詞,終助詞,*,*,*,*,ね,ネ,ネ
    。      記号,句点,*,*,*,*,。,。,。
    EOS
    
[/code]




初めてルビのタグを見ましたが、"漢字"にルビをふるタグは次のようになるようです。タグの構成自体は簡単ですね。MeCabのような形態素解析で、漢字交じりの文を単語に分けて、かつその読みを取得すれば、良いと思います。

[code]

    <ruby>
      <rb>漢</rb>
      <rp>（</rp><rt>かん</rt><rp>）</rp>
    </ruby>
    <ruby>
      <rb>字</rb>
      <rp>（</rp><rt>じ</rt><rp>）</rp>
    </ruby>
    
[/code]

MeCabに「今日もしないとね。」と入力すると次のような出力が得られます。8番目の要素が読みなので,もし漢字が含まれていれば、8番目の読みをルビとすればよさそうです。

[code]

    % mecab -N2
    今日もしないとね。
    今日    名詞,副詞可能,*,*,*,*,今日,キョウ,キョー
    も      助詞,係助詞,*,*,*,*,も,モ,モ
    し      動詞,自立,*,*,サ変・スル,未然形,する,シ,シ
    ない    助動詞,*,*,*,特殊・ナイ,基本形,ない,ナイ,ナイ
    と      助詞,接続助詞,*,*,*,*,と,ト,ト
    ね      助詞,終助詞,*,*,*,*,ね,ネ,ネ
    。      記号,句点,*,*,*,*,。,。,。
    EOS
    
[/code]

