2015-05-15 5 views
0

Я печатаю свои документы PDF с помощью функций FPDI и TCPDF, и я пытаюсь понять это, как добавить строку под текстом в заголовке, а также текст в нижнем колонтитуле. Вот мой код:строка заголовка и нижнего колонтитула в FPDI/TCPDF

<?php 

require_once('lib/tcpdf/tcpdf.php'); 
require_once('fpdi.php'); 


$fullPathToFile = "TestClanek6.pdf"; 

class PDF extends FPDI { 

    var $_tplIdx; 

    function Header() { 

     global $fullPathToFile; //global 
     if(is_null($this->_tplIdx)) { 
      // number of pages 
      $this->numPages = $this->setSourceFile($fullPathToFile); 
      $this->_tplIdx = $this->importPage(1); 
     } 
     if($this->page > 0) { 
      //$this->SetPrintHeader(true); 
      $this->SetFont('times', 'I', 11); 
      $this->SetTextColor(0); 
      $this->Write(15, "Vol. 1, No. 15, Year: 2015, duff"); 
      $this->Image('logo.png', 100, 2, 75,7);    
     } //end of IF 
     $this->useTemplate($this->_tplIdx, 0, 0,200); 
    }   //end of HEADER 

    function Footer() { 
     if($this->page > 0) { 
      $this->SetY(-20); 
      $this->SetFont('times', 'I', 11); 
      $this->SetTextColor(0,0,0); 
      $this->Write(0, "Page", '', 0, 'C'); 
     } //end of if 
    } // end of footer 
}  //end of CLASS 

// new PDF file 
$pdf = new PDF(); 
$pdf->addPage(); 
if($pdf->numPages>0) { 
    for($i=1;$i<=$pdf->numPages;$i++) { 
     $pdf->endPage(); 
     $pdf->_tplIdx = $pdf->importPage($i); 
     $pdf->AddPage(); 
     //$pdf->SetPrintHeader(false); 
     //$pdf->SetPrintFooter(false); 
    } 
} 
$file_time = time(); 

$pdf->Output("$file_time.pdf", "F");//, "I"); 
echo "Link: '<a href=$file_time.pdf>Stamped article</a>'"; 
?> 

Я пробовал много вещей, как setPrintHeader(), и т.д., но ничего, что я нашел работает для меня. Могу ли я угодить кому-нибудь, чтобы помочь?

спасибо.

Дафф

ответ

1

Вы можете использовать метод Line, чтобы нарисовать линию в FPDF. Если вам нужна прямая горизонтальная линия, просто убедитесь, что ординаты (значения y) для начала и конца строки одинаковы. Нечто подобное, например:

$pdf->Ln(15,$pdf->y,200,$pdf->y); 

Вы бы изменить значение в соответствии с вашими потребностями и вставить его в перекрытых методах Header и Footer в случае необходимости для вашего приложения.

0

Лучше было бы оставить два метода (Header и Footer) пустым. таким образом вы бы перезаписали рисунок из суперкласса.

так:

class EmptyFPDI extends FPDI 
{ 
    public function Header() 
    { 
    } 

    public function Footer() 
    { 
    } 
} 
Смежные вопросы