むらかみの雑記帳

Android とか iOS とかソフトウェア開発に関するネタ帳

docbook 環境あたりの備忘録

最近、ドキュメント変換環境の整備をしていて、asciidoc やら docbook やら Apache FOP やらをいじっている。昨日はこれで夜更かしをしてしまい、朝の会議に遅刻した。すまぬ。

今日の記事はその備忘録。完全に自分用のメモなので、読んでもおもしろくないぞ。

昔 docbook を使っていたときは、fop のバージョンが 0.20 だったのだが、今は 0.95 にあがっている。なんか、0.20 といろいろ違い、苦労した。

フォントに関しては、フォントメトリクスを作らなくてよくなった。ttf ファイルの場合はそのまま、設定 xml ファイルを書くだけでよい。

ただし、ttc (フォントコレクション)ファイルに関してだけはフォントメトリクスを作らなければならない。これはこのあたりに書いてある。

フリーフォントを使いたいので、さざなみフォントを使うことにした。だけど、イタリックとかゴシックとかがないので、そういう場合は Windows の MSゴシックとかの ttc を使うことになるかな。ライセンス的に微妙だが(埋め込まなきゃいいはず?)

あと、fo から pdf に変換しようとすると namespace がおかしいとかのエラーになる。ここを参考に、fo ファイルを sed で修正して無理矢理通した。たぶん、後述する fop1.extensions オプションの指定があればいいのかもしれないが、まだ試してない。

あと、PDF bookmark がでなくなった。独自拡張の fox:outline ではなく fo:bookmark 要素を使うように変更したためらしい。

docbook xsl のページを見ていたら、Using Fop のところで、fop 0.93以降に食わせたい場合は fo 生成時に --stringparam fop1.extensions 1 というオプションがいるそうな。これをつければいいはず?

ふぅ。疲れた。

しかし、あれだ。こういうマイナー(?)ねたは自分のブログに書いておくと、忘れた頃にグーグル先生に聞くと引っかかってくれたりするので便利である。