【发布时间】:2022-11-29 17:38:45
【问题描述】:
我正在尝试创建折线图并通过 Laravel 中的刀片文件以 PDF 格式显示它。通过使用https://www.gstatic.com/charts/loader.js
但不知何故,图表没有出现在 pdf 中,但也很好地遵循了教程。也许我需要一些帮助来解决这个问题。
<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
<script type="text/javascript">
google.charts.load('current', {
'packages': ['corechart']
});
google.charts.setOnLoadCallback(drawChart);
function drawChart() {
var data = google.visualization.arrayToDataTable([
['location', 'pointer'],
@php
foreach ($last as $l) {
echo "['" . $l->location . "', '" . $l->pointer . "'],";
}
@endphp
]);
var options = {
title: 'testing chart',
curveType: 'function',
legend: {
position: 'bottom'
}
};
var chart = new google.visualization.LineChart(document.getElementById('google'));
chart.draw(data, options);
}
</script>
【问题讨论】:
-
你是如何生成pdf文件的,dompdf?
-
@andresdevr 是的,使用 dompdf
-
该图表是异步绘制的,这意味着它不会在页面加载时立即可用并且您正在运行 dompdf 函数。另一种方法可能是构建页面并绘制图表,然后在 JavaScript 中监听图表的就绪事件,此时您可以使用 AJAX 将图表图像 (
chart.getImageURI()) 发送回服务器,然后构建PDF。
标签: laravel pdf google-visualization