NonVisual Desktop Access ( NVDA ) は、Microsoft Windows用の無料のオープンソースのポータブルスクリーンリーダーです[ 2 ]。[ 3 ]このプロジェクトは、2006 年に Michael Curran によって開始されました。[ 4 ]
NVDAはPythonでプログラミングされています。UI Automation、Microsoft Active Accessibility、IAccessible2、Java Access BridgeなどのアクセシビリティAPIを利用して、ユーザーへの情報アクセスと表示を行います。ライセンスはGNU General Public Licenseバージョン2です。
2006 年 4 月、マイケル・カランは商用スクリーン リーダーの高コストに懸念を抱き、非商用のオープンソース スクリーン リーダーの開発に着手しました。これがきっかけとなり、彼はPython 言語をベースとしたFOSS代替のスクリーン リーダーの開発を始めました。これは、音声エンジンとしてMicrosoft SAPIを使用するスクリーン リーダーです。Microsoft Windows 2000以降をサポートし、一部のサードパーティ ソフトウェアや Web ブラウジングの基本的なサポートなどのスクリーン リーダー機能を提供しました。2006 年末頃、カランは自身のプロジェクトを Nonvisual Desktop Access (NVDA) と名付け、翌年にバージョン 0.5 をリリースしました。2008 年と 2009 年にかけて、Web ブラウジング機能の強化、より多くのプログラムのサポート、点字ディスプレイ出力、より多くの言語のサポートの改善を特徴とする 0.6 のバージョンがいくつか登場しました。NVDA の継続的な開発を管理するために、カランはジェームズ・テとともに 2007 年に NV Access を設立しました。[ 5 ] [ 6 ]
NVDA の機能と人気は成長を続けました。[ 7 ] 2009 年にWindows の64 ビット版のサポートが追加され、2010 年にはプログラムの安定性が向上しました。サードパーティ モジュールをサポートするための大規模なコード再構築と、 Windows 8の基本サポートが 2011 年に利用可能になりました。2012 年を通して、NVDA は Windows 8 のサポートが強化され、自動更新を実行できるようになり、サードパーティ アドオンを管理するためのアドオン マネージャーが追加され、東アジアのテキスト入力のサポートが強化され、 Windows 用のサードパーティ スクリーン リーダーとしては初めてタッチスクリーンサポートが導入されました。NVDA は 2013 年にMicrosoft PowerPointのサポートを獲得し、2014 年に PowerPoint 2013 をサポートするように更新されました。NVDA は同年、強化されたWAI-ARIA サポートも追加しました。また、2013 年に NV Access は、画面テキストを確認する再構築された方法とアプリケーションのプロファイルを管理する機能を導入し、2014 年に Microsoft Office やその他のオフィス スイートへのアクセスを改善しました。
数式のアクセシビリティは、盲人や視覚障害者にとって問題となることがあります。[ 8 ] [ 9 ] 2015年、NVDAはMathPlayerを介してMathMLのサポートを獲得し[ 10 ]、SkypeのデスクトップクライアントであるMinttyとMicrosoft Excelのグラフのサポートも改善され、2016年にはバックグラウンドオーディオを下げる機能が導入されました。また、2015年には、NVDAはWindows 10をサポートする最初のスクリーンリーダーの1つとなり、実験的にMicrosoft Edgeのサポートを追加しました。
2023~2024年にWebAIMが行ったスクリーンリーダーユーザー調査では、NVDAが一般的な使用頻度で世界的に最も人気のあるスクリーンリーダーであり、JAWSに次いで2番目に人気のある主要なスクリーンリーダーであることがわかりました。調査参加者の37.7%が主要なスクリーンリーダーとして使用し、65.6%が頻繁に使用していました。[ 11 ] [ 12 ]このプログラムは、無料でダウンロードして使用できるため、そうでなければインターネットにアクセスできない多くの盲人や視覚障害者が利用できることから、特に発展途上国で人気があります。[ 13 ] [14] [ 15 ]
NVDAはステガノグラフィーベースのソフトウェアと併用して、画像のテキストによる説明を提供することができます。[ 16 ]
NVDA は、統合音声合成器としてeSpeak を使用しています。また、Microsoft Speech プラットフォーム合成器、ETI Eloquence もサポートしており、SAPI合成器もサポートしています。点字ディスプレイへの出力[ 17 ]は、バージョン 0.6p3 以降で正式にサポートされています。[ 18 ]
NVDA は、一般的な Windows 機能に加えて、Microsoft Office アプリケーション、WordPad、メモ帳、Windows Media Player、Mozilla Firefox、Google Chrome、Internet Explorer、Microsoft Edgeなどの Web ブラウザーといったソフトウェアと連携します。Outlook 、Mozilla Thunderbird、Outlook Expressなどのほとんどの電子メール クライアントもサポートしています。NVDA は、 Microsoft Word、Microsoft PowerPoint、Microsoft Excelのほとんどの機能とも連携します。[ 19 ]無料のオフィス スイートであるLibreOfficeとOpenOffice.orgもサポートされています。
2009 年初頭から NVDA は、視覚障害者ユーザーのための Web アプリケーションのアクセシビリティを向上させるために、アクセシブルなリッチインターネットアプリケーションのための WAI-ARIA 標準をサポートしています。[ 18 ] [ 20 ]
NVDAは、コアループ、アドオンマネージャ、アプリモジュール、イベントハンドラ、入出力ハンドラなど、さまざまなサブシステムで構成されています。また、Microsoft Active AccessibilityなどのアクセシビリティAPIをサポートするモジュールも備えています。さらに、NVDAはwxPythonをベースとした独自のグラフィカルユーザーインターフェースも搭載しており、各種設定ダイアログや、セットアップおよびアップデート管理ダイアログなどが含まれます。
NVDA は、メニュー バー、ステータス バー、各種フォアグラウンド ウィンドウなど、アプリケーション内の要素を表すためにオブジェクトを使用します。オブジェクトの名前、値、画面座標などのさまざまな情報は、UIA (ユーザー インターフェイス オートメーション) など、オブジェクトによって公開されるアクセシビリティ API を介して NVDA によって収集されます。収集された情報は、音声ハンドラーなどのさまざまなサブシステムに渡され、音声、点字[ 21 ]、およびオンスクリーン ウィンドウを介してユーザーに提示されます。NVDA はまた、キーの押下、名前の変更、アプリケーションがフォーカスを取得または失うなどのイベントを処理する機能も提供します。
NVDAは、アプリケーションのオブジェクト階層を調べ、プログラムのアクセシビリティを向上させるための機能を提供します。アプリケーション内のオブジェクト階層を移動するための専用コマンドに加え、フォーカス操作、イベントの監視、アプリケーションのアクセシビリティ向上のためのテストコードを実行し、それらをアプリモジュールにパッケージ化するための対話型Pythonコンソールも提供します。
2006年から2013年まで、NVDAのソースコードはBazaarで管理されていましたが、2013年にNV AccessはBazaarでの開発進捗状況を考慮してGitに移行しました。開発者たちはこの機会に、公式リリースの遅延を防ぎ、リリース時期を予測可能にするため、リリーススケジュールを定期的に変更しました。
公式リリースに加えて、テスト用に毎晩のスナップショットビルドも利用可能です。Linuxカーネルのリリースプロセスと同様に、NVDA のスナップショットはベータ版とアルファ版のブランチで利用可能で、特別なトピックブランチが時々作成されます。NV Access では、ベータ版ブランチはユーザーが新機能に早期アクセスできる機会、アルファ版ブランチは今後のリリースに含める可能性のある最先端のコード、トピックブランチは主要な機能を開発したり公式リリース (rc ブランチ) に備えたりするためのものだと説明しています。[ 22 ]一部のサードパーティ開発者は、NVDA の言語固有のバージョン[ 23 ]や、現在開発中の機能のパブリックプレビューを提供するなど、特定のフォークも維持しています。
開発は主にNV Accessが主導しているが、コード、ドキュメント、翻訳に関する貢献は、世界中のユーザーや他の開発者から寄せられている。
{{cite journal}}: CS1 maint: 複数の名前: 著者リスト (リンク)