我用這個方法使用Base64 URL從服務器側一些文件夾中保存最後在FPDF使用作爲從文件夾中的圖像,以谷歌圖表保存爲圖像。
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<script type="text/javascript" src="js/jquery-2.1.4.min.js"></script>
<script type="text/javascript">
google.load("visualization", "1", {packages:["corechart"]});
google.setOnLoadCallback(drawVisualization);
function drawVisualization() {
// Some raw data (not necessarily accurate)
var data = google.visualization.arrayToDataTable([
['', ''],
['Numerical', 4],
['Verbal', 6],
['Mechanical', 4],
['Reasoning', 5],
['Spatial', 9]
]);
var options = {
title : '',
vAxis: {title: "", viewWindowMode:'explicit',
viewWindow:{
max:12,
min:0
}},
hAxis: {title: ""},
seriesType: "bars",
series: {5: {type: "line"}}
};
var chart = new google.visualization.ComboChart(document.getElementById('chart_div'));
chart.draw(data, options);
var app1=(chart.getImageURI());
$.post("appt1.php",{postapp: app1},
function(){});
}
</script>
<div id="chart_div" style="display: none;"></div>
<!-- On the Server side do this to store image appt1.php -->
$data =$_POST['postapp'];
list($type, $data) = explode(';', $data);
list(, $data) = explode(',', $data);
$data = base64_decode($data);
file_put_contents('exam_images/'."1".'.png', $data);
問題是我沒有客戶端,我可以在生成PDF時生成這些圖形。 PDF是在cronjob的服務器端生成的。 –
因爲'谷歌圖表'是一個''''圖書館,我想不出沒有..''''的方式。如果圖表總是相同的,你可以運行'javascript'一次,將圖像網址保存到數據庫中,並在創建pdf時從那裏讀取它們? –
那麼這也是我想到的,但當然更好,讓他們創造「在這去」。我從來沒有使用node.js,只是非常模糊的想法是什麼,但是可以用它創建圖像嗎?因爲它是服務器端js afaik。 –