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

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

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

適用 (対象)

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

これは達成基準 1.3.1: 情報及び関係性 (書かれていない達成方法を満たす手段として十分) に関する達成方法である。

解説

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

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

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

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

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

事例

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

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

訳注:

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

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

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

図 1 正しく書式設定された、番号付きでない、及び番号付きのリスト、並びに 3 番目のセクションではリストのように見えるテキストだが Microsoft Word のリスト書式設定ツールが使用されていないもの、を示すスクリーンショット。

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

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

訳注:

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

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

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

図 2 正しく書式設定された、番号付きでない、及び番号付きのリスト、並びに 3 番目のセクションではリストのように見えるテキストだが OpenOffice.org Writer のリスト書式設定ツールが使用されていないもの、を示すスクリーンショット。

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

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

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

訳注:

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

  1. 表示 > ナビゲーションパネル... > タグ
  2. 文書内のリストを検査して、書式設定に誤りがないかどうかを確認する。

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

図 3 タグパネルで、リストタグの下にネストされたリストではなく、本文タグの下にテキストという誤った書式で表示されている。

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

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

図 4 タグパネルで、最初のリスト項目がリストタグの下に正しくネストされて表示されている。

この事例のサンプルとして、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                 % Structure element for intro paragraph to list ("The most popular sports are:")
  << /Type /StructElem
     /S /P
     /P 201 0 R
     /Pg 4 0 R
     /K 1
  >>
endobj

111 0 obj                  % Structure element for first item, list label (Lbl): "1."
  << /Type /StructElem
     /S /Lbl
     /P 211 0 R
     /Pg 4 0 R
     /K 11
  >>
endobj

112 0 obj
  << /Type /StructElem     % Structure element for first item, list text (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            % Intro paragraph
     /P 400 0 R
     /K [101 0 R]
  >>
endobj

211 0 obj
  << /Type /StructElem
     /S /LI                 % List item for "1. Snow-shoeing"
     /P 400 0 R
     /K [111 0 R 112 0 R]
  >>
endobj

212 0 obj
  << /Type /StructElem
     /S /LI                 % List item for "2. Ice-skating"
     /P 301 0 R
     /K [121 0 R 122 0 R]
  >>
endobj

213 0 obj
  << /Type /StructElem
     /S /LI                 % List item for "3. Skiing"
     /P 301 0 R
     /K [131 0 R 132 0 R]
  >>
endobj

400 0 obj
  << /Type /StructElem
     /S /L                   % Top-level structure element in the list hierarchy                
     /K [201 0 R 211 0 R 212 0 R 213 0 R]
  >>
endobj

参考リソース

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

検証

手順

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

    • PDF 文書をスクリーンリーダーで読み上げ、コンテンツが 1 行単位で読み上げられるときにリストが正しく読み上げられる。
    • リストを表示できるツールを使用して PDF 文書を開くと、リストを表示してリストが正しく構造化されている。
    • タグツリーを検査すると、リストが PDF 仕様に基づいて構造化されている。
    • アクセシビリティ API を通じて文書を表示するツールを使用して、リストが正しく構造化されていることを確認する。

期待される結果

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