php 生成 pdf 和前端下载

 

php 生成 pdf 和前端下载

composer require mpdf/mpdf


require_once __DIR__ . '/vendor/autoload.php';

$mpdf = new \Mpdf\Mpdf();
$mpdf->autoLangToFont = true;
$mpdf->autoScriptToLang =true;
$mpdf->WriteHTML('<h1>Hello world!</h1>');
//$mpdf->Output();
$html = '
<table class="table table-bordered">
               <tbody>
        <tr>
                <td>xx</td>
                <td>xx</td>
            </tr>
                    </tbody></table>
';
//var_dump($html);die();
$mpdf->WriteHTML(file_get_contents('./css/bootstrap.css'), 1);
$mpdf->WriteHTML(' 
        table {
            width: 100%;
            border-collapse: collapse;
        }
        td, th {
            border: 1px solid black;
            padding: 5px;
            width: 100px;
        }
        .table-bordered tr td{
            text-align: center;
        }
        
        ', 1);
$mpdf->WriteHTML($html, 2);
$mpdf->Output();

//$mpdf->Output('example.pdf', 'F');                            
js代码
fetch(down_url, {
    method: 'get',
    headers: {
        'Content-Type': 'application/json;charset=UTF-8'
    }
})
    .then(res =>{
        // return res.text()
        return  res.blob()
    })
    // .then(data=>{
    //     console.log(data)
    // })
    .then(blob => saveAs(blob, 'example.pdf'))

function saveAs(blob, filename){
    if(navigator.msSaveOrOpenBlob)
        return navigator.msSaveOrOpenBlob(blob, filename)

    let link = document.createElement('a')
    link.href = window.URL.createObjectURL(blob)
    link.download = filename
    link.click()
}

  

 

posted on 2025-04-18 21:15  少杨  阅读(11)  评论(0)    收藏  举报