工夫したところ
- JasperReport で生成したものは表としてレイアウトされているので、その表自体を左寄せではなく中心に配置したこと
- →Word の表は、デフォルトの左寄せだと少し余白に線がはみ出すようなので
- →直感的な API は無かった
- 上記の表の各セルは、行間が広すぎるので、行間の設定を行ったこと
- →行間を狭くするだけなら XWPFParagraph#setSpacing* メソッドでできる
- →行の間隔を最小にしても、まだ広すぎる場合、行の間隔を固定値にして指定したいが、XWPFParagraph に CTSpacing#setLine を呼ぶメソッドが無いので、private メソッドを真似した実装になる
- →行の間隔に指定したい pt の値に 20 をかけた値を設定する(経験則)
- 書式を設定した表を雛形ファイルにコピーしたこと
- 表をコピーするのに、表を生成してインデックスを指定してセットする
- 雛形のファイルにある改行を消したこと
- →改行が残るとレイアウトがずれる