DITA-OTで,PDFのカバーページをカスタマイズする.

何も考えずに DITA-OTで PDFを作ると,Copyrightや作者情報など,カバーページの内容が中途半端になり困る.

XSLTが判る人なら内容が判るような情報はweb上にあることはある*1.が,判らない人にはさっぱり判らないだろう.


例を作った.

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE bookmap PUBLIC "-//OASIS//DTD DITA BookMap//EN"
 "dtd/mapbook.dtd">
<bookmap xml:lang="ja-JP">
<booktitle><mainbooktitle>Example</mainbooktitle></booktitle>
<bookmeta>
<bookrights>
<copyrfirst><year class=" bkinfo/bkcopyrfirst ">2008</year></copyrfirst>
<copyrlast><year class=" bkinfo/bkcopyrlast ">2009</year></copyrlast>
<bookowner><organization class=" bkinfo/orgname ">Monamona Monaka Monamour.</organization></bookowner>
</bookrights></bookmeta>
<frontmatter></frontmatter>
<chapter href="main.dita">
<topicmeta>
<author id="author.monaka">Masaki Muranaka</author>
</topicmeta>
<!-- 後略 -->

要するに,bkinfo/ なクラス属性を与えて,dita2fo-shell.xsl に拾わせる.
author は例外的.dita2fo-shell.xsl は文書中の author エレメント拾いまくって,表紙に一覧する.


Cover art/text の辺りの表示内容は,dita2fo-shell.xsl に埋め込まれており,上記のようなmapファイルからの情報でコントロールできない.

*1:XSLTが判っていても,DITAの"特殊化/一般化"の考え方を心得ていないと,悩むかもしれない