PDF 文書内のフォームフィールドの名前 (name)、役割 (role)、値 (value) 情報を提供する

達成方法に関する重要な情報

この達成方法 (参考) の使用法と、この達成方法が WCAG 2.1 達成基準 (規定) とどのように関係するのかに関する重要な情報については、WCAG 達成基準の達成方法を理解するを参照のこと。適用 (対象) のセクションは、その達成方法の範囲について説明しており、特定の技術に関する達成方法の存在は、その技術があらゆる状況で WCAG 2.1 を満たすコンテンツを作成するために使用できることを意味するものではない。

適用 (対象)

インタラクティブなフォームフィールドが含まれているタグ付き PDF 文書

これは、次の達成基準に関する達成方法である:

解説

この達成方法の目的は、支援技術で PDF コンテンツ内のフォームコントロールに関する情報を収集し、そのフォームコントロールと対話することである。

PDF フォームコントロールの種類は、テキスト入力フィールド、チェックボックス、ラジオボタン、コンボボックス、リストボックス及びボタンである。

名前、役割、状態及び値情報をすべてのフォームコンポーネントに提供することにより、障害のある人が使用するスクリーンリーダー、画面拡大ソフトウェア、音声認識ソフトウェアなどの支援技術との互換を可能にする。

PDF 仕様は、以下の表に示されているように、「PDF 1.7 (ISO 32000-1)」の節 12.7.4 (Field Types) でフォームコントロールに対して名前、役割及び値が設定される方法を定義する。コメント列では、対応する情報を Adobe Acrobat Pro で表示する方法について説明する。

インタラクティブなフォーム辞書エントリ定義する項目コメント
FT役割 (role)フィールドの種類を共有し、フィールドフラグを使用して適切な役割を設定するコントロール。Adobe Acrobat では、フォームコントロールの役割は自動的に設定される。
TU名前 (name)Adobe Acrobat では、TU エントリ値は、フォームコントロールのプロパティダイアログボックスのツールヒントフィールドを通じて提供される。このエントリは、Acrobat のフォームコントロールのプロパティダイアログボックスで名前として定義される T エントリと混同しないこと。このプロパティダイアログボックスの「名前」フィールドは、支援技術により読み取られる際にコントロールの名前を提供するためには使用されない。
CA名前 (name) (プッシュボタンのみ)Adobe Acrobat では、CA エントリ値は、フォームコントロールのプロパティダイアログボックスのラベルフィールドを通じて提供される。
V値エントリは、値を必要とするコントロールと対話する利用者により設定される。
DVデフォルト値Adobe Acrobat では、DV エントリ値はフォームコントロールのプロパティダイアログボックスで設定できる。

以下の表では、Adobe Acrobat Pro を使用して作成される PDF フォームコントロールに対して役割、名前、値及び状態がどのように定義されるのかを説明する。Adobe LiveCycle Designer には、これらと同様のコントロールと、いくつかの追加のコントロールが用意されている。(後述の事例 2 を参照のこと)。

PDF フォームエレメント役割 (FT エントリ)名前 (name) (TU エントリ)値 (V エントリ)設定可能な状態
テキストフィールドテキスト /Tx ツールチップデフォルト値 (フィールド辞書の DV エントリ) はプロパティダイアログボックスで設定できる。値は利用者により入力される。Read Only, Required, Multiline, Password
チェックボックスチェックボックス /Btn ツールチップV エントリは、Checked 状態に応じて「Yes」又は「No」に設定される。Read Only, Required, Checked
ラジオボタンラジオボタン /Btn (フィールドフラグを「Radio」に設定する)ツールチップV エントリは、Checked 状態に応じて「Yes」又は「No」に設定される。Read Only, Required, Checked
コンボボックスコンボボックス /Ch (フィールドフラグを「Combo」に設定する)ツールチップデフォルト値 (/DV) はプロパティダイアログボックスで設定できる。値は利用者の選択によって決定される。Read Only, Required
リストボックスドロップダウンリスト /Ch ツールチップデフォルト値 (/DV) はプロパティダイアログボックスで設定できる。値は利用者の選択によって決定される。Read Only, Required
ボタンプッシュボタン /Btn (フィールドフラグを「Pushbutton」に設定する)ラベル (TU エントリではなく CA エントリ)プッシュボタンは値を持たず、必要としない。Read Only, Required
署名フィールドテキスト /Sig ツールチップデフォルト値 (フィールド辞書の DV エントリ) はプロパティダイアログボックスで設定できる。値は利用者により入力される。Read Only, Required

事例

例 1: Adobe Acrobat 9 Pro を使用してフォームフィールドの名前、役割、値、状態を指定する

この事例は Adobe Acrobat Pro の場合を示している。同様の機能を実行するソフトウェアツールは他にも存在する。他のソフトウェアツールのリストについては、「」を参照のこと。

訳注:

上記「」に該当する記述が、WCAG 2.1 達成方法集の原文では削除されている。WCAG 2.0 達成方法集においては、PDF テクノロジーノートの中に「アクセシビリティがサポートされている PDF オーサリングツール」というセクションがある。

この事例では、説明のためにチェックボックスを使用する。手順はその他のフォームコントロールと同様である。フォーム編集モードで、次の操作を行う。

  1. 作成又は変更するフォームフィールドのコンテキストメニューにアクセスする
  2. フォームフィールドの[プロパティ]ダイアログボックスを選択する
  3. 「ツールヒント」フィールドに値を追加して名前を指定する。これは、コントロールの名前としてアクセシビリティ API により使用され、通常、コントロールの視覚的なラベルとして使用されるテキストと一致するように設定する必要がある
  4. [オプション]タブを選択する
  5. 必要に応じて、デフォルト値とデフォルトの状態を指定する

以下の画像は、[一般]タブが表示されている、チェックボックスのプロパティダイアログボックスを示している (ダイアログボックス内の「名前」フィールドはアクセシビリティでは必要ない)。

図 1 チェックボックスのプロパティダイアログの[一般]タブ。チェックボックスの名前及びツールチップのフィールドが表示されている。

以下の画像は、[オプション]タブが表示されている、[チェックボックスのプロパティ]ダイアログボックスを示している。

図 2 [チェックボックスのプロパティ]ダイアログの[オプション]タブに、チェックボックスの値と状態のフィールドが表示されている。

この事例のサンプルとして、Acrobat Pro を使用して名前 (name)、役割 (role)、値 (value) を指定したサンプル (PDF ファイル) がある。

例 2: Adobe LiveCycle Designer ES 8.2.1 を使用してフォームフィールドの名前、値及び状態を指定する

この事例は Adobe LiveCycle Designer の場合を示している。同様の機能を実行するソフトウェアツールは他にも存在する。他のソフトウェアツールのリストについては、「」を参照のこと。

訳注:

上記「」に該当する記述が、WCAG 2.1 達成方法集の原文では削除されている。WCAG 2.0 達成方法集においては、PDF テクノロジーノートの中に「アクセシビリティがサポートされている PDF オーサリングツール」というセクションがある。

Adobe LiveCycle Designer では、オブジェクトライブラリを使用してフォームオブジェクトを作成し、オブジェクトパレットを使用してオブジェクトの名前、役割、状態又は値を指定する。

次の画像は、[オブジェクト]パレットを示している。

図 3 LiveCycle Designer のオブジェクトライブラリで、フォーム作成に利用可能なフォームオブジェクトが表示されている。

以下の三つの画像は、オブジェクトパレットの各タブを示している。一つ目の画像では、フィールドの種類 (役割) を指定するための「フィールド」タブが開かれている。

図 4 LiveCycle Designer オブジェクトパレットの[フィールド]タブ。

次の画像は、フィールドに適用できるオプションのある[値]タブを示している。

図 5 LiveCycle Designer オブジェクトパレットの[値]タブのオプション。

三つ目の画像は、フィールドの名前を指定する[連結]タブを示している。

図 6 LiveCycle Designer オブジェクトパレットの[連結]タブ。

この事例のサンプルとして、LiveCycle Designer を使用して名前 (name)、役割 (role)、値 (value) を指定したサンプル (PDF ファイル) がある。

例 3: /Btn フィールドの種類を使用して PDF 文書内にチェックボックスを追加する

次のコードフラグメントは、例 1 及び 2 に示すような単純なチェックボックスフィールドで一般的に使用されるコードを示している。このコードは通常、オーサリングツールにより実行される。

1 0 obj
  << /FT /Btn     % Role
     /TU Retiree  % Name
     /V /Yes      % Value
     /AS /Yes
     /AP << /N << /Yes 2 0 R /Off 3 0 R>>
  >>
endobj

参考リソース

参考リソースは、あくまでも情報提供のみが目的であり、推薦などを意味するものではない。

検証

手順

  1. フォームコントロールについて、名前 (name)、役割 (role)、値 (value) /状態が次のいずれかによって指定されていることを確認する。

    • スクリーンリーダーを使用してフォームコントロールに移動し、そのフォームコントロールをアクティブ化できる、又はその値を変更できる。名前 (name) (ツールヒント) と役割 (roke) が読み上げられる。
    • フォームフィールド情報を表示できるツールを使用して PDF 文書を開くと、フォームコントロールに正しい名前 (name)、役割 (role)、値 (value) 及び状態 (該当する場合) の情報がある。
    • アクセシビリティ API を通じて文書を表示するツールを使用して、フォームコントロールに正しい名前 (name)、役割 (role)、値 (value) 及び状態 (該当する場合) の情報があることを確認する。

期待される結果

  • #1 の結果が真である。