CSS では、以下を使用します。
@page { @top-right { content: "Page " counter(page) " of " counter(pages); } }
ページを印刷するときに、すべてのページの上部にページ番号を表示できます。これはうまくいきます。しかし、ページ番号が 1 ではなく 2 で始まるようにするにはどうすればよいでしょうか。上記の CSS ルールを変更することでそれを行うことはできますか?
試す:
@page {
counter-increment: page;
counter-reset: page 1;
@top-right {
content: "Page " counter(page) " of " counter(pages);
}
}
を使用page 1
すると、カウンターの開始点がリセットされます。任意の整数を使用して、カウントを開始できます。デフォルトはです0
。
Flying Saucer (私の場合) を使用している場合は、次の CSS を使用します。
テーブル{ -fs-table-paginate: paginate; }
それは魅力のように機能します。そして空飛ぶ円盤が揺れる:)。本当に強くお勧めします。
カウンターに関するCSSドキュメントを見たことがありますか?ここを参照してくださいあなたはカウンターリセットを呼び出すことができるように私には思えます。デフォルトでは、カウンターは0に設定されています。Bodyタグで「content-reset:page1;」を実行した場合。次に、最初のページを1ではなく2から開始するように強制する必要があります。
Flying Saucer で少し遊んだ後、"page"/"pages" は内部 CSS 変数のように見えるため、CSS でこれを行う方法はないと思います (または非常に複雑な方法です)。おそらくCSS 3で改善されるでしょう.calc()関数があるようです.
しかし、2 ページ目から PDF を取得する別の方法があります。次の行を xhtml ファイルに追加することで、空白の最初のページを PDF に追加できます。
<h1 style="page-break-before:always"></h1>
次に、プリンターを使用してPDFの2〜...ページのみを印刷するか、PDFエディターを使用してPDFから最初のページを削除できます。
これが機能するかどうかはわかりませんが、試してみませんcounter(page+1)
か?