更改TCPDF标头字符串浮动

时间:2015-07-21 11:40:57

标签: php tcpdf

Hello stackoverflow人员,我需要TCPDF的帮助,我不知道如何使头字符串浮动正确。贝娄有一个我的脚本代码。我想留下标题徽标,但标题字符串是有问题的。那我怎么能改成它呢?

$pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, $AppUI->_('Project Completed Task Report'), PDF_HEADER_STRING);

1 个答案:

答案 0 :(得分:1)

要创建custome标头,您需要扩展TCPDF类并覆盖Header()功能: 然后在函数中有一个Cell()方法,您需要修改其中一个属性:

假设

 $this->Cell(0, 15, '<< Header TITLE >>', 0, false, 'C', 0, '', 0, false, 'M', 'M');

'C'表示CENTER(默认情况下),您需要更改为'R'以实现浮动右侧

  $this->Cell(0, 15, '<< Header TITLE >>', 0, false, 'R', 0, '', 0, false, 'M', 'M');

以下是我简化的示例:(根据您的TCPDF文件夹所属的位置更改require_once()值)

<?php
require_once('D:\tcpdf\tcpdf.php');

// Extend the TCPDF class to create custom Header and Footer
class MYPDF extends TCPDF {
    //Page header
    public function Header() {
        // Logo
        $image_file = K_PATH_IMAGES.'logo_example.jpg';
        $this->Image($image_file, 10, 10, 15, '', 'JPG', '', 'T', false, 300, '', false, false, 0, false, false, false);
        // Set font
        $this->SetFont('helvetica', 'B', 20);
        // Title to right allignment
        $this->Cell(0, 15, '<< Header TITLE >>', 0, false, 'R', 0, '', 0, false, 'M', 'M');
    }
}

// create new PDF document
$pdf = new MYPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);

// set document information
$pdf->SetCreator(PDF_CREATOR);
$pdf->SetAuthor('Nicola Asuni');
$pdf->SetTitle('TCPDF Example 003');
$pdf->SetSubject('TCPDF Tutorial');
$pdf->SetKeywords('TCPDF, PDF, example, test, guide');

// set default header data
$pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE, PDF_HEADER_STRING);



// set margins
$pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);
$pdf->SetHeaderMargin(PDF_MARGIN_HEADER);
$pdf->SetFooterMargin(PDF_MARGIN_FOOTER);

// set auto page breaks
$pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);

// set image scale factor
$pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);

   // ---------------------------------------------------------

// set font
$pdf->SetFont('times', 'BI', 12);

// add a page
$pdf->AddPage();

// set some text to print
$txt = <<<EOD
Custom page header and footer are defined by extending the TCPDF class and overriding the Header() and Footer() methods.
EOD;

// print a block of text using Write()
$pdf->Write(0, $txt, '', 0, 'C', true, 0, false, false, 0);

$pdf->Output('example.pdf', 'I');

要获取更多信息,请转至http://www.tcpdf.org/examples.php