class Asset
def geometry(style_name='original')
def geometry(style_name='original') raise Paperclip::StyleError, "Requested style #{style_name} is not defined for this asset." unless has_style?(style_name) @geometry ||= {} begin @geometry[style_name] ||= if style_name.to_s == 'original' original_geometry else style = self.asset.styles[style_name.to_sym] original_geometry.transformed_by(style.geometry) # this can return dimensions for fully specified style sizes but not for relative sizes when there are no original dimensions end rescue Paperclip::TransformationError => e Rails.logger.warn "geometry transformation error: #{e}" original_geometry # returns a blank geometry if the real geometry cannot be calculated end end