I am using laravel 5.2, The dompdf runs fine at localhost but when moved to AWS it keeps showing ErrorException in Cpdf.php line 3855: Undefined index:, in this line (3855) has font variable.
Sample code :
$html = "<h2>Hello</h2>";
PDF::setOptions(['dpi' => 150, 'defaultFont' => 'sans-serif']);
$pdf = PDF::loadHTML($html)->setPaper('a4', 'landscape');
return $pdf->download('pdfview.pdf');
I can not set 'currentFont' => 'sans-serif' at setOptions due to no options in barryvdh/laravel-dompdf. so how can I solve currentFont issue.
Localhost - Windows - Runs fine.
AWS - Linux - Error.
Error solved by delete dompdf_font_family_cache.php file from storage/fonts
and let the renderer regenerate the cache.
I faced this issue on the Linux machine. The error shown was
Undefined index: application/third_party/dompdf/lib/fonts\Times-Roman
If you observe the Directory separator before the font name '\' is not compatible in Linux environment. This path separator is hardcoded in the dompdf_font_family_cache.php file found in ../dompdf/lib/fonts folder.
Open the file in the editor and replace '\' with '/'. Save the changes. The code will start working.