Fix #3807: Increase avatars to 400x400 max (#6651)

But do not upscale when they are smaller
This commit is contained in:
Eugen Rochko 2018-03-06 06:29:01 +01:00 committed by GitHub
parent 3008a0f73a
commit ba865c44d8
2 changed files with 6 additions and 2 deletions

View file

@ -7,8 +7,8 @@ module AccountAvatar
class_methods do class_methods do
def avatar_styles(file) def avatar_styles(file)
styles = { original: { geometry: '120x120#', file_geometry_parser: FastGeometryParser } } styles = { original: { geometry: '400x400#', file_geometry_parser: FastGeometryParser } }
styles[:static] = { geometry: '120x120#', format: 'png', convert_options: '-coalesce', file_geometry_parser: FastGeometryParser } if file.content_type == 'image/gif' styles[:static] = { geometry: '400x400#', format: 'png', convert_options: '-coalesce', file_geometry_parser: FastGeometryParser } if file.content_type == 'image/gif'
styles styles
end end

View file

@ -4,6 +4,10 @@ module Paperclip
class LazyThumbnail < Paperclip::Thumbnail class LazyThumbnail < Paperclip::Thumbnail
def make def make
return File.open(@file.path) unless needs_convert? return File.open(@file.path) unless needs_convert?
min_side = [@current_geometry.width, @current_geometry.height].min
options[:geometry] = "#{min_side.to_i}x#{min_side.to_i}#" if @target_geometry.square? && min_side < @target_geometry.width
Paperclip::Thumbnail.make(file, options, attachment) Paperclip::Thumbnail.make(file, options, attachment)
end end