web-dev-qa-db-fra.com

Modification ou élimination de l'en-tête et du pied de page dans TCPDF

AddPage() dans tcpdf appelle automatiquement l’en-tête et le pied de page. Comment puis-je éliminer/remplacer ceci?

35
ChuckO

Utilisez les méthodes SetPrintHeader(false) et SetPrintFooter(false) avant d'appeler AddPage(). Comme ça:

$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, 'LETTER', true, 'UTF-8', false);
$pdf->SetPrintHeader(false);
$pdf->SetPrintFooter(false);
$pdf->AddPage();
70
Brian Showalter

Un moyen simple et agréable de contrôler quand afficher l'en-tête - ou des bits de l'en-tête - consiste à étendre la classe TCPDF et à créer votre propre fonction d'en-tête, comme suit: 

  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, '');
        }
    }

Naturellement, vous pouvez également utiliser cette option pour ne renvoyer aucun contenu, si vous préférez ne pas avoir d'en-tête du tout.

11
Lukey

Voici un autre moyen de supprimer l'en-tête et le pied de page:

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

$pdf = new PDF();
2
zeddex

Comment puis-je éliminer/remplacer ceci?

De même, L’exemple 3 de la documentation TCPDF montre comment remplacer l’en-tête et le pied de page par votre propre classe.

1
Nathan

Exemple:
- Première page, pas de pied de page
- Deuxième page, a le pied de page, commence par la page n ° 1

Structure:

    // 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();
0
Nik
// 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));

À l’aide des fonctions ci-dessus, vous pouvez modifier l’en-tête et le pied de page.

0
Kracekumar