我需要动态生成PDF报告,并以某种方式插入图表的图像版本。
作为简历,我使用了Kartik(http://demos.krajee.com/mpdf)的yii2,mpdf扩展名和amCharts。
我知道amCharts和HighCharts,有方法可以动态地将图形导出为图像,但为此我需要使用JavaScript进行渲染,据我所知,还没有将HTML渲染为PDF的方法,并加载JavaScript来执行某些操作。 MPDF支持HTML,CSS等,但不支持JavaScript。
这是一个客户端的功能,它给了我一个私人应用程序的链接(我所知道的都是在PHP上运行),这是通过HighCharts实现的,我不介意交换到HighCharts,如果有的话我错过了一种方式..
我需要将我的视图渲染为PDF并将动态生成的amCharts作为图像添加到我的PDF中。
开箱即用的想法是受欢迎的,因为这需要做出来,即使它有一些草率,蹩脚的方式。
但我真的没有看到......
提前致谢。
答案 0 :(得分:1)
我确实尝试过各种黑暗魔法。 显然我真的做不到。
我对这个问题没有一个确切的解决方案,但我认为我接下来的事情是最好的。
在用户要求提供PDF即时报告后,我做了什么,呈现了一个白色的“%Loading page”。
这个中间白页,加载图形(进入页面,隐藏),然后amCharts JS库将它们导出到图像中,然后我将其转换为data / base64并将其发回服务器,需要2 \ 3额外的秒数,然后用户获得他的PDF报告。