tcpdf有大表时错误的分页符/格式

时间:2015-01-29 13:17:05

标签: php html tcpdf

我使用tcpdf生成pdf文件。大多数时候它的工作方式应该如此。但在少数情况下,主要是如果表格单元格中有长文本,格式将会中断。 看起来像这样: http://www.mediafire.com/view/uyunbzcnck9ehz5/pdf_format.pdf

我使用nobr =" true"在html中构建表格在。

这是我的代码的一部分:

    // 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('ServiceDesk');
$pdf->SetTitle('Statement of Work');

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

// set header and footer fonts
$pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN));
$pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA));

// set default monospaced font
$pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);

// 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 some language-dependent strings (optional)
if (@file_exists(dirname(__FILE__).'/lang/eng.php')) {
    require_once(dirname(__FILE__).'/lang/eng.php');
    $pdf->setLanguageArray($l);
}

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

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


// add a page
//$pdf->SetPrintFooter(false);
$pdf->AddPage();
$pdf->writeHTML($Frontpage, true, false, true, false, '');

我在页眉/页脚中使用它:

    class MYPDF extends TCPDF {     


    //Page header
    public function Header() {
        // Logo

        $image_file = '../images/logo.png';
        //$this->Image($image_file, '', '', '', '', 'PNG', '', 'T', false, 300, 'R', false, false, 0, false, false, false);
        // Set font
        $this->SetFont('frutigerltstd', 'B', 20);
    }

    // Page footer
    public function Footer() {

        // Position at 15 mm from bottom
        $this->SetY(-15);
        // Set font
        $this->SetFont('frutigerltstd', 'I', 8);
        // Page number


            $this->MultiCell(0, 1, 'Page '.$this->getAliasNumPage().'/'.$this->getAliasNbPages(),$border,'R');

    }
}

该表由foreach循环生成。 如果你愿意,我可以发布它,但我认为它不会有所帮助。

我仍然不确定它是否是html或tcpdf的问题。但由于较小的文字有效,我认为它是tcpdf。

有什么方法可以让布局工作吗?

0 个答案:

没有答案