DomPDF: Изображение не читается или пустое


По какой-то причине DomPDF не будет отображать изображение, включенное в анализируемый html:

PDF Image missing

Однако изображение отображается на странице, когда оно возвращается в формате html:

HTML Image exists

Я рассмотрел эти проблемы и убедился, что для DOMPDF_ENABLE_REMOTE установлено значение true и проверены права доступа к файлам:
изображение dompdf не реальное изображение не читаемое или пустое
Ошибка изображения в DOMPDF для ZF2

Существуют ли какие-либо другие вещи, которые я должен проверять?

Author: Community, 2014-08-29

7 answers

Следование помогло мне полюбить очарование, по крайней мере локально, и даже с

def("DOMPDF_ENABLE_REMOTE", false);

Решение состоит в том, чтобы изменить SRC изображения на абсолютный путь на сервере, например:

<img src="/var/www/domain/images/myimage.jpg" />

Для меня сработало все следующее:

<img src="<?php echo $_SERVER["DOCUMENT_ROOT"].'/placeholder.jpg';?>"/>
<img src="<?php echo $_SERVER["DOCUMENT_ROOT"].'\placeholder.jpg';?>"/>
<img src="<?php echo $_SERVER["DOCUMENT_ROOT"].'./placeholder.jpg';?>"/>

$_SERVER["DOCUMENT_ROOT"] является C:/wamp/www/ZendSkeletonApplication/public

Благодаря этому: потерян в коде

 40
Author: David P. P., 2014-12-11 21:15:05

Хорошо У меня была та же проблема с использованием изображения:

<img id="logo" src="/images/flags/fr.png" width="50" alt="Logo">

Но если я добавлю .before/изображения, ничего не меняя в dompdf_config.custom.inc, это сработает

<img id="logo" src="./images/flags/fr.png" width="50" alt="Logo">

Надеюсь, это поможет

 9
Author: user3820597, 2014-12-03 20:11:44

Поскольку был еще один ответ, в котором предлагалось включить опцию удаленного доступа в module.config.php, и я пока не могу добавлять комментарии, я подумал, что было бы лучше ответить, что этот файл не существует в более новых версиях DomPDF.

Если вам нужно включить удаленно сохраненные изображения в более новую версию, вы должны передать ее в качестве опции конструктору:

$dompdf = new Dompdf(array('enable_remote' => true));

Это исправило проблему, которая у меня была.

 5
Author: Jon, 2017-07-28 13:43:16

В пути:

Vendor/dino/dompdf-module/config/module.config.php

Изменить настройки

Enable_remote'=>ложь,

То верно.

 2
Author: egorychmaster, 2015-08-22 13:26:24

Ни одно из приведенных здесь решений не сработало для меня. Вместо этого я просто закодировал изображение на основе base64, а затем оно сработало. Вы можете использовать этот инструмент .

 2
Author: Owen Davey, 2016-12-15 21:32:58

Сейчас (май 2018 года) правильный способ:

$options = new Options();
$options->set('isRemoteEnabled',true);      
$dompdf = new Dompdf( $options );
 2
Author: André DLC, 2018-04-29 19:07:49

Я решаю эту проблему, используя полный путь внешнего CSS. Этот работал на моем сервере Linux ubuntu:

<link href="{{ public_path('css/style.css') }}" />

<img src="{{ public_path('images/image.jpg') }}" />

И работайте над изображением.

 1
Author: Nasser Hekmati, 2018-01-19 19:32:50