私のコードは今日まで問題なく機能していました。何も変更しませんでしたが、突然PDFコードが機能しなくなりました。使ってます barryvdh/laravel-dompdf
このパッケージはlaravel 5.2
。
ローカルプロジェクトを削除してライブサーバーからダウンロードしましたが、それでもこの問題はローカルコンピューターで発生します。私のライブプロジェクトはこのコードで正常に動作します。
これが私のコードです
$pdf = App::make('dompdf.wrapper');
$pdf->loadView('back_end.pdf_template.make_invoice', ['order_info' =>$order_info, 'order_details' => $order_details]);
return $pdf->stream('inv-' . $order_info->invoice_id . '.pdf');
こんにちは友達、
以下に示すように、html、head、bodyタグの間のスペースを削除すると修正できます。
動作します:
<html><head>
...
</head><body>
...
</body></html>
失敗します:
<html>
<head>
...
</head>
<body>
...
</body>
</html>
Phpを5.6から7.0バージョンに更新したとき、同じlaravelバージョンで同じ問題が発生しました。
PDFファイルを生成しようとすると、次のメッセージがスローされました。
ブロックレベルの親が見つかりません。良くない。
このソリューションは、このgithubページで見つかりました
https://github.com/dompdf/dompdf/issues/1582#issuecomment-35944855
お役に立てば幸いです
同じ問題がありました。私にとっては、html
タグがブロックレベルの親として検出されなかったことが原因でした。それを修正するには、次のCSSを追加する必要がありました。
html, body {
display: block;
}