6

ユーザーが送信したHTML/CSSからPDFを生成しています。クライアントは、ブランドを追加するためにPDFに背景画像を含めるように要求しました。PDFライブラリはwkhtmltopdf11RC1です。

PDF変換ライブラリを使用して画像を背景に印刷することはできますが、実際の問題は、本体の高さが用紙の高さの倍数になるとは限らないため、通常、最後のページが切り取られて背景画像が表示されることです。表示されていません。

PDFライブラリはjavascriptをサポートしていますが、element.offsetHeight正確ではないようです。そのため、ページ全体を作成するために本文をどれだけ埋めるかを確認できません。

誰かが同じような経験をしたことがありますか、それとも誰かが素晴らしいアイデアを持っていますか?

4

2 に答える 2

1

残念ながらvar currentBodyHeight = $('body').height();、元の投稿で述べたように、何らかの理由で体の高さを正確に示すことはできません。Nenotlepが提案したPDFtkを使用しました。

それほどトリッキーではありませんでした。ファイルが適切に保存および消去されていることを確認する必要があり、私は常に一時ファイルへの参照を保持していました。

于 2012-10-08T08:45:47.970 に答える
0

プラグインが印刷の決定を行うために本体の高さに依存している場合、おそらくこれは機能します。本文の高さをページの高さの倍数に設定します。用紙の高さを把握する必要があります。標準は1インチあたり72ピクセルです。したがって、11.5インチは841ピクセルのようなものですが、マージンを調整する必要がある場合があります。

var paperHeight = 841;

var currentDocHeight = $(document).height();

var pages = Math.ceil(currentDocHeight / paperHeight);

var newBodyHeight = pages * paperHeight;

$('body').css('height', newBodyHeight);

私は答えを要約するためにjQueryを使用しましたが、これはすべてjQueryなしのjavascriptでも実行できます。

CSS:

body {
  margin:0
}
于 2012-10-06T17:37:34.123 に答える