WCAG 2.0 実装方法集

メインコンテンツへスキップ

-

PDF21: PDF 文書のリストにリストタグを使用する

適用(対象)

リストが含まれているタグ付き PDF 文書

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

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

ユーザーエージェント及び支援技術に関する情報は、PDF テクノロジーノートを参照のこと。

解説

この実装方法の目的は、リストエレメントを目的に応じて適切に使用して、関連項目のリストを作成することである。リストを含む PDF フォームは通常、PDF のオーサリングツールを使用して作成または修復される。

マークアップを使用して項目を視覚的にリストであるかのように書式設定したときに、リストの関係性が示されない場合は、情報間の移動が難しくなることがある。このような視覚的な書式設定の簡単な例としては、改行を使用したリスト項目の分割がある。

一部の支援技術では、ユーザーはリスト間または項目間を移動できる。リストがリストタグで正しく書式設定されていない場合、ユーザーはリストコンテンツを理解するのが難しくなる。

PDF コンテンツ内にリストを作成する最も簡単な方法は、オーサリングツール(Microsoft Word や OpenOffice.org Writer など)のリストマークアップを使用して正しく書式設定することである。ただし、ソースファイルやオーサリングツールを利用できない場合は、Adobe Acrobat Pro の TouchUp 読み上げ順序ツールおよびタグパネルを使用できる。

PDF 仕様は、節 14.8.4.3.3「リストエレメント」(英語)でリスト構造を定義している(リストエレメント)。PDF 文書のリストの構造タイプを以下に示す。

事例

事例 1: Microsoft Word 2007 文書にリストを追加する

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

[ホーム]リボンのリストツールを使用して、Word 文書内でリストを作成または修復する。PDF への変換時にリストが正しく書式設定されていることを確認するには、この方法が最も簡単である。

次の画像では、リストツールを使用して番号付きリストと箇条書きリストが作成されている。3番目のリストにはリストツール(リボンを参照)を使用しなかったため、PDF への変換時にリストがリストエレメントとしてタグ付けされない。

スクリーンショット:Wordファイルで正しく書式設定された番号付きリストおよび記号付きリスト。3番目のセクションのテキストは、リストであるかのように表示されているが、Microsoft Word のリスト書式設定ツールは使用されていない。

事例 2: OpenOffice.org Writer 2.2 文書にリストを追加する

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

箇条書きと番号付けツールを使用して、OpenOffice.org Writer 文書内でリストを作成または修復する。PDF への変換時にリストが正しく書式設定されていることを確認するには、この方法が最も簡単である。

次の画像では、リストツールを使用して番号付きリストと箇条書きリストが作成されている。3番目のリストにはリストツール(ツールバーを参照)を使用しなかったため、PDF への変換時にリストがリストエレメントとしてタグ付けされない。

スクリーンショット:OpenOffice.org Writerファイルで正しく書式設定された番号付きリストおよび記号付きリスト。3番目のセクションのテキストは、リストであるかのように表示されているが、OpenOffice.org Writer のリスト書式設定ツールは使用されていない。

この事例のサンプルとして、OpenOffice Writer 文書にリストを追加したサンプル(OpenDocumentテキストファイル)がある。

事例 3: Adobe Acrobat 9 Pro を使用して、リストを正しく書式設定する

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

  1. 表示 > ナビゲーションパネル... > タグ

  2. 文書内のリストを検査して、書式設定に誤りがないかどうかを確認する。

次の画像では、3番目のリストがテキストとして書式設定されている。このリスト項目は改行によってのみ分割されている。そのため、支援技術では、ユーザーに対してこれをリストとして分かりやすく表現できない。

スクリーンショット:タグパネルでは、書式設定に誤りのあるリストは、リストタグの下にネストされるのではなく、Textbodyタグの下にテキストとして表示される。

リストを修復するには、[タグ]パネルを使用してコンテンツ内にリストタグを作成する。

次の画像は、結果として作成された、正しく書式設定された最初のリスト項目を示している。

スクリーンショット:[タグ]パネルで、リストタグの下に正しくネストされた最初のリスト項目

この事例のサンプルとして、Acrobat Pro でリストが適切に書式設定されたサンプル(PDFファイル)がある。

事例 4: List 構造エレメントを使用してリストをマークアップする

次のコードフラグメントは、PDF 文書内のリスト階層をマークアップする一般的なコードを示している。前述の事例では、単純な番号付けリストが使用されている。これは通常、オーサリングツールを使用して行う。

4 0 obj
  <</Type /Page
    /Contents 5 0 R
  >>

endobj
5 0 obj
  << /Length 3 0 R >>
  stream
   /P <</MCID 1>> BDC
      BT T* (The most popular sports are:) Tj ET EMC
   /Lbl <</MCID 11>> BDC
      BT T* (1. ) Tj ET EMC
   /LBody <</MCID 12>> /BDC
      BT (Snow-shoeing ) Tj ET EMC
   /Lbl <</MCID 21>> BDC
      BT T* (2. ) Tj ET EMC
   /LBody <</MCID 22>> /BDC
      BT (Ice-skating ) Tj ET EMC
   /Lbl <</MCID 31>> BDC
      BT T* (3. ) Tj ET EMC
   /LBody <</MCID 32>> /BDC
      BT (Skiing ) Tj ET EMC
endstream
endobj

101 0 obj                 % リストへの導入段落の構造エレメント ("The most popular sports are:")
  << /Type /StructElem
     /S /P
     /P 201 0 R
     /Pg 4 0 R
     /K 1
  >>
endobj

111 0 obj                  % 最初の項目の構造エレメント、リストラベル (Lbl): "1."
  << /Type /StructElem
     /S /Lbl
     /P 211 0 R
     /Pg 4 0 R
     /K 11
  >>
endobj

112 0 obj
  << /Type /StructElem     % 最初の項目の構造エレメント、リストテキスト (LBody): ("Snow-shoeing")
     /S /LBody
     /P 211 0 R
     /Pg 4 0 R
     /K 12
  >>
endobj

... [ objects 121-122 and 131-132, referencing MCIDs 21-22 and 31-32 are omitted in the interest of space. ]

201 0 obj
  << /Type /StructElem
     /S /Caption            % 導入段落
     /P 400 0 R
     /K [101 0 R]
  >>
endobj

211 0 obj
  << /Type /StructElem
     /S /LI                 % "1. Snow-shoeing" のリスト項目
     /P 400 0 R
     /K [111 0 R 112 0 R]
  >>
endobj

212 0 obj
  << /Type /StructElem
     /S /LI                 % "2. Ice-skating" のリスト項目
     /P 301 0 R
     /K [121 0 R 122 0 R]
  >>
endobj

213 0 obj
  << /Type /StructElem
     /S /LI                 % "3. Skiing" のリスト項目
     /P 301 0 R
     /K [131 0 R 132 0 R]
  >>
endobj

400 0 obj
  << /Type /StructElem
     /S /L                   % リスト階層内の最上位の構造エレメント                
     /K [201 0 R 211 0 R 212 0 R 213 0 R]
  >>
endobj

参考リソース

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

検証

チェックポイント

  1. PDF 文書内のリストについて、次のいずれかの方法で確認する。

    • PDF 文書をスクリーンリーダーで読み上げ、コンテンツが 1 行単位で読み上げられるときにリストが正しく読み上げられる

    • リストを表示できるツールを使用して PDF 文書を開くと、リストを表示してリストが正しく構造化されている

    • タグツリーを検査すると、リストが PDF 仕様に基づいて構造化されている

    • アクセシビリティ API を通じて文書を表示するツールを使用して、リストが正しく構造化されていることを確認する

判定基準

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