相关疑难解决方法(0)

在imagick php中使用svg原始数据生成SVG图像

我正在尝试使用svg原始数据创建svg图像,我从fabric js获取.我使用下面的代码使用svg原始数据生成svg但它无法正常工作.

public function generate_svg($raw_svg='',$prefix='',$folder_name='card_image')
{
    $file_name = '';       
    if($raw_svg!='')
    {
        try{           
            $file_name = uniqid($prefix).".svg";
            $image = new \Imagick();
            $image->readImageBlob($raw_svg);
            $image->setImageFormat("svg");
            $image->writeImage($folder_name.$file_name);
        } catch (ImagickException $ex) {
            echo $ex->getMessage();
        }
    }
     return $file_name;
}
Run Code Online (Sandbox Code Playgroud)

现在问题是背景图片有点像下面这样:

在此输入图像描述

那我该怎么做才能解决这个问题呢?

它应该如下所示(忽略方形和圆形),问题是整个背景看起来像黑色而不是bg图像:

在此输入图像描述

所以问题是背景图像没有加载,所以我必须添加额外的库来做那个或其他任何事情?

Imagick版本:6.7.7

    convert -list delegate | grep svg  

    cdr =>          "uniconvertor' '%i' '%o.svg'; /bin/mv '%o.svg' '%o"
    cgm =>          "uniconvertor' '%i' '%o.svg'; /bin/mv '%o.svg' '%o"
    dot =>          "dot' -Tsvg '%i' -o '%o"
    dxf =>          "uniconvertor' '%i' '%o.svg'; /bin/mv '%o.svg' '%o"
    fig =>          "uniconvertor' '%i' …
Run Code Online (Sandbox Code Playgroud)

php svg imagemagick imagick

5
推荐指数
1
解决办法
1054
查看次数

标签 统计

imagemagick ×1

imagick ×1

php ×1

svg ×1