TCPDF缩进第一行输出

时间:2017-03-14 19:44:04

标签: tcpdf

这是我的代码:

<?php
require '../../vendor/tecnickcom/tcpdf/tcpdf.php';

// create new PDF document
$pdf = new TCPDF('L', 'in', [6,4]);
#$pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);
#$pdf->setFontSubsetting(true);
$pdf->SetPrintHeader(false);
$pdf->SetPrintFooter(false);
$pdf->SetFont('helvetica', '', 14);

$pdf->AddPage();
$pdf->SetXY(0.5, 0.2);
$pdf->Write(0, "Hello\nworld");
$pdf->Output('Postcards-'.date('Y-m-d').'.pdf', 'I');

这是输出(忽略边框)

enter image description here

如果我输入几行,只有第一行缩进。为什么?我该怎么做呢?

1 个答案:

答案 0 :(得分:1)

首先,我会考虑使用MultiCell()函数将数据写入到您可能需要的固定位置。它处理了所有这些低级函数Write()没有的问题。以下行就像一个魅力:

$pdf->MultiCell(0, 0, "Hello\nworld");

如果你真的需要使用Write(),那么实际问题就在上面一行

$pdf->SetXY(0.5, 0.2);

评论说再次使它再次运作。为了理解那里发生了什么,新行将光标返回到由页面区域和边距定义的行**的开头,而不是光标的前一个位置。

使用Cells()时,您可以更好地控制此问题。您可以注意到它可以接受值$ln0的{​​{1}}参数,其中值2将光标定位在框下方,而不管区域/边距。