ど素人から毛を生やす。<延>

wkhtmltopdf で下に余白ができた話。

Web > Other 2020年3月12日(最終更新:4年前)

2020年3月12日に作成されたページです。
情報が古かったり、僕が今以上のど素人だった頃の記事だったりする可能性があります。

どもです。

wkhtmltopdf を使用した既存のPDF出力サービスの改修。
これまでA5横で出力していた2種類のPDFを、A4縦の1枚にまとめてPDFする機能の追加です。

下にかなりの余白ができている…

原因を調査したところ、なんと元の書類の横幅指定が間違っていました。
A5横なので210mmとしなければならないところを、220mmに設定していたのです。

210mmに修正した結果がこちら。

右と下に余白ができましたが、先ほどより下の余白が減少しています。

どうやら smart-shrinking を無理やり無視しようとして、横幅の設定を大きくしていたようですね。
しかしそうすると、縮小機能が狂って下の余白が大きくなってしまった模様。A5サイズのときこそ結果的なPDFは良い感じになっていたのですが、 wkhtmltopdf の自動調整でできる余白はPDFが大きくなるほど如実に影響が出ます。

というわけで改めて --disable-smart-shrinking を設定! 自動余白機能を解除します!

しかしどうしたことか、自動余白が無くなってくれない。

実は、無理やり幅を広げていたのを直したことで、要素が1つ右にはみ出てしまっていたんですね。
どうやら wkhtmltopdf は、横に要素がはみ出ている分には smart-shrinking の設定と無関係に、勝手にページを縮めて中に収めてしまうようです。

というわけではみ出ていた要素を修正。
これで漸く下の余白が消えてくれました。やったぜ。

この記事は役に立ちましたか?
  • _(:3」∠)_ 面白かった (0)
  • (・∀・) 参考になった (1)
  • (`・ω・´) 役に立った (1)