ruby on rails 3 - type - Cambiar el tamaño de la imagen original en Paperclip
rails paperclip url (1)
Paperclip almacena las imágenes originales en la carpeta "original". ¿Hay una manera de cambiar el tamaño de las imágenes originales? Quiero reducir los originales para ahorrar espacio en el disco.
Entonces, por ejemplo, si el visitante carga una foto con 2592x1936, quiero almacenarla como 1024x1024, de la misma manera que configuramos las dimensiones para: imágenes de pulgar en: estilos
Actualización (resuelto)
Descubrí cómo cambiar el tamaño de las imágenes originales automáticamente en la carga. Solo hay que añadir : original a los estilos:
class MyModel < ActiveRecord::Base
has_attached_file :photo,
:styles => { :original => "1024x1024>", :thumb => "150x150>" }
end
No estoy seguro de que el clip de papel cambie de tamaño por sí mismo. Es posible que tengas que mirar a Rmagick para hacer esto. Intentaría poner en marcha RMagick (o minimagick ) y luego utilizar una devolución de llamada before_save para ejecutar un método de :resize
que escriba que le indique a RMagic que cambie el tamaño de la imagen. Su método podría verse como:
class Image < ActiveRecord::Base
belongs_to :profile
before_save :resize
def resize
self.image = self.image.resize "1024x1024"
end
end
o
class Image < ActiveRecord::Base
belongs_to :profile
before_save do
self.image = self.image.resize "1024x1024"
end
end