2016-04-12 11 views
0

DOMPDFを使用してFor the followingテーブルのPDFファイルを生成しました。しかし、pdfを生成している間は、テーブルの最初の15行しか表示されません。Pdfの生成中にdompdfを壊さずに大きなテーブルを表示する方法

注:私はテーブルpage-break-insideのスタイルを使用しました。あなたの文書に関連して

i have attached the HTML coding of the table in the fiddle. 

https://jsfiddle.net/o4ga8uze/

答えて

0

私が与えることができる主なアドバイスは、ラッパーテーブルを取り除くことです。特定のテーブルセルがページサイズを超えた場合は、かなり厄介なものになるでしょうbug。幸いなことに、ドキュメントのために外側のテーブルは必要ありません。なぜなら、スペースを確保するために実際のコンテンツをラップするからです。これに代えて

<table align="left" cellpadding="0" cellspacing="0" style="margin:5px; page-break-inside: avoid;" width="100%"> 
    <tr> 
    <th class="head">Heading</th> 
    </tr> 
    <tr> 
    <td style="border:1px solid; page-break-inside: avoid;" class="border-top border-left border-right border-bottom"> 
     <!-- invoice table --> 
    </td> 
    </tr> 
</table> 

これを試してみてください:私はあなたのフィドル更新

<div style="margin:5px;"> 
    <div class="head">Heading</div> 
    <div style="border:1px solid;" class="border-top border-left border-right border-bottom"> 
    <!-- invoice table --> 
    </div> 
</div> 

:限りページングからテーブルを防ぐようhttps://jsfiddle.net/o4ga8uze/1/

を... をあなたがドン」すべてのスタイルシートへの実際の参照を含めて、多くの指針を与えるのは難しいです。私が言うことができる最初のことは、あなたのテーブルはページ上にあり(少なくともあなたのサンプルでは)、ページングを必要としないように十分な数の行を持たなければならないということです。

私はあなたのリファレンスBootstrap 2.3.2に気付きましたので、今回はdompdf doesn't work all that well with bootstrapにも注意してください。あなたは、dompdfがページ上のより多くのコンテンツに収まるように十分なDPIを設定しようとするかもしれません。 $dompdf->set_option('dpi', 300);

最後に、page-break-inside: avoid;ドロップ:例えば、v0.7.0で300

  • はDOMPDFをインスタンス化した後にオプションを設定する定数DOMPDF_DPI構成を設定

      v0.6.2において
    • 以前スタイリング。これは特にページサイズを超えるコンテンツ、特にテーブルで問題になります。

  • 関連する問題