2016-05-30 22 views
0

動的に変化するテーブルがあります。したがって、テーブルは複数のページに配置できます。マージンを持つ複数ページのTCPDFテーブル

行を壊さずにページを正常に変更できましたが、ドキュメントのヘッダーに関する問題があります。テーブルは2ページ目に続きますが、ドキュメントのロゴに設定されている余白を無視して先頭から始めます。 sourceforge.net/projects/tcpdfとtcpdf_config.phpファイル:私はTCPDFライブラリを使用して2016年6月1日

はここ

$html = '<br/> 
     <table cellpadding="1" cellspacing="2" cellpadding="5" border="0" style="text-align:center;"> 
      <thead> 
       <tr> 
        <th colspan="4" style="border-left:0.5px solid #1d2e5c; border-bottom:0.5px solid #1d2e5c; border-right:0.5px solid #1d2e5c;" bgcolor="#1d2e5c"><font color="#ffffff">&Eacute;QUIPEMENTS ET LOGICIELS</font></th> 
       </tr> 
       <tr> 
        <th style="width:10%; border-left:0.5px solid #1d2e5c; border-bottom:0.5px solid #1d2e5c;">Qt&eacute;</th> 
        <th style="width:50%; border-left:0.5px solid #1d2e5c; border-bottom:0.5px solid #1d2e5c;">Description</th> 
        <th style="width:20%; border-left:0.5px solid #1d2e5c; border-bottom:0.5px solid #1d2e5c;">Prix</th> 
        <th style="width:20%; border-left:0.5px solid #1d2e5c; border-bottom:0.5px solid #1d2e5c; border-right:0.5px solid #1d2e5c;">Total</th> 
       </tr> 
      </thead>'; 

foreach($equipements as $row) { 
    $quant = $row['Qte']; 
    $priceUnit = (ISSET($row['AutrePrix']) && $row['AutrePrix'] != 0) ? $row['AutrePrix'] : $row['Prix']; 
    $totalEquip = $quant * $priceUnit; 
    $totalAllEquip += $totalEquip; 
    $html .= '<tr nobr="true"> 
       <td style="width:10%; border-left:0.5px solid #1d2e5c; border-bottom:0.5px solid #1d2e5c;">' . $quant . '</td> 
       <td style="width:50%; border-left:0.5px solid #1d2e5c; border-bottom:0.5px solid #1d2e5c; text-align: left;">' . $row['Nom'] . '</td> 
       <td style="width:20%; border-left:0.5px solid #1d2e5c; border-bottom:0.5px solid #1d2e5c; text-align: right;">' . number_format($priceUnit, 2, '.', ' ') . '<font size="-2"> $</font></td> 
       <td style="width:20%; border-left:0.5px solid #1d2e5c; border-bottom:0.5px solid #1d2e5c; border-right:0.5px solid #1d2e5c; text-align: right;">' . number_format($totalEquip, 2, '.', ' ') . '<font size="-2"> $</font></td> 
       </tr>'; 
} 
$html .= '<tr> 
      <td colspan="3"></td> 
      <td style="width:20%; border-left:0.5px solid #1d2e5c; border-bottom:0.5px solid #1d2e5c; border-right:0.5px solid #1d2e5c; text-align: right;" bgcolor="#1d2e5c"><font color="#ffffff">' . number_format($totalAllEquip, 2, '.', ' ') . '</font><font color="#ffffff" size="-2"> $</font></td> 
      </tr> 
     </table>'; 

$pdf->writeHTML($html, true, false, false, false, ''); 

EDIT私のコードです。私は、ヘッダデータを設定するために使用するコマンドは次のとおりです。

$pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE, PDF_HEADER_STRING, array(0,64,255), array(0,64,128)); 
+0

?コードがより良い解決に役立つかもしれません –

+0

私はtcpdfライブラリを使います:https://sourceforge.net/projects/tcpdf/とtcpdf_config.phpファイル。ヘッダデータを設定するコマンドは次の通りです:$ pdf-> SetHeaderData(PDF_HEADER_LOGO、PDF_HEADER_LOGO_WIDTH、PDF_HEADER_TITLE、PDF_HEADER_STRING、配列(0,64,255)、配列(0,64,128)); – sincos

+0

'$ pdf-> SetMargins(PDF_MARGIN_LEFT、PDF_MARGIN_TOP、PDF_MARGIN_RIGHT)を既に追加していますか? $ pdf-> SetHeaderMargin(PDF_MARGIN_HEADER); '? –

答えて

0

私が設定したすべての設定がうまくいきませんでした(例:http://www.tcpdf.org/examples/example_048.phps - http://www.tcpdf.org/examples/example_048.pdf)ページの行の最大数を表すカウンタを設定してから、新しいページを追加した後、別のページに続けました。あなたは、ヘッダー、余白とロゴを設定するのですか私が見つけた最も簡単な方法(私は解決策を見つけるために急いでした)

0

あなたがhttp://www.tcpdf.org/examples/example_048.phps を見て、その結果の一例でを取ることができ、たとえば、ページの余白や自動ページ改

// set margins 
$pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT); 
$pdf->SetHeaderMargin(PDF_MARGIN_HEADER); 

// set auto page breaks 
$pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM); 

を設定していることを確認しますhttp://www.tcpdf.org/examples/example_048.pdf

+0

ありがとう。はい、私はこの例を使って私のページを作りました。だから、私はすでにこれらのコード行を持っており、動作しません。私がやったことは、最大行数を設定してからページを追加し、他のページに進むことです。 – sincos

+0

これはあなたがすでにあなたの問題を解決したということですか? –

関連する問題