2016-08-04 6 views
0

私はpdfにhtmlを印刷したいと思う。プロジェクトでは、テンプレートをレンダリングするためにsymfonyとtwigを使用します。私はブラウザにHTMLを返すとき、それは良い探している。 それは約10ページになるはずです。dompdf - ちょうどpdfの2ページを得る

しかし、私はPDFを作成しようとすると、私はちょうど2ページを取得します。

$html = $this->render('offer/print.html.twig', array('offer' => $Offer)); 

$options = new Options(); 
$options->setIsRemoteEnabled(false); 

// instantiate and use the dompdf class 
$dompdf = new Dompdf($options); 
$dompdf->setPaper('A4'); 

// Render the HTML as PDF 
$dompdf->loadHtml($html); 
$dompdf->render(); 
$dompdf->stream(); 

PHP 7 symfonyの3.0.9 DOMPDF 0.7.0

それはブラウザでHTMLのように見えていません。後でCSSをデバッグする必要があります。 誰でも私にちょうどPDFの2ページを得る理由を教えてもらえますか?

+0

なぜ出力バッファーですか?レンダリング呼び出しがレンダリングされたデータを$ htmlに返す場合、$ htmlをエコーするバッファリングがないので、$出力に取り込むことができます。代わりに '$ output = $ this-> render ...'を使うのはなぜですか? –

+0

@MarcB私もこれを試しました。 と $ dompdf-> loadHtml($ this-> render()); – kristof

+0

適切なHTML出力とCSSがなければ、dompdfは処理するピタになる可能性があります。 CSSで正しいディメンションを設定していることを確認してください – DarkBee

答えて

0

面白いですが、問題はrender()のようです。 代わりにを使用すると、複数のページに出力されます。

render()もHTTPヘッダーを返します。この理由のために、私は第1面のヘッダー情報と第2面のすべての内容でpdfが壊れてしまった。

だけCSSが動作していないが、これは別の問題です:)

0

ファイルを小枝アップロードしてください。私はあなたの問題がCSSの小枝だと思う。

関連する問題