Я штампую свои документы PDF с помощью функций 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 () и т. Д., Но ничего из того, что я нашел, не работает для меня. Могу я кому-нибудь помочь?
Спасибо.
фальсифицировать
Вы можете использовать Line
способ нарисовать линию в FPDF. Если вы хотите прямую горизонтальную линию, просто убедитесь, что ординаты (значения y) для начала и конца линии совпадают. Примерно так, например:
$pdf->Ln(15,$pdf->y,200,$pdf->y);
Вы должны изменить значения в соответствии со своими потребностями и вставить их в переопределенные методы для Header
а также Footer
в зависимости от вашего приложения.
Лучше было бы оставить два метода (Header
а также Footer
) пусто. таким образом, вы перезаписали бы рисунок из суперкласса.
как это:
class EmptyFPDI extends FPDI
{
public function Header()
{
}
public function Footer()
{
}
}