PHP Imagick конвертировать SVG для изображения проблемы

Я не смог понять, почему я не могу сделать преобразование из SVG в изображение.

система:

Windows 2008 Server
II7
PHP 5.3.10-      Imagick is installed 

Код

$command = 'C:\imagemagick\convert.exe d:\path-to-svg-file\sample.svg d:\path-to-output-folder\sample.png 2>&1';

exec($command, $output);

ОШИБКА

array(2) {
    [0]=> string(102) "convert.exe: Must specify image size `C:/Windows/TEMP/magick-PY5hNkFu' @ error/mvg.c/ReadMVGImage/185."
    [1]=> string(126) "convert.exe: no images defined `d:\inetpub\...\output\sample.png' @ error/convert.c/ConvertImageCommand/3044."
} 

2 ответа

Решение

Вы должны указать размер:

convert -size 568x604 d:\tiger.svg d:\tiger.jpg

Как насчет SVG для других форматов изображений

 convert file.svg file.png

Я пытался конвертировать в PNG, но у меня была та же проблема, что и с JPG

SVG изображения являются векторами. У них нет присущих размеров, просто указание на то, какие линии рисовать и где. imagemagic хочет, чтобы вы указали размер целевого изображения в пикселях, которое оно должно сгенерировать для вас. это должно сделать изображение 100x100? 999,999,999x999,999,999? Ничего из этого не включено в подробности svg, поэтому вы должны предоставить его.

Другие вопросы по тегам