2012-05-21 94 views
4

不同下面是我測試的鏈接:http://pestnow.herokuapp.com/tester/svg左邊的圖像是SVG,右邊一個是PNG轉換。下面是轉換非常簡單的代碼:Rmagick SVG轉換比ImageMagick的

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 doesn't handle defs?這個問題曾與獲得IM做正確的轉換做。而且它,從一個簡單的「轉換test.svg test.png」

但RMagick轉換不起作用相同的命令行。在我的本地開發框中,我確實有用RVG支持編譯的ImageMagick,並修復了命令行。但我不知道如何讓RMagick以同樣的方式使用它。

此外,我希望它的東西,我需要在我的代碼來完成,而不是在服務器上所需的一些功能,因爲這個應用程序託管在Heroku和我有過他們如何安裝IM無法控制。

+2

我得出這樣的Heroku沒有在他們的ImageMagick的副本RSVG支持的結論,並已與他們聯繫,看看他們是否可以啓用它。我會用我的支持票的結論報告。 –

+0

是的,heroku已經安裝了ImageMagick,但是從我讀過的內容來看,您無法真正自定義您的設置。你可以嘗試一個不同的主機,讓你安裝的東西... – AJcodez

+1

鏈接已經死http://pestnow.herokuapp.com/tester/svg 404 – Besi

回答

0

我應該報告回來。

是的,Heroku有IM,但他們不支持它。它只是作爲他們使用的Ubuntu(我相信)的長期支持版本的一部分。我們反覆討論了幾次,他們說他們可能會在未來升級它,以及其他的linux lib/utils,但是沒有確定的時間表。我的猜測是,也許在下一個堆棧。

在此之前,我已經在我的SVG使用符號停止,不得不做變換順序一些技巧,但在大多數情況下我有事情工作。另一條建議是確保您使用的是Heroku在Dev框中使用的即時消息的精確版本。節省很多心痛。

+0

它已經有一段時間了。我可以問一下你在Heroku上運行哪個IM版本?我遇到與SVG支持相同的問題。 – Nobita

+0

以下是Heroku在該服務器上所說的內容 - 自從我第一次發佈該內容後,我不知道它是否發生了變化。 版本:ImageMagick 6.5.7-8 2012-08-17 Q16 http://www.imagemagick.org 版權:Copyright(C)1999-2009 ImageMagick Studio LLC 特性:OpenMP –