印刷で改ページを指定する(PDF出力対応)

PDF出力時の改ページを指定したかった。
印刷で改ページを指定するのと同じ方法で対処できたのでメモ。


CSSで印刷時の改ページの位置を指定できるようだ。

page-break-before 要素の直前の改ページを制御
page-break-after 要素の直後の改ページを制御

制御方法は次の3種類

auto 制御しない (初期値)
always 直後で改ページさせる
avoid 直後の改ページを禁止


私は、要素の直前で改ページを指定したかったので、CSSに下記のように記載した。

.new_page {
  page-break-before: always;
}

item毎に改ページをしたかったので、itemのタイトルに改ページを指定した。

<h2 class="new_page"><%= item.title %></h2>

heroku上でPDF出力した際に、正しく改ページがされることを確認した。


参考:
スタイルシート[CSS]/ページ全般/印刷時の改ページ部分を指定する - TAG index Webサイト
Rails4 wicked_pdfでPDF出力 ※windows未対応 - ayaketanのプログラミング勉強日記