如何解决如何在 Laravel 中将图像从 SVG 转换为 PNG
我一直在尝试将 QRcode SVG 文件转换为 PNG 格式。
以下确实返回一个空的黑色图像,但没有内容。我想将所有内容从 SVG 格式转换为 PNG 格式:
$file = SVG::fromFile(storage_path('app/public/qr_background.svg'));
$background = $file->getDocument();
$qrString = QrCode::size('2500')
->style('round')
->backgroundColor(0,1)
->generate(
env('FARMCODE_BASE_URL')
? env('FARMCODE_BASE_URL') . $product->id
: route('product-landingpage',['product' => $product])
);
$qr = SVG::fromString($qrString)->getDocument();
$qr->getChild(1)->setAttribute('transform',"translate(450,450) scale(44)");
$background->addChild($qr);
$name = 'abc.png';
// Make image with Laravel Invervention package
$image = Image::make($file->toRasterImage(2000,2000))->encode('png');
$headers = [
'Content-Type' => 'image/png','Content-disposition' => 'attachment; filename='. $name,];
return response()->stream(function() use ($image) {
echo $image;
},200,$headers);
我正在使用 meyfa/PHP-svg
simplesoftwareio/simple-qrcode
和 intervention/image
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。