絵文字をスクリーンリーダーに読み上げさせてみた

アクセシビリティ・エンジニア 中村(直)

以前に同僚と少し絵文字に関する話をしていたこともあり、ふと、絵文字はスクリーンリーダーでどう読み上げられるのかということが気になって、ごく簡単に読み上げさせてみましたという話です。

筆者の自宅の環境がWindowsとAndroidであることから、読み上げのテストにあたっては、NVDA、Windowsのナレーター、TalkBackで試してみました。以下にテスト環境を記しておきます。ブラウザーによる違いは見られなかったので、これについては省いています。

Windows バージョン 1909(OS ビルド 18363.836)
NVDA 2020.1jp
Android 10
TalkBack バージョン 8.2.0.303936097

以下が4つの絵文字について読み上げテストを実施した結果になります。言語については、lang属性を付与して読み上げさせました。

笑顔を表す絵文字と各スクリーンリーダーによる読み上げの比較(日本語)
コードポイント グリフ NVDA ナレーター TalkBack
U+263A 笑顔 スマイルマーク (聞き取り不能)
U+263B (読み上げせず) (読み上げせず) (読み上げせず)
U+1F600 😀 笑顔 にんまり顔 (聞き取り不能)
U+1F601 😁 笑顔 たくらみ顔 (聞き取り不能)
笑顔を表す絵文字と各スクリーンリーダーによる読み上げの比較(英語)
コードポイント グリフ NVDA ナレーター TalkBack
U+263A Smiling face スマイルマーク Smiling face
U+263B (読み上げせず) (読み上げせず) Smiling face
U+1F600 😀 Grinning face にんまり顔 Grinning face
U+1F601 😁 Beaming face with smiling eyes たくらみ顔 Beaming face with smiling eyes

結果をまとめてみます。

  • NVDAは日本語ではすべて「笑顔」と読み上げられたものの、英語ではそれぞれ異なる読み上げられ方がされています。これは、読み上げ辞書の問題でしょうか。
  • ナレーターはlang属性を解釈してくれないためか、すべて日本語として読み上げられました。
  • 日本語の場合のTalkBackについて、「(聞き取り不能)」とあるのは、Googleテキスト読み上げエンジンにバグがあるのか、何を言っているのかわからない読み上げられ方をしたことによります。
  • U+263B(☻)については、TalkBack(英語)に限って、読み上げが行われ、その他では何も読み上げられませんでした。Wikipediaに記載されているUnicodeのEmojiの一覧の文字にあたらないことが関係しているのかもしれませんが、他の文字を試していないこと、Unicodeの仕様をきちんとあたっていないことから、詳しいことは不明です。
  • 英語の読み上げについては、U+263B(☻)を除いて、NVDAとTalkBackとで同じになりました。

今回試した範囲では、文字、言語、スクリーンリーダー間でさまざまな差異が見られました。このようなごく簡単な調査ですら、絵文字によっては読み上げられないものがあり、また特に日本語環境の絵文字の読み上げには支援技術によって相当な差異があることから、支援技術による絵文字の日本語読み上げ対応という意味では、かなり厳しいものがあると言わざるを得ないでしょう。