在Rails 3.0中使用CarrierWave你會怎麼做代碼 將寬度大於500像素的圖像調整爲500像素寬,並適當調整高度 - 保持相同的初始比例從寬度到高度。CarrierWave並調整大小到特定寬度
回答
假設你正在使用RMagick或MiniMagick,該行添加到您的上傳類:
process :resize_to_fit => [500]
更多信息:
http://carrierwave.rubyforge.org/rdoc/classes/CarrierWave/RMagick.html#M000064 http://www.imagemagick.org/RMagick/doc/ image3.html#resize_to_fit
這將炸燬小圖像以及縮小大圖像。這個問題只是詢問縮小的大圖像: 'process:resize_to_limit => [500]' –
你可以在進入這段邏輯的過程中詢問圖像寬度嗎?然後使用,如果其他構造。 – BuddyJoe
你想要做的究竟是什麼? –
我知道這是一個老問題,但我需要類似的東西。
我希望圖像被調整大小,如果他們大於給定的大小,但不擴大,如果他們更小。
resize_to_limit(寬度,高度)
調整圖像的大小,以適應指定的尺寸範圍內,同時保持原始的寬高比。如果圖像大於指定尺寸,將只調整圖像大小。生成的圖像可能比較小尺寸中指定的更短或更窄,但不會大於指定值。
詳情:http://carrierwave.rubyforge.org/rdoc/classes/CarrierWave/MiniMagick.html#M000051
如果你只想限制寬度,使用:
process :resize_to_limit => [500, -1]
及用途:
process :resize_to_limit => [-1, 500]
只限制高度。
它拋出的高度必須> = 0:-1' – MaicolBen
process :resize_to_limit => [500, 0]
這將處理圖像不超過500px,同時保留適當的縱橫比和允許任何高度。
將此與carrierwave 0.10.0和mini_magic 3.6.0一起使用會導致圖像縮小至1x1像素。相反,使用'[500,nil]'作爲參數對我起作用。 – efatsi
- 1. 使用ffmpeg調整大小到特定的寬度和高度
- 2. FancyBox調整大小寬度
- 3. 調整大小和特定的寬度和高度MongoDB + GridFS + PHP
- 4. 調整大小容器,最大寬度
- 5. 在窗口調整大小的iframe的寬度調整大小
- 6. 寬度:調整窗口大小(CSS)時調整大小100%
- 7. 使用jQuery調整大小後調整大小後的寬度
- 8. 在窗口調整大小元素寬度調整大小jquery
- 9. 禁用自動調整大小寬度
- 10. 顯示大小/寬度調整
- 11. Textarea寬度自動調整大小
- 12. jquery調整大小適用父寬度
- 13. 根據寬度調整圖像大小
- 14. 調整窗口大小的div寬度
- 15. 窗口寬度和調整大小
- 16. SL3 TimePicker寬度調整大小
- 17. 動畫寬度調整大小100%
- 18. 調整窗口大小的Webview的寬度/高度調整大小
- 19. 使用指定的高度和寬度調整圖像大小
- 20. CarrierWave:調整默認圖像的大小
- 21. CarrierWave無法調整大小/ Minimagick
- 22. 使用Carrierwave調整圖像大小
- 23. 當div調整大小時的比例高度到寬度
- 24. JQuery的可調整大小沒有達到最大寬度
- 25. 窗口大小調整時禁用調整大小特定格
- 26. 調整大小DIV寬度自動適應一段的寬度
- 27. 檢查剩餘寬度並調整大小DIV
- 28. Highchart消失在調整大小,並沒有採取父寬度
- 29. 在調整大小「GET寬度」,並設置「FUNCTION」
- 30. JqGrid寬度調整大小調整瀏覽器大小的問題
的可能重複[Carrierwave - 調整圖像大小,以固定的寬度(http://stackoverflow.com/questions/8570181/carrierwave-resizing-images-to-fixed-width ) –
它不是重複的 - 這是關於保持縱橫比固定的一個維度。 – sevenseacat