Browse Source

Force convert to JPG for preview card thumbnails to avoid animations (#7109)

* Force convert to JPG for preview card thumbnails to avoid animations

Fix #7093

* Conditionally convert to JPG only if original is GIF
Coalesce and strip on all formats to ensure no animated APNGs
master
Eugen Rochko 6 years ago
committed by GitHub
parent
commit
bfe26ef67b
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 18 additions and 1 deletions
  1. +18
    -1
      app/models/preview_card.rb

+ 18
- 1
app/models/preview_card.rb View File

@ -34,7 +34,7 @@ class PreviewCard < ApplicationRecord
has_and_belongs_to_many :statuses
has_attached_file :image, styles: { original: { geometry: '400x400>', file_geometry_parser: FastGeometryParser } }, convert_options: { all: '-quality 80 -strip' }
has_attached_file :image, styles: ->(f) { image_styles(f) }, convert_options: { all: '-quality 80 -strip' }
include Attachmentable
@ -52,6 +52,23 @@ class PreviewCard < ApplicationRecord
save!
end
class << self
private
def image_styles(f)
styles = {
original: {
geometry: '400x400>',
file_geometry_parser: FastGeometryParser,
convert_options: '-coalesce -strip',
},
}
styles[:original][:format] = 'jpg' if f.instance.image_content_type == 'image/gif'
styles
end
end
private
def extract_dimensions

Loading…
Cancel
Save