.php使用execwith 打开页面
exec('./wkhtmltoimage-i386 abcdef.com/combined.php chart.jpg', $op, $er);
Run Code Online (Sandbox Code Playgroud)
这样我就可以获得渲染图表的图像.
该chart.jpg是没有得到根本创造上运行的包含上述命令的页面.
(1)我combined.php在浏览器中直接执行,图表按预期显示.所以combined.php代码没有错.
(2)我也尝试过
<h1>Hello there!</h1>
Run Code Online (Sandbox Code Playgroud)
在里面combined.php,这导致chart.jpg创建和输出显示为图像.
所以这让我相信wkhtmltoimage需要等到呈现图表然后执行转换操作.问题是我没有关于如何使转换过程等到一切都完成的想法.
google.load('visualization', '1', {'packages':['corechart']});
google.setOnLoadCallback(drawChart);
function drawChart() {
var data = new google.visualization.DataTable(<?php echo $jsonTable; ?>);
var options = {
title: 'TNS',titleTextStyle: {color: "green"}, hAxis: {title: "MONTH", titleTextStyle: {color: "green"}}, vAxis: {title: "Percentage", titleTextStyle: {color: "green"},viewWindowMode: 'explicit',
},
max: 100,
min: 0,
legend: {
position: 'bottom'
},
width:1000,
height:550,
pointSize: 8,
backgroundColor:'#ddd9c3',
is3D: 'true',
height:550,
vAxis: {
gridlineColor: '#9d9983'
},
colors: ['black', 'red', 'green', 'blue', 'yellow']
};
var chart = new google.visualization.LineChart(document.getElementById('tns1'));
chart.draw(data, options);
}
Run Code Online (Sandbox Code Playgroud)
您可以使用以下设置来允许呈现 JavaScript 内容。
--enable-javascript
--javascript-delay
Run Code Online (Sandbox Code Playgroud)
我假设这个文档是最新的
http://madalgo.au.dk/~jakobt/wkhtmltoxdoc/wkhtmltoimage_0.10.0_rc2-doc.html
尝试可能是
exec('./wkhtmltoimage-i386 --enable-javascript --javascript-delay 1000 abcdef.com/combined.php chart.jpg', $op, $er);
Run Code Online (Sandbox Code Playgroud)
取决于使一切偏离轨道所需的时间。请记住,可能存在不同的安全限制。
您肯定想研究一些其他选项
--run-script // run a specific script after loading
--debug-javascript // return javascript debug output
--no-stop-slow-scripts
--enable-local-file-access
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1861 次 |
| 最近记录: |