我不是100%肯定我的错误。我在尝试生成PDF时收到此编码输出:
%PDF-1.4 %���� 3 0 obj <> /Contents 4 0 R>> endobj 4 0 obj <> stream x�S(T0�300@!�ҹ�iab�gai�
jig`
我正在使用Yii2和highcharts包https://github.com/2amigos/yii2-highcharts-widget以及mPDF包https://github.com/kartik-v/yii2-mpdf。
我希望能够生成此图表的浏览器版本以及PDF版本。浏览器版本工作正常,但PDF尝试没有。我在行动中的代码是:
if($pdf == true){ // render as pdf
$content = $this->renderPartial('_overallPDF', [
'model' => $data,
]);
$doc = new Pdf([
// set to use core fonts only
'mode' => Pdf::MODE_UTF8,
// A4 paper format
'format' => Pdf::FORMAT_A4,
// portrait orientation
'orientation' => Pdf::ORIENT_LANDSCAPE,
// stream to browser inline
'destination' => Pdf::DEST_BROWSER,
// your html content input
'content' => $content,
]);
return $doc->render();
}
我不确定这里的问题,是不是因为highcharts是一个js库而且在浏览器中完成了演示?
无论哪种方式,如果有人可以帮我找到一个解决方案来生成图表作为PDF将是伟大的!
答案 0 :(得分:1)
嗯,这已经得到了答案:你要做的事情根本不可能,因为MPDF支持基本的javascript ......这与yii2无关。
如果您真的想在pdf文档中输出highcharts图表,则应使用服务器端工具,例如: :http://www.highcharts.com/docs/export-module/render-charts-serverside