TCPDF - setPage 并根据现有内容添加内容

TCPDF - setPage and add content with respect to existing content

在我的 PDF 中,我需要创建一个封面。 如果可以创建封面,添加更多页面并在添加其他页面的同时返回封面并添加更多内容,那将非常方便。

以下效果很好(示例 1):

$pdf->AddPage();
$pdf->writeHTML('<h1>COVER PAGE HERE!</h1>', true, false, false, false, '');
$pdf->writeHTML('<h2>Some more content for cover page!</h2>', true, false, false, false, '');

这会生成呈现良好的封面。

以下未按预期工作(示例 2):

// Add Cover page
$pdf->AddPage();
$pdf->writeHTML('<h1>COVER PAGE HERE!</h1>', true, false, false, false, '');

// Add some content page(s)
$pdf->AddPage();
$pdf->writeHTML('<p>Content page...</p>', true, false, false, false, '');

// Go back to cover page and add more content...
$pdf->setPage(1);
$pdf->writeHTML('<h2>Some more content for cover page!</h2>', true, false, false, false, '');

封面上的两行确实重叠(或者至少它们的位置不如示例 1)。

有什么方法可以跳转到现有页面并追加一些内容吗?

嗯,知道了。 您可以 get/set 当前页面的 Y 轴位置。

以下作品:

// Add Cover page
$pdf->AddPage();
$pdf->writeHTML('<h1>COVER PAGE HERE!</h1>', true, false, false, false, '');
$start_y = $pdf->GetY();

// Add some content page(s)
$pdf->AddPage();
$pageNo = $pdf->getPage();
$pdf->writeHTML('<p>Content page...</p>', true, false, false, false, '');

// Go to cover page and add more content...
$pdf->setPage(1);
$pdf->setY($start_y);
$pdf->writeHTML('<h2>Some more content for cover page!</h2>', true, false, false, false, '');

// Go back to current page
$pdf->setPage($pageNo);

出于某种原因,PHPStorm 没有在代码完成中显示这些方法,所以我监督了它们...