アクセシビリティへ向けて
April 14, 2011 by 朝木卓見 | Comments
この記事は Qt Blog の ”Not yet Accessible” を翻訳したものです。
執筆: Frederik Gladhorn 2011年4月1日
最近、アクセシビリティについて少し調べる機会を得ました。Qt では、プラットフォームで設定されたハイコントラストカラースキームやビッグフォントをサポートしています。それ以外のアクセシビリティの機能としては支援技術(Assistive Technology:AT)があります。この機能ではアプリケーションが画面に表示しているものをエクスポートして、AT クライアントがそれを別の手段で解釈します。スクリーンリーダではユーザに画面をナビゲートする助けとして、その情報を音声合成に使用します。AT の規格はいくつかあります。Qt では全てのサポートプラットフォームで、そのネイティブインターフェースのサポートを目的としています。現時点で Windows では、若干古くなりましたが現役の MSAA(Microsoft Active Accessibility) をサポートしています。Linux の状況はこれまでかなり悪かったようです。これはまだリサーチプロジェクトですが、そのゴールは Linux デスクトップで Qt や KDE のアプリケーションで AT が動くようになることです。
最近 Orca(GNOME のスクリーンリーダ) が DBus と AT-SPI 2 で動き始めました。[qt QAccessibleBridgePlugin] を利用して、Qt はそれらと同じインターフェースを提供することが出来ます。そのプラグインは Qt の IAccessible2 (乱立するアクセシビリティの別の規格) の内部実装を使用します。これはまだ実装中ですが、ビデオでご覧いただいたように基本的な部分は実装済みです。
カスタムウィジェットを用いるアプリケーションに関連するのは [qt QAccessiblePlugin] を実装することです。もちろん、このプラグインは全てのプラットフォームで共通なので、一度だけ作成すればよいですし、標準のウィジェットには Qt 側で用意してあります。
実際に動作させるまで信じられないという方は、遠慮無く gitorious からプラグインを取得してください: http://gitorious.org/qt-at-spi
(訳注: 原文の公開日は4月1日でした。)
もちろん、プラグインからの情報を受け取るシステムが必要です。プラグインを使用するには AT-SPI-2 が動作している必要があります。AT-SPI2 のテスト時に問題の素早い修正を行ってくれた Mike Gorse と数名に感謝します。ブリッジはまだ開発途上のためアプリケーションがクラッシュすることがあります。
at-spi2-core, libatk-adaptor/at-spi2-atk, pyatspi2 そして Orca をインストールしてください。 Accerciser はデバッグ時に大きな助けとなるでしょう。
gconf に AT-SPI 2 を利用する設定をしてください:
gconftool-2 --set /desktop/gnome/interface/at-spi-dbus --type bool true
gconftool-2 --set /desktop/gnome/interface/at-spi-corba --type bool false
以下の環境変数を設定してください:
export GTK_MODULES=gail:atk-bridge
export QT_ACCESSIBILITY=1
Will と Jonathan のおかげで、Suse と Kubuntu 用のパッケージが既に準備されています。しかし上記の通り、それらはまだクラッシュする状態にあります。Qt の master ブランチ(4.8)では問題は修正済みです。
Qt および KDE アプリケーションでは、さらなるテストと Qt の標準ではないウィジェット用の QAccessiblePlugins が必要です。
Blog Topics:
Comments
Subscribe to our newsletter
Subscribe Newsletter
Try Qt 6.4 Now!
Download the latest release here: www.qt.io/download.
Qt 6 is the productivity platform for the future, with next-gen 2D & 3D UX and limitless scalability.
Explore Qt World
Check our Qt demos and case studies in the virtual Qt World
We're Hiring
Check out all our open positions here and follow us on Instagram to see what it's like to be #QtPeople.
Näytä tämä julkaisu Instagramissa.Henkilön Qt (@theqtcompany) jakama julkaisu