【发布时间】:2020-12-05 07:42:39
【问题描述】:
我正在制作一个 pdf,为此我使用库:barryvdh/laravel-dompdf,在 pdf 中我尝试打印一个图像,当我打开最近下载的文件时,所有除了图像之外的数据都被打印出来,如果它在我的 show.blade 视图中正确显示,我会澄清这个图像,我找不到这个问题的解决方案。 下面我详细说明我是如何进行的:
控制器:(store方法和exportPdf方法的片段)
public function store(SaveDocumentRequest $request)
{
if ($request->hasFile('photo')) {
$file = $request->file('photo');
$name = time().$file->getClientOriginalName();
$file->move(public_path().'/images/', $name);
}else{
$name = null;
}
$document->photo = $name;
public function exportPdf()
{
$movie = Movies::with('document.creator', 'actors', 'generate_movie', 'document.adequacy', 'document.lenguage')->first();
$pdf = PDF::loadView('admin.movies.show', compact('movie'));
return $pdf->download('cine.pdf');
}
我的 show.blade 文件:
<div class="col-md-6">
<div class="box box-primary">
<div class="box-header with-border">
<h3 class="box-title">Imagen de Portada </h3>
</div>
<div class="box-body box-profile">
<img class="img-responsive" src="{{ asset('/images/'.$movie->document->photo) }}" alt="{{ $movie->document->title }}" >
</div>
</div>
</div>
这样我访问的图像,如果它在我的 show.blade 文件中正确显示,但它没有显示在下载的 pdf 中。
我澄清一下,我没有收到任何类型的错误,并且图像存储在项目的公用文件夹中。
您能指导我找到解决方案吗?
【问题讨论】:
-
尝试使用 public_path()
{{ public_path('/images/'.$movie->document->photo) }}或使用 base_path(){{ base_path('/images/'.$movie->document->photo) }} -
正如@sta 所说,您可以尝试更改路径,如果它不起作用,请尝试此答案,stackoverflow.com/questions/37952877/…
标签: php laravel laravel-blade dompdf