如何使用laravel将c3图表导出为pdf

时间:2015-11-15 07:03:48

标签: laravel-5

我一直在laravel中使用Mpdf将c3图表导出为pdf。但导出后,图表不会以pdf格式显示。 Mpdf库接受svg标记,C3图表是svg类型图像。输出中没有错误,因为pdf在没有显示图表的情况下生成。有谁可以帮忙解决它?

以下是我查看C3图表的代码:

<script type="text/javascript">



var chart = c3.generate({
    bindto: '#chart1',
    data: {
        columns: [
            ['data1', 30],
            ['data2', 120],
        ],
        type : 'donut',
        onclick: function (d, i) { console.log("onclick", d, i); },
        onmouseover: function (d, i) { console.log("onmouseover", d, i); },
        onmouseout: function (d, i) { console.log("onmouseout", d, i); }
    },
    donut: {
        title: "Iris Petal Width"
    }
});

setTimeout(function () {
    chart.load({
        columns: [
            ["setosa", 0.2, 0.2, 0.2, 0.2, 0.2, 0.4, 0.3, 0.2, 0.2, 0.1, 0.2, 0.2, 0.1, 0.1, 0.2, 0.4, 0.4, 0.3, 0.3, 0.3, 0.2, 0.4, 0.2, 0.5, 0.2, 0.2, 0.4, 0.2, 0.2, 0.2, 0.2, 0.4, 0.1, 0.2, 0.2, 0.2, 0.2, 0.1, 0.2, 0.2, 0.3, 0.3, 0.2, 0.6, 0.4, 0.3, 0.2, 0.2, 0.2, 0.5],
            ["versicolor", 1.4, 1.5, 1.5, 1.3, 1.5, 1.3, 1.6, 1.0, 1.3, 1.4, 1.0, 1.5, 1.0, 1.4, 1.3, 1.4, 1.5, 1.0, 1.5, 1.1, 1.8, 1.3, 1.5, 1.2, 1.3, 1.4, 1.4, 1.7, 1.5, 1.0, 1.1, 1.0, 1.2, 1.6, 1.5, 1.6, 1.5, 1.3, 1.3, 1.3, 1.2, 1.4, 1.2, 1.0, 1.3, 1.2, 1.3, 1.3, 1.1, 1.3],
            ["virginica", 2.5, 1.9, 2.1, 1.8, 2.2, 2.1, 1.7, 1.8, 1.8, 2.5, 2.0, 1.9, 2.1, 2.0, 2.4, 2.3, 1.8, 2.2, 2.3, 1.5, 2.3, 2.0, 2.0, 1.8, 2.1, 1.8, 1.8, 1.8, 2.1, 1.6, 1.9, 2.0, 2.2, 1.5, 1.4, 2.3, 2.4, 1.8, 1.8, 2.1, 2.4, 2.3, 1.9, 2.3, 2.5, 2.3, 1.9, 2.0, 2.3, 1.8],
        ]
    });
}, 1500);

setTimeout(function () {
    chart.unload({
        ids: 'data1'
    });
    chart.unload({
        ids: 'data2'
    });
}, 2500);

</script>

Code for pdf export:


   public function download(){

    $mpdf=new mPDF('c','A4','','' , 0 , 0 , 0 , 0 , 0 , 0);         
    $html = view('charts.chart')->render();
    $mpdf->ignore_invalid_utf8  = true;
    $mpdf->allow_charset_conversion = false;
    $mpdf->SetDisplayMode('fullpage');
    $mpdf->list_indent_first_level = 0;
    //$mpdf->showImageErrors = true;
    $mpdf->SetHeader('<div style="text-align: right; font-weight: bold;">iBox</div>');
    $mpdf->defaultheaderfontsize=20;
    $mpdf->defaultheaderfontstyle='I';
    $mpdf->defaultheaderline=0;
    $mpdf->WriteHTML($html);
    $mpdf->Output();
    exit;

}
.large .enable-bootstrap .col-md-6, .extra-large .enable-bootstrap .col-md-6            
width: 20%;
}

0 个答案:

没有答案