fpdf在每个页面上添加标题和表格标题

时间:2018-08-31 08:53:50

标签: php pdf

<?Php
require('fpdf/fpdf.php');
$host = "localhost"; 
$username = "root"; 
$password = "";  
$db_name = "Students"; 

$con = new mysqli($host, $username, $password, $db_name);

$count = "SELECT * FROM class";

$pdf = new FPDF(); 
$pdf->AddPage();

$width_cell=array(70,40,30,30,20);
$pdf->SetFont('Arial','B',12);

$pdf->SetFillColor(193,229,252);

$pdf->Cell($width_cell[0],10,'ID No',1,0,'C',true);
$pdf->Cell($width_cell[1],10,'Name',1,0,'C',true);
$pdf->Cell($width_cell[2],10,'Surname',1,0,'C',true); 
$pdf->Cell($width_cell[3],10,'Cell No',1,0,'C',true);
$pdf->Cell($width_cell[4],10,'Teacher',1,1,'C',true); 

$pdf->SetFont('Arial','',11);
$pdf->SetFillColor(235,236,236); 
$fill=false;


foreach ($con->query($count) as $row) {
$pdf->Cell($width_cell[0],10,$row['Id_no'],1,0,'C',$fill);
$pdf->Cell($width_cell[1],10,$row['Name'],1,0,'C',$fill);
$pdf->Cell($width_cell[2],10,$row['Surname'],1,0,'C',$fill);
$pdf->Cell($width_cell[3],10,$row['CellNO'],1,0,'C',$fill);
$pdf->Cell($width_cell[4],10,$row['Teacher'],1,1,'C',$fill);
$fill = !$fill;
}

$pdf->Output();
?>

问题:如何为每个页面在页面顶部添加标题。以及每个页面上的表格标题。一直在努力,我尝试了网站上的fpdf教程页面。但我仍然无法正常工作

2 个答案:

答案 0 :(得分:0)

至少从FPDF中的注释,您希望这样做的方法是从基FPDF类继承并实现Header方法:

use Fpdf\Fpdf;

class MyPdf extends Fpdf {
    function Header() {
        $this->Cell(100, 100, 'TITLE');
    }
}

$pdf = new MyPdf();

此外,还有一个Footer方法,如果您需要在每个页面上都添加页脚,则可以用相同的方式覆盖该方法。

答案 1 :(得分:0)

我认为您应该扩展Fpdf类,并制定出完整的页眉节和页脚节,以覆盖默认的页眉和页脚。请参见以下示例。

class PDF extends FPDF
{
// Page header
function Header()
{

    $this->SetFillColor(54,80,104);
    $this->SetDrawColor(150,150,150);
    $this->Rect(0,0,220,50,'F');

    $this->SetFont('helvetica','B',18);
    $this->SetTextColor(255,255,255);
    $this->SetXY(10,5);
    $this->Cell(100,15,"My Title",0,0,'R');


}

// Page footer
function Footer()
{
    $this->SetY(-10);
    $this->SetFont('helvetica','I',7);

    $this->SetXY(100,-22);
    $this->Cell(100,15,'My Footer',0,0,'L');



}
}

然后代替

$pdf = new FPDF(); 

您应该使用

$pdf = new PDF(); 

这样,相同的页眉和页脚将应用于您的所有页面