別にAcrobatがなくてもPDFタグが見れることに気づいたので、ウェブアクセシビリティ導入ハンドブックをもうちょっと覗いてみた。

(メモ)「ウェブアクセシビリティ導入ガイドブック」は自身がアクセシビリティ規格を満たしているわけではないの続き?ですたぶん。

で、タイトルの件ですが、AcrobatがないとPDFタグを見れない…と思ってた時期が私にもありました。

「PDF-XChange Editor」軽快で多機能なPDFビューワー - 窓の杜

まさか、窓の杜に置かれているソフトにあったとは…。窓の杜曰くビューワーですけども、ソフトウェア名のEditorのほうが実態に近しいと思います。口でいうよりかは見たほうが早いでしょう、ということではいドーン。

PDF-XChande Editorのスクリーンショット
ウェブアクセシビリティ導入ハンドブック(2024年3月29日発行版)をPDF-XChande Editorで閲覧している様子。読み上げ順序を表示させつつ、PDFタグやプロパティも見ることができる。Adobe Acrobatと何ら遜色がないといえよう。

もちろん、自動のアクセシビリティチェックも行えます。

PDF-XChande Editorのスクリーンショット
自動アクセシビリティチェックのダイアログと、チェック結果を表示している様子。悲しいかなアクセシビリティチェックに失敗しているという…。

さておき、せっかくなのでハンドブックの中身をもうちょっと覗いてみましょう。先ほどのスクリーンショットのページ(ノンブルPage 9)に戻って、まず、このページの最初のタグに注目してみましょう。

<L>
  <LI>
    <Lbl>
      <P>
        Text: "●目が見えなくても情報が伝わる・操作できること"

どうやらリストとしてタグ付けされていますが、リストエレメント(List Elements)については、PDF 1.7規格の14.8.4.3.3 List Elementsに記されています*1。Table 336 - Standard strucure types for list elementsには、次の4つが示されています。(ざっくりと抜き出してみましょう)

  • L
    • (List) [...] Its immdiate children should be an optional caption [...] followed by one or more list items (structure type LI).
  • LI
    • (List item) [...] Its children may be one or more labels, listbodies, or both (structure type Lbl or LBody).
  • Lbl
    • (Label) A name or number that distinguishes a given item from others in the same list or other group of like items.
  • LBody
    • (List body) The descriptive content pf a list items. [...]

とまあこんな感じで、PDF 1.7規格ではLエレメントの子にLIエレメントを1つ以上持つべきである(should)としか書かれてないわけですね、すごい。なお、WCAG 2.1達成方法集PDF21: PDF 文書内のリストにリストタグを使用するにも似たようなことしか書いていません。

  • L - リストタグ (一つ以上の LI タグを含む)
  • LI - リスト項目タグ。リスト項目タグには、Lbl タグと LBody タグを含めることができる
  • Lbl - リスト項目ラベル。項目番号や行頭文字などの識別情報を含む
  • LBody - リスト項目本体。リスト項目コンテンツを含む。ネストされたリストの場合には、追加のリストタグツリーを含むことがある

自動アクセシビリティチェックで、Lエレメントの子にLIエレメントがないとエラーとして返すわけですから、おそらくISO 14289-1:2014 (PDF/UA-1)規格でshouldではなくshall扱いにしていると思われるものの、あいにくと自分の目で確かめてはいません。

ただし、セマンティックにリスト構造を扱うのであれば、たとえば次のようになっている必要があるでしょう。

<L>
  <LI>
    <Lbl>
      Text: "●"
    <LBody>
      Text: "目が見えなくても情報が伝わる・操作できること"

PDF associationが発行しているTagged PDF Best Practice Guide: Syntax4.2.5 <L> (List), <LI> (List Item), <LBody> (List Body)でもそのように記述されています。WCAG 2の観点では、達成基準1.3.1の問題としてよい…のかもしれません。

続いて、ページ中ほどのおなじみの次の文ですが、これは明らかに英語です。

The power of the Web is in its universality. Access by everyone regardless of disability is an essential aspect.

が、英語として設定されていません。

PDF-XChande Editorのスクリーンショット
英語テキストのタグのプロパティ。言語は「既定」とされており、英語にはなっていない。

PDF 1.7規格14.9.2 Natural Language SpecificationPDF19: PDF 文書内で Lang エントリを使用して節や句の言語を指定する、ベストプラクティスの5.5.1 Langにいろいろとあります。WCAG 2の観点では、達成基準3.1.2の問題としてよい…と思われます。

まとめ?

とまあ、こんな感じでPDFを無料のソフトで詳細に調べることができます。デジタル庁におかれましては、正面切ってPDFを改修するという泥沼*2よりもむしろ、後日公開予定としているHTML版をさったと公開してしまったほうがよいのではないか、と思ったり思わなかったりするところです。

*1:PDFの規格は無料で閲覧することができます。現在はAcrobat SDKから、ISO 32000-1:2008(PDF 1.7)のコピーを入手できます。

*2:かける労力の割には、スクリーンリーダーのアクセシビリティが向上するわけではないと思われ…