我想知道 TCPDF 是否有一个保持在一起的功能。我有一个 FPDF,但我无法让它在 TCPDF 中工作。
这是我在 PDF 生成代码中看到它的工作方式:
// ... PDF code/stuff
// while not kept together
// add PDF stuff that should be kept together
// .. more PDF code/stuff
我认为如果添加了新页面,该函数将返回 false,回滚然后再次执行 while 循环。
我确实有以下工作,但我宁愿它在 TCPDF 的函数/方法中,所以它更可重用:
$pdf->startTransaction();
$block_page = $pdf->getPage();
$print_block = 2; // max 2 tries
while ($print_block > 0) {
// do PDF stuff
if ($pdf->getPage() == $block_page) {
$print_block = 0;
} else {
// rollback
$pdf = $pdf->rollbackTransaction();
$pdf->AddPage();
$block_page = $pdf->getPage();
-- $print_block;
}
}
如果它不依赖于内置的事务功能也会很酷,因此事务可以在循环中使用,因为诸如 writeHTML() 之类的东西使用事务。