Изменение или удаление верхнего и нижнего колонтитула в TCPDF - PullRequest
36 голосов
/ 07 февраля 2010

AddPage() в tcpdf автоматически вызывает верхний и нижний колонтитулы. Как мне устранить / переопределить это?

Ответы [ 6 ]

72 голосов
/ 07 февраля 2010

Используйте методы SetPrintHeader(false) и SetPrintFooter(false) перед вызовом AddPage(). Как это:

$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, 'LETTER', true, 'UTF-8', false);
$pdf->SetPrintHeader(false);
$pdf->SetPrintFooter(false);
$pdf->AddPage();
11 голосов
/ 18 сентября 2012

Хороший простой способ контролировать, когда показывать заголовок или биты заголовка, - это расширить класс TCPDF и создать собственную функцию заголовка, например:

  class YourPDF extends TCPDF {
        public function Header() {
            if (count($this->pages) === 1) { // Do this only on the first page
                $html .= '<p>Your header here</p>';
            }

            $this->writeHTML($html, true, false, false, false, '');
        }
    }

Естественно, вы можете использовать это, чтобы также не возвращать контент, если вы предпочитаете вообще не иметь заголовка.

2 голосов
/ 19 июля 2012

Вот альтернативный способ удаления верхнего и нижнего колонтитула:

// Remove the default header and footer
class PDF extends TCPDF { 
    public function Header() { 
    // No Header 
    } 
    public function Footer() { 
    // No Footer 
    } 
} 

$pdf = new PDF();
1 голос
/ 06 мая 2011

Как мне устранить / переопределить это?

Кроме того, Пример 3 в документации по TCPDF показывает, как переопределить верхний и нижний колонтитулы с помощью собственного класса.

1 голос
/ 15 октября 2010
// set default header data
$pdf->SetHeaderData('', PDF_HEADER_LOGO_WIDTH, 'marks', 'header string');

// set header and footer fonts
$pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN));
$pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA));

С помощью вышеуказанных функций вы можете изменить верхний и нижний колонтитулы.

0 голосов
/ 11 декабря 2018

Пример:
- Первая страница без нижнего колонтитула
- Вторая страница, имеет нижний колонтитул, начните со страницы № 1

Состав:

    // First page
    $pdf->startPageGroup();
    $pdf->setPrintFooter(false);

    $pdf->addPage();
    // ... add page content here
    $pdf->endPage();

    // Second page
    $pdf->startPageGroup();
    $pdf->setPrintFooter(true);

    $pdf->addPage();
    // ... add page content here
    $pdf->endPage();
...