这是我的测试的链接: http: //pestnow.herokuapp.com/tester/svg 左边的图像是 SVG,右边的是 PNG 转换。这是转换的极其简单的代码:
def self.svg_to_png(svg)
img = Magick::Image::from_blob(svg)
return img[0].to_blob {self.format = 'PNG'}
end
我一直在努力解决这个问题,并在这里回答了这个问题:SVG to PNG Conversion with ImageMagick does not handle defs? 这个问题与让 IM 正确进行转换有关。它确实,从命令行使用一个简单的“convert test.svg test.png”
但是 RMagick 转换的工作方式不同。在我的本地开发机器上,我确实使用 RVG 支持编译了 ImageMagick,并且修复了命令行。但我不知道如何让 RMagick 以同样的方式使用它。
此外,我希望它是我需要在我的代码中做的事情,而不是服务器上需要的某些功能,因为这个应用程序托管在 heroku 上,我无法控制他们如何安装 IM。