Я хочу создать PDF с DomPDF в моем проекте Symfony 4. Я хотел бы вставить изображения от лица. Изображения управляются с помощью VichUploaderBundle.
Есть ли способ отобразить их?
На данный момент я сделал это в своем файле ветки
<html>
<head>
<meta charset="UTF-8">
<title>Title of the PDF</title>
</head>
<body>
<h4>{{ title }}</h4>
<p>Lorem Ipsum</p>
<div class="user-pic">
{% if app.user and app.user.avatar and app.user.avatar.imageName %}
<img class="img img-responsive img-rounded" src="{{ absolute_url(vich_uploader_asset(app.user.avatar, 'imageFile'))}}">
{% else %}
<img src={{"/images/avatar/default.jpg"}}>
{% endif %}
</div>
</body>
</html>
Но это не такработай. Изображение отсутствует. Есть только «alt».
Моя конфигурация vichUploader:
avatar:
uri_prefix: /images/avatar
upload_destination: "%kernel.project_dir%/public/images/avatar"
inject_on_load: false
delete_on_update: true
delete_on_remove: true
В моем контроллере:
/**
* Générer un PDF
* @Route("/absence/pdf", name="absence_pdf")
*
* @return void
*/
public function createPDF()
{
// Configure Dompdf according to your needs
$pdfOptions = new Options();
$pdfOptions->set('defaultFont', 'Arial')
->set('isRemoteEnabled', true);
// Instantiate Dompdf with our options
$dompdf = new Dompdf($pdfOptions);
// Retrieve the HTML generated in our twig file
$html = $this->renderView('absence/pdf.html.twig', [
'title' => "Welcome to our PDF Test"
]);
// Load HTML to Dompdf
$dompdf->loadHtml($html);
// (Optional) Setup the paper size and orientation 'portrait' or 'portrait'
$dompdf->setPaper('A4', 'portrait');
// Render the HTML as PDF
$dompdf->render();
// Output the generated PDF to Browser (inline view)
$dompdf->stream("mypdf.pdf", [
"Attachment" => false
]);
}
У меня есть эта ошибка:
Ошибка: превышено максимальное время выполнения 120 секунд