WCAG 2.0 達成方法集

Skip to Content (Press Enter)

-

PDF20: 間違ってタグ付けされているテーブルを修復するために、Adobe Acrobat Pro のテーブルエディタを使用する

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

これらの達成方法(参考)の使用法及び、それらがWCAG 2.0 達成基準(規定)とどのように関係するかに関する重要な情報については、WCAG 達成基準の達成方法を理解するを参照のこと。適用(対象)セクションは、その達成方法の範囲について説明しており、特定の技術に関する達成方法があるからといって、WCAG 2.0 を満たすコンテンツを作成する際に、常にその技術が使用可能であるわけではない。

適用(対象)

テーブルが含まれているタグ付き PDF 文書

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

ユーザエージェント及び支援技術によるサポート

PDF20 に関するユーザエージェントサポートノート (英語)を参照のこと。PDF テクノロジーノートも参照。

解説

この達成方法の目的は、行と列の間の論理的な関係が維持され、支援技術により認識されるように、PDF 文書内のテーブルセルをマークアップする方法を示すことである。これは通常、PDF のオーサリングツールを使用して行う。

ただし、オーサリングツールで正しくマークアップされている場合でも、PDF に変換されたテーブルに、正しく結合または分割されないテーブルセルが存在する場合がある。コンテンツ制作者は、Adobe Acrobat Pro の TouchUp 読み上げ順序ツールのテーブルエディタを使用して、テーブルセルが適切に構造化されていることを確認できる。

事例

事例 1: Adobe Acrobat 9 Pro の TouchUp 読み上げ順序ツールのテーブルエディターを使用してテーブルセルを修復する

この事例は Adobe Acrobat Pro の場合を示している。同様の機能を実行するソフトウェアツールは他にも存在する。 他のソフトウェアツールのリストについては、「アクセシビリティがサポートされている PDF オーサリングツール」を参照のこと。

この事例では、Microsoft Word での作成時に正しくマークアップされていたテーブルを使用する。一部のテーブルヘッダは、ヘッダ行が 2行あり、テーブルヘッダが 2列に分かれている。

スクリーンショット:複雑なヘッダのある、Word で正しくマークアップされたテーブル(PDF への変換前)

PDF 文書内のテーブルを確認するには、次の操作を行う。

  1. アドバンスト > アクセシビリティ > TouchUp 読み上げ順序を選択する

  2. テーブルの左上隅にある数字(以下の画像の読み上げ順序 3)をクリックしてテーブルを選択する

  3. TouchUp 読み上げ順序パネルで[テーブルエディタ]ボタンを選択する。テーブルセルに赤色のアウトラインが表示され、タグによってラベルが付けられる。赤いアウトラインはテーブルセルと厳密に一致するものではないが、それによってセルが正しくタグ付けされているかどうかを確認できる

次の画像は、TouchUp 読み上げ順序ツールのサンプルテーブルを示している。「Results」ヘッダが 2つのサブヘッダにまたがって表示されており、左側にあるその他のヘッダは「Results」ヘッダ内の 2つの行にまたがっている。

スクリーンショット:TouchUp 読み上げ順序ツール内のテーブル。Word の場合と同様に、テーブルの「Results」ヘッダは 2つのサブヘッダにまたがって表示されており、左側にあるその他のヘッダは「Results」ヘッダ内の 2 つの行にまたがっている。

次の画像は、テーブルエディターでのサンプルテーブルを示している。セルには赤色のアウトラインが付けられ、各セルのタブが表示されている。変換時に、「Results」ヘッダが正しく分割されず、2つのサブヘッダにまたがっていない。右側にあるヘッダは 2つのセルに正しく分割されず、「Results」ヘッダにまたがっていない。さらに、正しく分割されなかったセルが 1つのセルに結合されている。

スクリーンショット:テーブルセルと各セルのタグを示している、テーブルエディターでのサンプルテーブル。テーブルエディターは、「Results」ヘッダが正しく分割されず、2 つのサブヘッダにまたがっていないことを示している。その他のヘッダも正しく分割および結合されていない。

「Results」ヘッダを修復するには、次の操作を行う。

  1. テーブル内でヘッダを選択する(選択されると、青色のアウトラインが表示される)

  2. コンテキストメニューにアクセスする

  3. [テーブルセルのプロパティ]を選択する

  4. [テーブルセルのプロパティ]ダイアログボックスで、「列のスパン」を「1」から「2」に変更する

  5. [OK]を押す。変更により正しくないテーブル構造が生じた場合には、警告が表示される。この場合、変更は正しい。変更したセルは、次の画像に示されているように、新しい範囲を示すために色が変わる

スクリーンショット:この事例でタグ付けが間違っているヘッダを修復するために「列のスパン」が「2」に変更された、[テーブルセルのプロパティ]ダイアログボックス

同様に、「Results」ヘッダの左側にある正しく分割されていないヘッダセルを修復するには、次の操作を行う。

  1. 列内で上部のセルを選択する(選択されると、青色のアウトラインが表示される)

  2. コンテキストメニューにアクセスする

  3. [テーブルセルのプロパティ]を選択する

  4. [テーブルセルのプロパティ]ダイアログボックスで、「行のスパン」を「1」から「2」に変更する

  5. [OK]を押す。次の画像は、左側にあるヘッダセルが修正され、最後のヘッダセルが修正された状態を示している

スクリーンショット:この事例でタグ付けが間違っているヘッダを修復するために「行のスパン」が「2」に変更された、[テーブルセルのプロパティ]ダイアログボックス

次の画像は、修復されたサンプルテーブルを示している。

スクリーンショット:テーブルエディター内の修復されたサンプルテーブル。これで、元の Word の表と同じテーブル構造になっている。

この事例のサンプルとして、テーブル構造を修復するサンプル (Word ファイル)テーブル構造を修復するサンプル (PDF ファイル)がある。

事例 2: テーブルの構造エレメントを使用してテーブルをマークアップする

次のコードフラグメントは、事例 1 ~ 3 に示すような単純なテーブル(ヘッダ行とデータ行)で一般的に使用されるコードを示している。


95 0 obj                % テーブルの構造エレメント
 << 
  /A 39 0 R
  /K[96 0 R 101 0 R 106 0 R 111 0 R]
  /P 93 0 R
  /S/Table              % 標準構造タイプはテーブル
 >> 
 endobj
96 0 obj                % テーブル行の構造エレメント
 << 
  /K[97 0 R 98 0 R 99 0 R 100 0 R]
  /P 95 0 R
  /S/TR                 % 標準構造タイプはテーブル行
 >> 
 endobj
97 0 obj                % テーブルヘッダの構造エレメント
 <</A[23 0 R 120 0 R]
   /K 1
   /P 96 0 R
   /S/TH                 % 標準構造タイプはテーブルヘッダ
   /Pg 8 0 R
 >> 
endobj
104 0 obj                % テーブルデータの構造エレメント(セルのコンテンツ)
 << 
  /A 29 0 R
  /K 7
  /P 101 0 R
  /S/TD                  % 標準構造タイプはテーブルデータ
  /Pg 8 0 R
 >> 
endobj

参考リソース

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

検証

チェックポイント

  1. テーブルエディターで修復されたテーブルについて、次のいずれかの確認を行う。

    • PDF 文書をスクリーンリーダーで読み上げると、テーブルヘッダおよびデータセル間の論理的関係を維持する方法で表の情報が読み上げられる(表のヘッダセルを読み上げるためにヒューリスティック手法が用いられないようにスクリーンリーダーを構成すること)

    • PDF エディターを使用し、適切な TRTH および TD タグが正しい読み上げ順序でテーブルツリー内の階層に配置されていることを確認する

    • テーブルエレメントを表示できるツールを使用して PDF 文書を開き、テーブル構造を表示して、適切な TRTH および TD 構造が含まれていることを確認する

    • アクセシビリティ API を通じて文書を表示するツールを使用して、テーブル構造に適切な TR、THおよびTD 構造が含まれ、正しい読み上げ順序と階層になっていることを確認する

判定基準

この達成方法が「十分な達成方法」の一つである場合、このチェックポイントや判定基準を満たしていなければ、それはこの達成方法が正しく用いられていないことを意味するが、必ずしも達成基準を満たしていないことにはならない。場合によっては、別の達成方法によってその達成基準が満たされていることもありうる。