ナレーター (Windows 標準のスクリーンリーダー) を使ってみる
Windows PC においてスクリーンリーダー (主に視覚障害者が利用する画面情報の音声読み上げソフト) は、JAWS、PC-Talker、NVDA といったサードパーティ製が主流になっていますが、実は OS の標準機能として、「ナレーター」というスクリーンリーダーが装備されています。これまではさほどポピュラーとは言えないスクリーンリーダーではありましたが、下記の最新の調査 (いずれも2021年に実施) によると、それなりに利用されるようになってきているように見受けられます。
- 日本の調査 (第1回支援技術利用状況調査報告書 - JBICT.Net) によると、パソコンを使うと回答した人の35%が、ナレーターを使用している。Windows を使うと回答した人のうち、ナレーターのみを使用している人はわずか (3%) だが、PC-Talker や NVDA など他のスクリーンリーダーと併せて使用している人は42%にのぼる。
- 海外の調査 (WebAIM の Screen Reader User Survey #9 Results) によると、「メインで利用するスクリーンリーダー (primary screen reader)」としてナレーターを挙げる人はほとんどいない (0.5%) ものの、「普段よく使うスクリーンリーダー (screen readers commonly used)」としてナレーターを挙げる人は36.8%にのぼる。
大雑把に言うと、4割近くの視覚障害者が、状況に応じてナレーターをチョイスしている、という感じでしょうか。Windows 10 になってナレーターの性能が向上した、MS Office との相性がよい、といった理由が (推測ですが) あるのかもしれません。
Mac や iOS の VoiceOver、Android の TalkBack と同様に、Windows においても OS 標準のスクリーンリーダーとして、ナレーターが今後ますます使われてゆくようになる可能性があります。そこで今回、ウェブアクセシビリティ検証の観点から、ナレーターとブラウザ (Edge および Chrome) の併用を試してみました。
ナレーターの起動
Windows の設定の「簡単操作」を開くと、ナレーターを起動することができます。その際、オプションとして、ショートカットキー ([Windows ロゴ] キー + [Ctrl] キー + [Enter] キー) でナレーターを起動 / 終了するよう設定することも可能です。
ブラウザとの併用における基本操作
ナレーターの詳細なガイドについては、マイクロソフトから公式文書が出ていますが、ブラウザでのウェブコンテンツ閲覧というコンテキストにおいては、以下のキー操作を押さえておけば概ね問題ないかと思います。
キー操作 | アクション |
---|---|
下矢印 / 上矢印キー | 次の位置 / 前の位置を読み上げる。 |
右矢印 / 左矢印キー | 次の文字 / 前の文字を読み上げる。 |
[Ctrl] | 読み上げを停止する。 |
[Tab] / [Shift] + [Tab] | クリック可能なオブジェクト (リンクやボタンなど) にフォーカスを移動する。 |
[H] / [Shift] + [H] | 次の / 前の見出しに移動する。 |
[D] / [Shift] + [D] | 次の / 前のランドマークに移動する。 |
[K] / [Shift] + [K] | 次の / 前のリンクに移動する。 |
[T] / [Shift] + [T] | 次の / 前のテーブルに移動する。 |
[Ctrl] + [Alt] + 上下左右矢印キー | テーブル内で読み上げ対象セルを移動する。 |
[無変換] (または [Insert]) + スペースキー | スキャンモード (†) のオン / オフを切り替える。 |
[無変換] (または [Insert]) + [C] | ページの先頭から読み上げる。 |
ざっと試した所感
実際に、Chrome と Edge でナレーターを使ってみましたが、NVDA に比べると見劣りする部分はあるものの、思ったより実用的という印象を受けました。テキストや画像の代替テキストの読み上げはもちろんのこと、WAI-ARIA 関連でも、ライブリージョンにおける情報の変化の適時的な読み上げや、aria-label
、aria-labelledby
、aria-describedby
などの読み上げも概ね問題なさそうです。
ただ、ざっと試した限りにおいてでも、たとえば以下の現象が見られたのが、気になりました。いずれも NVDA では問題なく挙動しているので、今後のナレーターの改善に期待したいところです。
aria-expanded="true/false"
の変化 (折り畳み / 展開の切り替え) が、リアルタイムで読み上げられない。- テーブル内で読み上げ対象セルを移動中、当該データセルに紐づいているはずの見出しセル (
<th>
要素) のテキストが読み上げられない。何列中 (または何行中) のいくつ目、という情報は読み上げられる。- Chrome と Edge では若干挙動に違いがある。Edge であれば、列見出しのテキストは読み上げられる (それでも行見出しは読み上げられない)。
aria-modal
で期待通りの挙動にならない。モーダルウィンドウが展開中であるにもかかわらず、読み上げ位置を背景側のコンテンツ要素に移すことができてしまう。
現時点でナレーターは (上記のような挙動上の問題もあり) メインのスクリーンリーダーとしてはやや扱いにくい感じではありますが、OS 標準のスクリーンリーダーという位置づけに期待しつつ、ウェブアクセシビリティ検証ツールのひとつとして意識しておきたいと思います。また、Windows PC を使っているチームメンバーが手軽にスクリーンリーダーを体験できるツールとしても有用な印象を持ったので、そういった教材的な使いかたも積極的に模索してゆければと思います。