无法在Intervention Image

时间:2019-05-19 16:09:17

标签: php svg imagick intervention

我正在制作的工具上几乎有 一切。

首先,由于GD不支持SVG,因此我在Laravel项目中将Imagick驱动程序与Intervention Image一起使用。

我正在通过表单提交上传图像,并尝试在输出结果之前覆盖表单中还包含的一些信息。

如果我以png形式提供图标,一切都很好,但是当我尝试将insert()与 .svg 文件一起使用时,该图标不会在导出中显示。 / p>

以下是我的代码的关键部分。如上所述,如果我将swim-white.svg更改为swim-white.png,则下载工作正常。

$img = Image::make($request->file('fileName'))->orientate();
$img->insert(public_path() . '/images/icons/swim-white.svg', 'top-left', 80, 295);
$img->response('jpeg');

$name = Carbon::now()->toDateTimeString() . '-download.jpeg';

$headers = [
    'Content-Type' => 'image/jpeg',
    'Content-Disposition' => 'attachment; filename='. $name,
];

return response()->stream(function() use ($img) {
    echo $img;
}, 200, $headers);

是否知道这是imagick的限制,还是我做错了什么?


注意:该文件仍会下载,但是SVG图标应为空白,而使用PNG时会显示该图标。

我想使用SVG,以便用户可以更改表单输入中文本和图标的颜色。

0 个答案:

没有答案