我正在尝试将图像(base64)附加到PDF文件,保存PDF文件,然后将其返回以供其他应用程序下载。我正在将this package用于DOMPDF。
我可以成功地将图像添加到PDF文件:
public function convertImageToPDF(Request $request)
{
//We receive the image content/URL from MS Flow.
$imageContent = $request->ContentBytes;
$imageName = $request->Name;
$html = '<img src="data:image/jpg;base64, ' . $imageContent . '" alt="" />';
//Generate filename
$filename = "test";
//create pdf document
$pdf = PDF::loadHTML($html)->save(storage_path('app/public/doccenter/' . $filename . '.pdf'));
}
好的,因此以上操作将在app/public/doccenter
文件夹中创建一个PDF文件。它将添加文件test.pdf
。
现在,如果我打开test.pdf
文件,则图像添加如下:
到目前为止,一切都很好。现在,我在另一个应用程序中需要这个新创建的PDF文件,因此我想将PDF内容返回到另一个应用程序。
为此,我将最后一行$pdf = PDF:: ...
替换为:
return PDF::loadHTML($html)->save(storage_path('app/public/doccenter/' . $filename . '.pdf'))->stream();
现在,如果我再次运行此功能,则可以看到已返回内容,并提示我下载PDF文件。但是当我打开它时,它是空的:
我在做什么错了?