我正在使用 laravel-snappy 生成我的 html 页面的 pdf,但出现此错误:
The exit status code '-1073741819' says something went wrong:
stderr: "Loading pages (1/6)
[> ] 0%
[======> ] 10%
[======> ] 11%
Warning: Failed to load http://127.0.0.1:8000/css/app.css (ignore)
◀
Warning: Failed to load http://127.0.0.1:8000/fullcalendar/packages/core/main.css (ignore)
Warning: Failed to load http://127.0.0.1:8000/fullcalendar/packages/daygrid/main.css (ignore)
Warning: Failed to load http://127.0.0.1:8000/fullcalendar/packages/core/main.js (ignore)
Warning: Failed to load http://127.0.0.1:8000/fullcalendar/packages/interaction/main.js (ignore)
Warning: Failed to load http://127.0.0.1:8000/fullcalendar/packages/daygrid/main.js (ignore)
Warning: Failed to load http://127.0.0.1:8000/fullcalendar/packages/timegrid/main.js (ignore)
Error: Failed to load http://127.0.0.1:8000/js/jQuery.min.js, with network status code 99 and http status code 0 - Unknown error
"
stdout: ""
command: C:\xampp\htdocs\EDO_Roster\vendor\wemersonjanuario\wkhtmltopdf-windows\bin\wkhtmltopdf --lowquality --enable-javascript --javascript-delay "5000" --enable-smart-shrinking --no-stop-slow-scripts "C:\Users\razaz\AppData\Local\Temp\knp_snappy5d807944516442.29719528.html" "C:\Users\razaz\AppData\Local\Temp\knp_snappy5d80794451ccb4.67360917.pdf".
显然这是一个 URL 错误,我已经尝试了许多解决堆栈溢出问题的方法,但都是徒劳的。我的html页面如下:
<!DOCTYPE html>
<html>
<head>
<title>EDO Roster</title>
<link rel="stylesheet" href="{{ URL::asset('css/app.css') }}">
<link href='{{ URL::asset('fullcalendar/packages/core/main.css') }}' rel='stylesheet' />
<link href='{{ URL::asset('fullcalendar/packages/daygrid/main.css') }}' rel='stylesheet' />
</head>
<body>
<div class="col-md-9 m-lg-5">
<div class="box box-primary p-sm-4">
<div class="box-body">
<!-- THE CALENDAR -->
<h3>EDO Roster</h3>
<hr>
<div id="calendar" ></div>
</div>
<!-- /.box-body -->
</div>
<!-- /. box -->
</div>
</body>
</html>
<script src="{{ URL::asset('fullcalendar/packages/core/main.js') }}"></script>
<script src="{{ URL::asset('fullcalendar/packages/interaction/main.js') }}"></script>
<script src="{{ URL::asset('fullcalendar/packages/daygrid/main.js') }}"></script>
<script src="{{ URL::asset('fullcalendar/packages/timegrid/main.js') }}"></script>
<script src="{{ URL::asset('js/jQuery.min.js') }}"></script>
<script>
$(document).ready(function() {
var calendarEl = document.getElementById('calendar');
var calendar = new FullCalendar.Calendar(calendarEl, {
plugins: [ 'interaction', 'dayGrid', 'bootstrap', 'timeGrid' ],
themeSystem: 'bootstrap',
header: {
left: false,
center: 'title',
},
defaultView: 'dayGridMonth',
validRange: {
start: '2019-08-26',
end: '2019-09-26',
},
selectable: true,
editable : true,
droppable : true,
eventSources: [
{
url: '{{"roster/getEvents"}}',
allDay: false,
allDayMaintainDuration: false,
textColor: 'black',
},
{
url: '{{"roster/getGazette"}}',
editable: false,
id: 'a',
overlap: false,
},
],
});
calendar.render();
});
</script>
我试过给它一个硬编码的 URL,但效果不佳。我假设 laravel-snappy 不加载 JS 和 CSS。请看看这个并帮助我。
PS:任何关于 html-to-pdf 的建议都非常感谢。