0
我做了一小段代碼上傳文件,然後用imagemagik調整大小。我正在使用system(「command」)函數調用imagemagik來調整圖像大小,但輸出是大小爲0字節的文件。任何想法可能會出錯?導軌,圖片上傳和imagemagik調整
我做了一小段代碼上傳文件,然後用imagemagik調整大小。我正在使用system(「command」)函數調用imagemagik來調整圖像大小,但輸出是大小爲0字節的文件。任何想法可能會出錯?導軌,圖片上傳和imagemagik調整
我會建議使用RMagick,它是imagemagick周圍的紅寶石包裝。這將有助於保持事物更加類似ruby,並且通常對於知道有用。
谷歌將幫助(或計算器的RMagick),但步驟是一樣的東西(我假設的Rails 3):
在application.config:
gem 'rmagick'
然後,在你的控制器:
require 'RMagick'
def create
@upload_io = params[:image_field]
@filename = @upload_io.original_filename
@filepath = Rails.root.join('public', 'images', @filename)
File.open(@filepath) do |file|
file.write(image_io.read)
end
@original = Magick::Image.read(@filepath)
@thumbnail = @original.resize_to_fit 75 75
@thumbnail.write(Rails.root.join('public', 'images', 'sm_' + filename)
end
如果你不是RMagick那麼熱衷,我也建議確保您調整其大小(不原來存在嗎?),並確保您的路徑是之前正在保存文件一致,並且您確實在文件系統上找到了正確的位置。
嗨...我看着rmagick選項,但是因爲它表示不再維護它而投了票... – Amit 2010-10-30 11:03:42
同樣就文件路徑而言,我確信路徑沒問題,因爲有一個新的文件的大小爲0字節,所以我很確定命令在正確的文件上運行。我懷疑它是導致prblems的rails實例的用戶,但即使在將文件夾設置爲777後,我仍然得到相同的錯誤 – Amit 2010-10-30 11:05:36
我正在使用它,並取得了巨大成功。我並不知道它沒有被維護,但它的功能很強大。我仍然會說與RMagick一起去,然後只有在需要時才下拉命令。但是,由你決定:-) – Travis 2010-10-30 11:30:12