Разрыв страницы в TCPDF

С персональной предпочтительной точки зрения я предпочитаю < % = %> метод, поскольку я чувствую его, обеспечивает лучшее разделительное содержание переменной от статического содержания.

35
задан lorem monkey 5 September 2012 в 12:12
поделиться

4 ответа

Я использую
.

Метод поиска writeHTML и код

if ($dom[$key]['tag'] AND isset($dom[$key]['attribute']['pagebreak'])) {
    // check for pagebreak
    if (($dom[$key]['attribute']['pagebreak'] == 'true') OR ($dom[$key]['attribute']['pagebreak'] == 'left') OR ($dom[$key]['attribute']['pagebreak'] == 'right')) {
        // add a page (or trig AcceptPageBreak() for multicolumn mode)
        $this->checkPageBreak($this->PageBreakTrigger + 1);
    }
    if ((($dom[$key]['attribute']['pagebreak'] == 'left') AND (((!$this->rtl) AND (($this->page % 2) == 0)) OR (($this->rtl) AND (($this->page % 2) != 0))))
            OR (($dom[$key]['attribute']['pagebreak'] == 'right') AND (((!$this->rtl) AND (($this->page % 2) != 0)) OR (($this->rtl) AND (($this->page % 2) == 0))))) {
        // add a page (or trig AcceptPageBreak() for multicolumn mode)
        $this->checkPageBreak($this->PageBreakTrigger + 1);
    }
}
70
ответ дан 27 November 2019 в 06:28
поделиться

Вы можете использовать метод TCPDF AddPage () в сочетании с explode () и подходящим разделителем:

$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8',
                 false);

// TCPDF initialization code (...)

$delimiter = '<h1>';
$html      = file_get_contents('./test.html');
$chunks    = explode($delimiter, $html);
$cnt       = count($chunks);

for ($i = 0; $i < $cnt; $i++) {
    $pdf->writeHTML($delimiter . $chunks[$i], true, 0, true, 0);

    if ($i < $cnt - 1) {
        $pdf->AddPage();
    }
}

// Reset pointer to the last page
$pdf->lastPage();

// Close and output PDF document
$pdf->Output('test.pdf', 'I');
17
ответ дан 27 November 2019 в 06:28
поделиться

Вы также можете воспользоваться этим методом, чтобы удовлетворить свои потребности:

$htmlcontent1="CERTIFICATE NUMBER 1 IMAGE HERE";

// output the HTML content
$pdf->writeHTML($htmlcontent1, true, 0, true, 0);

// reset pointer to the last page
$pdf->lastPage();

// - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
// Print a table

// add a page
$pdf->AddPage();

$htmlcontent1="CERTIFICATE NUMBER 1 IMAGE HERE";

// output the HTML content
$pdf->writeHTML($htmlcontent1, true, 0, true, 0);
// reset pointer to the last page
$pdf->lastPage();

// ---------------------------------------------------------

//Close and output PDF document
$pdf->Output('textcertificate.pdf', 'D');

Надеюсь, это кому-то поможет :)

Спасибо

0
ответ дан 27 November 2019 в 06:28
поделиться

TCPDF поддерживает атрибут 'pagebreak' для тегов HTML и свойства CSS 'page-break-before' и 'page-break-after'. Например, вы можете использовать
.

Посетите официальный http://www.tcpdf.org веб-сайт и форумы для получения дополнительной информации.

8
ответ дан 27 November 2019 в 06:28
поделиться