Php Image Magick未将svg文件转换为jpg

Php Image Magick未将svg文件转换为jpg,php,cakephp,imagemagick,Php,Cakephp,Imagemagick,我正在使用Image Magick库将.svg文件转换为jpg,但它正在创建一个空白图像。我已经检查了很多论坛,但无法找出它的问题。我有一个文件名abc.svg,其中包含以下代码: <?xml version="1.0"?> <svg xmlns="http://www.w3.org/2000/svg" width="12cm" height="12cm"> <g style="fill-opacity:0.7; stroke:black; stroke-width

我正在使用Image Magick库将.svg文件转换为jpg,但它正在创建一个空白图像。我已经检查了很多论坛,但无法找出它的问题。我有一个文件名abc.svg,其中包含以下代码:

<?xml version="1.0"?>
<svg xmlns="http://www.w3.org/2000/svg" width="12cm" height="12cm">
<g style="fill-opacity:0.7; stroke:black; stroke-width:0.1cm;">
<circle cx="6cm" cy="2cm" r="100" style="fill:red;"transform="translate(0,50)" /> 
<circle cx="6cm" cy="2cm" r="100" style="fill:blue;"transform="translate(70,150)" />
<circle cx="6cm" cy="2cm" r="100" style="fill:green;"transform="translate(-70,150)"/>
 </g>
</svg>

我正试图通过以下命令转换它:

$convert abc.svg abc.jpg

但是我得到的文件(即abc.jpg是空的)

请帮我解决这个问题,这样我才能继续做这件事


提前感谢。

这可能是因为JPEG不支持透明度,并且误解了SVG的不透明度。您可以尝试先用背景色展平SVG,然后将其转换为JPEG

convert image.svg  -background gray  -flatten  output.jpg
convert abc.svg abc.jpg

首先,您的SVG文件有错误。您在三个圆中的
transform
属性之前缺少一个空格。在我修复它之后,我可以使用ImageMagick(6.6.9-7 from)进行转换

但是当我在ImageMagick中尝试你的文件时,它不会给我一个空文件。它给出了一些错误,并且根本没有输出文件。您的SVG文件是否在任何其他程序中工作,例如?您的ImageMagick副本是否处理其他SVG文件