スクリーンリーダー NVDA と LibreOffice @24motz nishimotz@gmail.com 2016-01-09 LibreOffice mini Conference 2016 Osaka/Japan 1
自己紹介 NVDA日本語チーム代表 www.nvda.jp PyCon mini Hiroshima 2015 実行委員長 hiroshima.pycon.jp アクセシビリティ、言語、UI等の研究開発 フリーランス シリコンバレー拠点のスタートアップ(在宅) 広島県広島市 在住
アクセシビリティ 本質 コンテンツは人に伝わるために存在 フォーマット(API)の定義 品質 コンテンツはより多くの人に伝わるべき より多くの人に伝わる実装 未来 未知のデバイスや技術がこのコンテンツのユー ザー マシンリーダブル、新しい使い方の想像(創造)
NVDA NonVisual Desktop Access オープンソース GPL v2 のスクリーンリーダー Windows 対応 PythonとC++で実装(GNOME Orcaから着想) 3か月ごとのリリース NV Access 非営利法人 Jamie と Mick 全盲の技術者 オーストラリア
NVDAのコンセプト ユニバーサル XP SP3 から 10 まで、32ビット/64ビット 各種アプリの操作方法を統一 多言語対応 標準 = Java Access Bridge, MSAA, IA2, UIA 平等(対等) Windowsを余分な費用なく誰でも使える NVDA専用アプリを増やさない 見えないことのハンディだけを補う(必須機能だけ 提供)
Windows標準の操作系 Alt, 矢印キー, Enter = メニューの選択と実行 アクセラレーター(Alt+F = ファイルメニュー) ショートカット(Ctrl+O = 開く) スペース = ボタンを押す(アクティブ化) 上矢印キー、下矢印キー = リスト項目 Tab, Shift+Tab = フォーカスの移動 F6, Shift+F6 = ペインの移動 展開と折りたたみ 左右矢印 = ツリービュー Alt+下矢印 = コンボボックス
オブジェクトナビゲーション スクリーンリーダーが付加する操作系 何かを読むための操作 標準の方法で移動できない部品への移動 オブジェクト階層構造 画面を作るためのAPIの使われ方 HTMLのDOMのようなもの ツール inspect / accprobe レビューカーソル オブジェクトの中を文字単位で移動=仮想キャ レット
アプリケーション固有の機能 ブラウズモード 1文字ナビゲーション=要素のジャンプ 要素リスト=構造をツリービューに NVDA は Word, Excel でブラウズモード テーブル見出しの報告 Webとスプレッドシートの概念の共通化 NVDA は Excel, Word に実装(UIA使用) プレゼンテーション NVDA は PowerPoint のノートなどに対応
セキュリティとアクセシビリティ アクセシビリティ=マシンリーダビリティ パスワードフィールド 保護付きドキュメント 電子書籍のDRM CAPTCHA スクリーンリーダーとマルウェアは紙一重 コードサイニング証明書が必須 レガシー技術 受難の時代 エンタープライズと似た状況
NVDA日本語版 本家版が実装しない機能を付加 大きな違い:音声エンジンと点訳エンジン 小さな違い:文字入力の報告や文字説明 音声エンジン eSpeak 点訳エンジン LibLouis GNOME Orca や Android Talkback でも使用 ラテン文字の言語が前提=日本語非対応 技術的には難しいがこれらを日本語対応すべき
NVDA日本語版ユーザ数
まとめ LibreOfficeのアクセシビリティ よくなった Altで操作できるメニューバーは魅力 基本動作の安定性、堅牢性も重要 NVDAのサポート=Microsoft Office ほど手厚く ない 他のプラットフォーム、スクリーンリーダー、アプリ? NVDA日本語チームのミートアップ 次回= 2016年1月16日(土曜) 西早稲田 詳しくは nvdajp.connpass.com