Intentando obtener el ancho y el alto de la imagen cargada mientras aún está en el modelo en el guardado inicial.Obtención de ancho y alto de la imagen en el modelo en el clip de papel Ruby GEM
¿Alguna forma de hacerlo?
Aquí está el fragmento de código con el que he estado probando desde mi modelo. Por supuesto, falla en "instance.photo_width".
has_attached_file :photo,
:styles => {
:original => "634x471>",
:thumb => Proc.new { |instance|
ratio = instance.photo_width/instance.photo_height
min_width = 142
min_height = 119
if ratio > 1
final_height = min_height
final_width = final_height * ratio
else
final_width = min_width
final_height = final_width * ratio
end
"#{final_width}x#{final_height}"
}
},
:storage => :s3,
:s3_credentials => "#{RAILS_ROOT}/config/s3.yml",
:path => ":attachment/:id/:style.:extension",
:bucket => 'foo_bucket'
Así que estoy básicamente tratando de hacer esto para conseguir una anchura y altura miniatura personalizada en función de las dimensiones iniciales de imagen.
¿Alguna idea?
Gracias, esto me ayudó a conseguir el heigh imagen que me permitió poner dinámicamente una restricción heigh en un div que celebró una imagen y detuvo a los divs de cambio de tamaño cuando la página se recarga :) – s84
¿Han tratado de hacer que esto funcione cuando está utilizando el almacenamiento de Amazon S3? Su método funciona muy bien para cosas almacenadas localmente, pero cuando lo probé en algo almacenado en S3, recibí un error que decía que el comando 'identificar' no reconoce el objeto. ¿Alguna idea? ¡Gracias! – wuliwong
Solo para dar seguimiento, encontré esto http://stackoverflow.com/questions/3160788/can-paperclip-read-photo-geometry-off-an-s3-bucket Y ahora que vuelvo a leer su ejemplo, veo que incluye el .to_file que lo hace funcionar con el almacenamiento S3. Básicamente, solo pretenden que nunca dije nada. ¡Gracias! – wuliwong