概要

固定レイアウトのEPUB出版物を作成する非公式な方法として、パッケージドキュメントのspineに画像(SVGを除く)を直接組み込む方法があります。ただし、フォールバックなしではspineに画像を組み込めないため、一般的にはこの方法で固定レイアウトページを作成することはありません。ほとんどの場合、XHTMLまたはSVGの固定レイアウトページに画像を埋め込む方がシンプルです。

spineに画像を使用すると、固定レイアウトのメタデータは設定されず、バリデーションエラーが発生します(例えば、必要とされる寸法はXHTMLとSVGでのみ規定できます)。リーディングシステムが出版物をレンダリングしない原因となる場合もあるでしょう。

関連する問題として、この方法では固定レイアウトのメタデータを指定できないため、ページの表示をほとんど制御できません。また、アクセシビリティの問題も深刻です。

製作

spine内に画像を配置することは、spine内にXHTMLまたはSVGドキュメントを配置することと変わりません。manifest内で画像が宣言されている場所を参照するには、 itemref要素を使用します。

<package …>
   …
   <manifest>
      <item id="pg01" src="pg01.jpg" media-type="image/jpeg"/>
      …
   </manifest>
   <spine>
      <itemref ref="pg01"/>
      …
   </spine>
</package>

ただし、前述の例をEPUBCheckで検証すると、spineでJPEGがサポートされていないため、エラーが発生します。

出版物のエラーをなくすには、manifestエントリでXHTMLまたはSVGドキュメントへのフォールバックを指定しなければなりません。

<manifest>
   <item id="pg01" src="pg01.jpg" media-type="image/jpeg" <strong>fallback="pg01-fb"</strong>/>
   <item id="pg01-fb" src="pg01.xhtml" media-type="application/xhtml+xml"/>
   …
</manifest>

リーディングシステムがspineの画像をサポートしていない場合には、これで代わりにフォールバックのXHTMLページをレンダリングできるようになります。

アクセシビリティ

spineの画像は、固定レイアウトを作成する方法としては最もアクセシブルでないものです。

画像の代替テキストや拡張説明は、フォールバックを通じて提供しない限り、提供できません。そのため、リーディングシステムが画像のレンダリングをサポートしている場合、ユーザーが代替テキストにアクセスする方法はありません(つまり、ユーザーには通常、フォールバックを表示するオプションは提供されず、リーディングシステムが自動的に何を表示するか選択します)。結果として、支援技術のユーザーが出版物を読むときに何も読み上げられません。

また、ユーザーが代替手段にアクセスできるという保証がなければ、代替手段がWCAGに準拠しているとしても、WCAGに準拠していると主張することはできません

固定レイアウトページごとにバックアップを作成するコストを回避するために、出版物がリーディングシステムでサポートされていないことを伝える一つのフォールバックドキュメントを使用する場合があります。この方法は、基本的に、テキスト代替を提供しないのと同じくらい読者にとって役に立ちません。

同様に、固定レイアウトページとコンテンツのテキストシリアライズの間に一対一の相関関係がない場合があります。この場合、読者を混乱させることなく各ページにフォールバックを設定することはできません (たとえば、一連のページが同じテキストシリアライズにフォールバックする場合、リーディングシステムはページをめくるたびに同じテキストをレンダリングし続けてしまいます)。

マルチレンディションの使用は、代替シリアライズの必要性の解決を意図していましたが、仕様に対するサポートは事実上ありません。

以上の理由により、常にXHTMLあるいはSVGによる固定レイアウトページを推奨します。

関連リンク