BoostBook with FOP

BoostBookでPDF作成に挑戦していたんですが、今日ようやく動きました。
ちなみに、動かなかった理由はBoostBookの書式が間違っていただけでした。
今日の成果物
以下、設定メモ。
まず、日本語フォントを用意。

set Path=C:\Program Files\Java\jdk1.5.0_06\bin;%Path%
cd C:\tools\fop\conf

java -cp ..\build\fop.jar org.apache.fop.fonts.apps.TTFReader -ttcname "MS PGothic" C:\WINDOWS\Fonts\MSGOTHIC.TTC mspgothic.xml

java -cp ..\build\fop.jar org.apache.fop.fonts.apps.TTFReader -ttcname "MS Gothic" C:\WINDOWS\Fonts\MSGOTHIC.TTC msgothic.xml

これを設定ファイルに書きます。ここではjp-userconfig.xmlとしました。

<configuration>
<fonts>
  <font metrics-file="C:\tools\fop\conf\mspgothic.xml" embed-file="C:\WINDOWS\Fonts\MSGOTHIC.TTC" kerning="yes">
    <font-triplet name="MS-PGothic" style="normal" weight="normal"/>
    <font-triplet name="MS-PGothic" style="normal" weight="bold"/>
    <font-triplet name="MS-PGothic" style="italic" weight="normal"/>
    <font-triplet name="MS-PGothic" style="italic" weight="bold"/>
  </font>
  <font metrics-file="C:\tools\fop\conf\msgothic.xml" embed-file="C:\WINDOWS\Fonts\MSGOTHIC.TTC" kerning="yes">
    <font-triplet name="MS-Gothic" style="normal" weight="normal"/>
    <font-triplet name="MS-Gothic" style="normal" weight="bold"/>
    <font-triplet name="MS-Gothic" style="italic" weight="normal"/>
    <font-triplet name="MS-Gothic" style="italic" weight="bold"/>
  </font>
</fonts>
</configuration>

fop.batをjp-fop.batにコピーして、jp-userconfig.xmlを使うように修正。

java -cp "%LOCALCLASSPATH%" org.apache.fop.apps.Fop -c C:\tools\fop\conf\jp-userconfig.xml %1 %2 %3 %4 %5 %6 %7 %8

最後にuser-config.jamにFOPとJavaの設定を追加。

using fop
  : C:\\tools\\fop\\jp-fop.bat
  : "\"C:\\Program Files\\Java\\jdk1.5.0_06\""
  ;

で、ようやく本題。Jamfile.v2に以下の設定を追加。

    <xsl:param>draft.mode=no
    <xsl:param>body.font.family=MS-PGothic
    <xsl:param>dingbat.font.family=MS-PGothic
    <xsl:param>sans.font.family=MS-PGothic
    <xsl:param>title.font.family=MS-PGothic
    <xsl:param>monospace.font.family=MS-Gothic
    <xsl:param>l10n.gentext.language=ja
    <xsl:param>hyphenate=false

フォントと言語を変更して、hyphenateをオフにします。hyphenateをオフにしないと、論理行の途中で改行が入らないので、はみ出した部分が表示されません。(やってみると分かります)
あとは、docディレクトリで

bjam pdf

とすれば、一部表示が変ですが、一応日本語のPDFができます。
この方法だとフォントが埋め込まれてしまうので、個人利用に留めておくのがよいでしょう。