2012-01-10 35 views
1

私はtcpdfで正確な位置を取得しようとしています。私は複数の場所でSetMargins()を使用しようとしていますが、私はこのメソッドの使い方を誤解しているに違いありません。 私は期待どおりに動作していないようです。TCPDF SetMarginsメソッド

$pdf->SetFont('helvetica', '', 12); 
$pdf->AddPage(); 
$pdf->SetMargins(10, 10, 10, true); // set the margins 

$html = 'Here is some text'; 

$pdf->writeHTMLCell(0, 0, '', '', $html, 'LRTB', 1, 0, true, 'L', true); 

$pdf->SetMargins(0, 10, 0, true); // put space of 10 on top 

$pdf->writeHTMLCell(0, 0, '', '', $html, 'LRTB', 1, 0, true, 'C', true); 
$pdf->writeHTMLCell(0, 0, '', '', $html, 'LRTB', 1, 0, true, 'R', true);  

$pdf->Output('example_002.pdf', 'I'); 

私は間違いなく、出力を取得していますが、私はそれらの間のスペースのリセットを持っている)(第一及び第二writeHTMLCellを期待しています。

http://www.tcpdf.org/doc/classTCPDF.html#ab3bbdb7c85ea08d175fd559be6132ba0

ドキュメントには、2番目のパラメータは上マージンのためであると言います。

要するに、必要に応じて、各行の余白を混乱させたい。しかし、私はこれに間違った方法を使用している可能性があります。 上記の私の例は、そのパラメータを完全に無視しているようです。しかし、左右のパラメータに問題はないようです。

答えて

1

代わりにSetY()を使用してください。

$pdf->Ln() 
$pdf->Ln(15.5) 

を二列の間に垂直方向のスペースを追加する:これは、あなたが簡単に使用できるページ

+0

この関数の使用場所、どのパラメータが受け入れられるか、例へのリンクはありますか?またはそのドキュメントへのリンク? –

+0

これは正しい答えです!ありがとう。これは、ゼロの上マージンを設定するために使用したコードです: '$ pdf-> SetY(0、true、true);' – user1477388

1

の上からカーソル位置を設定します。

通常、余白はPDFドキュメントを開始するときに一度だけ設定します。 水平/垂直座標を制御するために余白を使用しないでください。

5

TCPDF SetMargins方法は次のとおりです。

SetMargins($left,$top,$right = -1,$keepmargins = false) 

ですから、以下のようなAddPage();メソッドの前にそれを使用することができます:真のデフォルトのページ余白を上書きする場合

$pdf->SetMargins(10, 20, 10, true); 
$pdf->AddPage(); 
//your HTML code here ... 

$keepmargins(boolean)