我想在snappy生成的pdf中添加一个图像,但没有任何内容出现
在我的树枝上:
我在我的数据库中保存文件的名称,survey.event.image包含图像的名称
<div style="margin-top: 26px; width: 200px">
<img src="{{ asset('uploads/imagesFile/'~survey.event.image) }}" id="imgEvent">
</div>
我启用了images =&gt; true
return new Response(
$this->get('knp_snappy.pdf')->getOutputFromHtml($html,array(
'default-header'=>null,
'encoding' => 'utf-8',
'images' => true,
'enable-javascript' => true,
'margin-right' => 7,
'margin-left' =>7,
'javascript-delay' => 5000
)),
200,
array(
'Content-Type' => 'application/pdf',
'Content-Disposition' => 'attachment; filename="file1.pdf"'
)
);
答案 0 :(得分:0)
尝试使用absolute_url
获取绝对资产网址
<div style="margin-top: 26px; width: 200px">
<img src="{{ absolute_url(asset('uploads/imagesFile/'~survey.event.image)) }}" id="imgEvent">
答案 1 :(得分:0)
使用absolute = true作为图片的路径。
<img src="{{ asset('uploads/imagesFile/'~survey.event.image, , absolute=true) }}" id="imgEvent">
答案 2 :(得分:0)
以防万一有人仍在寻求解决方案。 在我的 Laravel 8 中,我能够加载图像,但在下载图像时需要一段时间才能加载,然后无法下载。我正在使用 snappy 进行 pdf 生成和下载。
这是我解决它的方法。
从这里
<img src="{{asset('assets/images/czm/bismillah.png')}}" width="10%" alt="">
为此。我只是删除了 Laravel 默认资产并将图像转换为 base64。
<img src="{{'data:image/png;base64,'.base64_encode(file_get_contents(public_path('assets/images/czm/bismillah.png')))}}" width="180"/>
您可以找到更多here
答案 3 :(得分:-1)
也许图像路径错误,试试这个:
SELECT DATE '2016-06-07' FROM DUAL UNION ALL
SELECT DATE '2016-06-08' FROM DUAL UNION ALL
SELECT DATE '2016-06-09' FROM DUAL UNION ALL
SELECT DATE '2016-06-10' FROM DUAL UNION ALL
SELECT DATE '2016-06-11' FROM DUAL UNION ALL
SELECT DATE '2016-06-12' FROM DUAL UNION ALL
SELECT DATE '2016-06-13' FROM DUAL UNION ALL
SELECT DATE '2016-06-14' FROM DUAL UNION ALL
SELECT DATE '2016-06-15' FROM DUAL;
并在config.yml中添加:
<div style="width: 200px; height: auto;">
<img src="{{ pathToWeb }}/uploads/imagesFile/image.jpg" alt="img">
</div>