2011-12-15 8 views
5

Chcę umieścić sekcję stopki na każdej stronie mojego dokumentu z wyjątkiem pierwszej.TCPDF - Uwzględnianie stopki/nagłówka tylko na niektórych stronach

Utworzono niestandardową stopkę, rozszerzając klasę TCPDF i zastępując jej metodę stopki.

Następnie na podstawie dokumentacji i korzystając z poniższego przykładu Rozumiem należy używać SetPrintHeader i SetPrintFooter metody:

http://www.tcpdf.org/examples/example_002.phps

// Page one 

$pdf->SetPrintHeader(false); 
$pdf->SetPrintFooter(false);  
$pdf->AddPage(); 

// Page two and on .. 

$pdf->SetPrintHeader(true); 
$pdf->SetPrintFooter(true);  
$pdf->AddPage(); 

Jednakże powyższe nie wyklucza stopkę/nagłówek przed wydrukowane na wszystko!

Co ja tu robię źle?

Dzięki za milion !!

Odpowiedz

8

myślę że

$pdf->setPrintHeader(false); 
$pdf->setPrintFooter(false); 

drukuje lub ukrywa nagłówek i stopkę na całym świecie, więc jeśli robisz

$pdf->SetPrintHeader(false); 
$pdf->SetPrintFooter(false);  
$pdf->AddPage(); 

// Page two and on .. 

$pdf->SetPrintHeader(true); 
$pdf->SetPrintFooter(true); 

Jesteś po prostu mówienie TCPDF wydrukować nagłówek i stopkę (ostatnie dwie instrukcje) .

Co należy zrobić, jest w funkcję nagłówka i stopki, rzeczy drukowania warunkowo na podstawie strony jesteś w. Coś jak (nie testowane, nie mam mojego PHP IDE teraz)

function Header(){ 
    $pageN = PageNo(); 
    if($pageN % 2 === 0){ 
     //if page is 2/4/6... don't print anything 
     return; 
    }else{ 
     //do your stuff 

} 
+0

Dzięki Nicola, tak to, co mówisz, jest całkowicie poprawne. Jest to instrukcja globalna, więc bierze się pod uwagę ostatnią wartość. Problem z numerami stron polega na tym, że moja pierwsza strona jest opcjonalna, więc nie zawsze mogę być stroną 0. Czy istnieje sposób na podanie nazwy strony? – user1099862

+1

Co masz na myśli, mówiąc, że pierwsza strona jest opcjonalna? W każdym cas zapomniałem dwóch '=' w moim kodzie ... w każdym razie myślę, że musisz znaleźć logikę, aby zrozumieć stronę, w której się znajdujesz, a następnie zdecydować, czy wydrukuj nagłówek lub nie –

0

Nagłówek można kontrolować, modyfikując funkcję startPage w tcpdf.php

W tym przykładzie potrzebuję nagłówków tylko od strony 2.

// print page header 
    if ($this->numpages > 1) { 
     $this->setHeader(); 
    } 
Powiązane problemy