Mpdf用样式表生成空白pdf

问题描述

Mpdf 在包含样式表时生成空白页 pdf,当我删除样式表时工作正常 $mpdf->WriteHTML($stylesheet,1); 但我想包含样式表。 任何帮助表示赞赏。

    <?PHP
    if(isset($_POST['pdf'])){
        ob_clean();
        flush();
      /*-------------------- for genearte pdf start -----------------*/
        include("mpdf/vendor/autoload.PHP");
        include('includes/db.PHP');
     
    $mpdf = new \Mpdf\Mpdf();
     
        //$html = '<h1>Welcome</h1>';
        $html = '<div class="table-responsive">
            <table class="table table-hover tablesorter pdf_border">
                <thead>
                    <tr class="pdf_border">
                        <th class="header pdf_border">Name</th>
                        
                    </tr>
                </thead>
                
                <tbody>'; ?>
        <?PHP
        
          $sqli        = "SELECT * FROM user";
          $resulti     = MysqLi_query($connection,$sqli);
          while($row  = MysqLi_fetch_assoc($resulti))
          {                    
            $html .= '<tr class="pdf_border">
            <td class="pdf_border">'.$row['name'].'</td>   

            </tr>';
            } 
     
          $html .= '</tbody></table>'; 
          $path       = 'pdf/';
          $file_name ="webpreparations-".time().".pdf";
          $stylesheet =file_get_contents('css/bootstrap.min.css'); 
          $mpdf->WriteHTML($stylesheet,1);  //             
          $mpdf->WriteHTML($html,2); 
          $mpdf->Output($path.$file_name,"D");
        }
    ?>
<form action="" method="post">
<input type="submit" name="pdf" class="pull-right btn btn-warning btn-large" style="margin-right:40px" value="Genarte PDF">
</form>

如果我删除 ob_clean(); flush();

并且会损坏 pdf 文件

解决方法

使用

添加样式表
$mpdf->WriteHTML('path/your stylsheet.css'),\Mpdf\HTMLParserMode::HEADER_CSS);