Categories
nvda

NVDA 2015.2 の数式対応

Spread the love

NVDA 2015.2 の数式対応について、ミツエーリンクスさんのブログで解説されています。
http://www.mitsue.co.jp/knowledge/blog/a11y/201506/17_1000.html
NVDA 2015.2 ユーザーガイドにも上記記事にも書かれているとおり、MathPlayer 4 ベータ版をインストールしないと、数式の読み上げは動作しません。
http://www.dessci.com/en/products/mathplayer/download.htm
この機能に関して、NVDA 日本語版は独自のオプションを追加したので、コメントしておきたいと思います。
NVDA 日本語版の説明
https://www.nvda.jp/nvda2015.2jp/ja/readmejp.html#toc26
からまず引用します:
5.2.14. 数式を英語で読み上げる
「数式を英語で読み上げる」オプションの初期値はチェックされています。
MathPlayer がインストールされていて、このオプションがチェックされている場合、コンテンツの言語属性や NVDA の設定に関わらず MathML で記述された数式は英語で読み上げます。
このオプションをチェックなしにすると、コンテンツや設定によって MathML の数式が日本語で読み上げられる場合があります。
しかしこのとき、数式の対話的ナビゲーションを実行すると
“No navigation files for this speech style in this language”
と通知されて操作ができない場合があります。
この問題についての詳細はチケット35208 および本家チケット #5126 を参照してください。
日本語チームチケット 35208
https://osdn.jp/ticket/browse.php?group_id=4221&tid=35208
本家チケット 5126
http://community.nvda-project.org/ticket/5126
数式を読み上げるためのテキスト化の処理は NVDA ではなく MathPlayer に実装されています。
実は MathPlayer 4 自身が音声エンジンと点訳エンジンを内蔵しており、スクリーンリーダーがなくても動作します。
点字は MathPlayer が Nemeth コードへの変換を行っているようです。
ただし NVDA と組み合わせて使う場合は MathPlayer 内蔵の音声エンジンは使われません。
MathPlayer は Internet Explorer のプラグインとして動作しますが、Firefox で MathML を読み上げるときにも、NVDA は内部的に MathPlayer のエンジンを呼び出しています。
MathPlayer をインストールすると Windows のコントロールパネルに MathPlayer の設定をするダイアログが現れます。
そこに数式を読み上げる言語の設定オプションもあります。
しかし NVDA が MathPlayer を通じて数式を読み上げるときに、数式をどの言語で読み上げるか、という設定は、私が確認したかぎりでは、あまりうまく制御できません。
HTML で言語属性がどのようにマークアップされているか、
あるいは NVDA の音声設定
「自動言語切り替え」
「記号と文字の説明に音声の言語を使用」
などのオプションが、数式の読み上げに影響を与えるようです。
日本語 Windows で NVDA を使っていれば、 MathML コンテンツは通常、日本語で読み上げられます。
しかし、上記に引用した説明にも書いたとおり、 MathPlayer の制約で「対話的なナビゲーション」(NVDA+Alt+M)が正しく動作しない場合があります。
これは私が頑張って追求したのですが、 NV Access の判断は MathPlayer の不具合なので NVDA は直さない、ということでした。
2015.2 の重要な新機能のひとつが日本語環境でうまく使えない、という事態を避けるために、NVDA 日本語版においては、「数式を英語で読み上げる」オプションを提供して、デフォルトでは
「数式は英語で読み上げるけれど NVDA+Alt+M は確実に使える」
という状態にしました。
例えば JTalk で音声設定「自動言語切替」を有効にしていると、数式の部分だけ eSpeak の英語の声で読み上げる、という状況を確認していただけるはずです。
一方で、NVDA+Alt+M の動作は不完全かも知れないが、日本語環境では数式も日本語で読ませたい、という場合は、この日本語設定「数式を英語で読み上げる」をチェックなしにしていただくと、本家版 2015.2 と同じ動作になります。
ミツエーリンクスさんのブログには、数式の日本語での読み上げには不自然なところがある、というご指摘も書かれています。
これは MathPlayer 自身に「数式を日本語でどう読み上げるか」という処理が入っているため、 NVDA 側では改善できません。
数式の日本語での読み上げをもっと自然にすること、日本語でナビゲーションが使えるようにしていただくこと、などの件について MathPlayer 開発元である Design Science へのフィードバックも重要と思います。
MathPlayer の開発チームには日本の数式アクセシビリティ研究者のお名前も挙がっているので、きちんと問題提起すれば改善されるのではないかという期待もあります。
http://www.dessci.com/en/products/mathplayer/tech/credits.htm
NVDA の数式対応についての Design Science と NV Access の協業は、今年3月に正式発表されましたが、現在もまだ MathPlayer 4 がベータ版として配布されている状態なので、今後も状況が変化していくと思います。
まずは日本のコンテンツ制作者の皆様にアクセシブルな MathML コンテンツのブラウズ環境を体験していただき、適切なマークアップ方法についてご議論いただくために、NVDA 2015.2 の新機能を体験していたければ幸いです。
追記
https://osdn.jp/projects/nvdajp/wiki/MathML に私が検証に使っているMathMLコンテンツのリンク集を作りました。ご利用ください。