【问题标题】:TCPDF - setPage and add content with respect to existing contentTCPDF - setPage 并添加关于现有内容的内容
【发布时间】:2015-10-14 10:18:01
【问题描述】:

在我的 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, '');

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

有没有办法跳转到现有页面并附加一些内容?

【问题讨论】:

  • 你可以使用move($fromPage,$toPage);方法。

标签: php pdf tcpdf


【解决方案1】:

嗯,知道了。 您可以获取/设置当前页面的 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 没有在代码完成中显示这些方法,所以我已经监督了它们......

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-15
    • 1970-01-01
    相关资源
    最近更新 更多