#php #symfony #dompdf #symfony-4.2
#php #symfony #dompdf #symfony-4.2
Вопрос:
Я создаю PDF-файл с помощью DOMPDF. Мой PDF-файл — это карточка приема, которая содержит информацию о конкретном студенте.
В этой карточке признания у меня есть два изображения для показа. Итак, в моем файле twig,
Изображение профиля:
<img src="{{ response['display_image'] }}" alt="Profile Pic" width="100px" height="100px" class="img-thumbnail" />
Изображение компании:
<img src="images/webkul.png" alt="Webkul"/>
Оба этих изображения не сгенерированы в моем PDF-файле. Я выдаю «изображение не найдено или тип неизвестен«.
Я извлекаю изображение профиля из базы данных, в то время как изображение компании хранится в файле проекта, который,
public/assets/images/xyz.png
Контроллер:
$pdfOptions = new Options();
$pdfOptions->set('defaultFont', 'Arial');
$pdfOptions->setIsRemoteEnabled(true);
$dompdf = new Dompdf($pdfOptions);
$html = $this->renderView('download_pdf/index.html.twig', [
'title' => "Admit-Card",
'response' => $response,
'data' => $data,
]);
$dompdf->loadHtml($html);
$dompdf->setPaper('A4', 'portrait');
$dompdf->render();
Я приложил снимок экрана.
Как я должен указать путь в моем файле twig, чтобы изображение можно было отобразить в файле PDF?
Комментарии:
1. Ошибка довольно очевидна. Я думаю, что путь неверен.
2. @AndreiLupuleasa: Я знаю, но все же я ищу решение.
3. Каков полный путь к изображению на диске?
4. @AndreiLupuleasa: я упоминал об этом в своем вопросе, это «public / assets / images /xyz.png»
5. Это не полный путь, не так ли
student/public/assets/images/xyz.png
?
Ответ №1:
Укажите весь путь с диска:
https://github.com/dompdf/dompdf/issues/1523
ПРИМЕР:
use DompdfDompdf;
use DompdfOptions;
require_once 'dompdf/autoload.inc.php';
$options = new Options();
$options->set('isRemoteEnabled', TRUE);
$options->set('tempDir', '/home2/directory/public_html/directory/pdf-export/tmp');
$dompdf = new Dompdf($options);
Ответ №2:
На самом деле проблема существует в заголовочной части HTML-файла. Я расширял head своего проекта, который содержал много CSS и JS. Я просто удалил head и вместо этого использовал простой и чистый head, и моя проблема была решена.
Примечание: не добавляйте верхний / нижний колонтитулы вашего проекта в Html-файл pdf, вместо этого используйте новый для того же.