2013-06-04 33 views
0

我有關於IM讀取SVG圖像的問題,它真的讓我感到困擾。 對於下面的SVG圖像,ImageMagick讀取意外結果的SVG

<?xml version="1.0" standalone="no"?> 
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" 
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> 
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="100%" height="100%" viewBox="0 0 100 100"> 
    <defs> 
    <linearGradient id="grad1"> 
     <stop offset="0%" stop-color="white"/> 
     <stop offset="100%" stop-color="black"/> 
    </linearGradient> 
    </defs> 
    <rect x="10" y="10" width="80" height="80" fill="url(#grad1)" stroke="blue"/> 
</svg> 

當我使用識別-verbose sample.svg,我得到的結果與 「幾何:1×1 + 0 + 0」。但其他人得到「幾何:100x100 + 0 + 0」。似乎100x100是正確的。爲什麼會發生?

+0

不同版本的ImageMagick也許? –

回答

1

在我自己的實驗我已經注意到,Imagick的默認SVG委託具有包含問題處理SVGs:

填充= 「URL(#grad_or_imagepattern)」

至於我擔心,並在這裏解釋:http://www.imagemagick.org/discourse-server/viewtopic.php?f=3&t=23525,Imagick「可以使用其內部MSVG或RSVG的外部代表或我相信Inkscape」如果可用。

我建議你做的,以執行以下操作:1. 卸載Imagick 2.安裝 街的構成要素3.添加目錄街的構成要素與系統路徑 4.安裝Imagick

這樣,Imagick就能讓Inscape來進行轉換。 一切順利,