J'ai créé un petit morceau de code pour télécharger un fichier et le redimensionner avec imagemagik. J'utilise la fonction system ("command") pour appeler imagemagik pour redimensionner l'image, mais la sortie est un fichier de taille 0 octets. une idée de ce qui pourrait aller mal?rails, transfert d'image et redimensionnement avec imagemagik
0
A
Répondre
2
Je suggère d'utiliser RMagick, qui est une enveloppe de rubis autour de imagemagick. Cela aidera à garder les choses plus rubis, et est généralement utile à savoir.
Google aide (ou Stackoverflow pour RMagick), mais les étapes sont quelque chose comme (je suppose Rails 3):
dans application.config:
gem 'rmagick'
Ensuite, dans votre contrôleur :
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
Si vous n'êtes pas tellement envie RMagick, je suggère également faire en sorte que vous enregistrez votre fichier avant de le redimensionner (ne l'exist original?), et assurez-vous que vos chemins sont cohérente et que vous êtes en train de frapper au bon endroit sur le système de fichiers.
Questions connexes
- 1. rails RMagick - ImageMagik bug?
- 2. Apache/Rails: Transfert PKI
- 3. Redimensionnement et redimensionnement de l'image
- 4. Redimensionnement automatique avec Interface Builder et code?
- 5. transfert groupé et déclencher
- 6. transfert hôte et client
- 7. UIImageView Rotation et redimensionnement
- 8. redimensionnement avec php imagick
- 9. Redimensionnement d'image avec GDI +
- 10. Autorotation et redimensionnement
- 11. SWFObject et redimensionnement Div
- 12. Imagemagik Changer une image dpi de 400 à 72
- 13. Copie d'iPad/iPhone et redimensionnement?
- 14. Redimensionnement et lissage de l'image
- 15. ImageMagik/UNIX: Comment traiter récursivement un répertoire imbriqué de photos?
- 16. Android: Redimensionnement et redimensionnement d'une partie de l'image
- 17. Transfert d'images et jCrop et codeigniter
- 18. Problème avec le transfert JSF et la contrainte de sécurité
- 19. Redimensionnement iFrame avec jQuery UI
- 20. jQuery Noob: transfert non transfert
- 21. Redimensionnement de texte avec jQuery?
- 22. Redimensionnement Grille et grille Article
- 23. forme Redimensionnement et problème mazimizing
- 24. Création et redimensionnement d'un UIImageView
- 25. Redimensionnement d'image de base dans Ruby on Rails
- 26. Transfert de valeurs de formulaire dans un contrôleur dans Rails
- 27. Redimensionnement d'un tableau avec C
- 28. La fenêtre de déplacement et de redimensionnement interfère avec MsgWaitForMultipleObjects
- 29. Javascript redimensionnement avec le contrôle window.open et WebBrowser
- 30. ImageMagick et géométrie Edition - avec le redimensionnement>
hi ... j'ai regardé l'option rmagick, mais je l'ai votée puisqu'elle dit qu'elle n'est plus maintenue ... – Amit
Aussi en ce qui concerne les chemins de fichiers, je suis sûr que les chemins sont corrects, car il y a un nouveau fichier de taille 0 octets, donc je suis assez sûr que la commande est en cours d'exécution sur le bon fichier. Mon doute est que c'est l'utilisateur de rails instance qui cause des problèmes, mais même après avoir fait le dossier à 777, je reçois toujours la même erreur – Amit
Je l'utilise avec beaucoup de succès. Je ne savais pas qu'il n'était pas entretenu, mais il est très fonctionnel tel quel. Je dirais toujours aller avec RMagick, et puis descendre à commander seulement si nécessaire. Mais, à vous :-) – Travis