長いレポートを生成する Web アプリケーションがあり、それを印刷する必要があります。ページを印刷すると、物理ページの最後で壊れます。印刷時に改ページが物理ページと整列するように、Web ページのどこで改ページを作成するかを計算するにはどうすればよいですか?
5 に答える
選択した注文の請求書を印刷するシステムがあります。
<br style="page-break-before:always;">
各請求書の間。これは、各請求書が新しいページに移動することを意味します。
また、印刷用スタイルシートを使用することもお勧めします
<link rel="stylesheet" href="print.css" type="text/css" media="print" />
ページの関連領域を非表示/表示できます。誰かが実際のページ コンテンツを必要としているときに、leftnav リンクなどを印刷しても意味がありません。
私は通常、Web ページ (HTML) をまとめて印刷することを避けています。フォーマットされた印刷が必要な場合は、顧客が希望する方法で印刷できるように、PDF または CSV/スプレッドシート形式を生成します。
私は通常、グローバルで使用するために印刷物を生成します。つまり、すべての種類の設定 (たとえば、用紙サイズ: リーガル、レター、A4 など) は職場ごとに異なります。どこでも審美的な出力を保証するには、あまりにも大きな作業であることがわかりました.
改ページの位置を確認するための css プロパティがあります。要素に規則page-break-before: always
または page-break-after: always` を指定して、区切りが要素の前か後かを示すことができます。これはブラウザー間でのサポートがかなり貧弱であり、私はそれに依存しません。詳細については、 http://www.w3schools.com/CSS/pr_print_pageba.aspを参照してください。
いずれかのCSSでpage-break-before/after
他の方法:
- JasperReportsを使用して、html ページではなくレポートにデータをロードする
- XSL でApache FOPを使用して、HTML (または生データ) を FOP に変換し、後で PDF に変換します。
どちらの方法も非常に広範囲にわたるため、労力をかけたくない場合は、別の回答に直接スキップしてください....