Class: ActiveStorage::Analyzer::ImageAnalyzer
Relationships & Source Files | |
Namespace Children | |
Classes:
| |
Extension / Inclusion / Inheritance Descendants | |
Subclasses:
|
|
Super Chains via Extension / Inclusion / Inheritance | |
Class Chain:
|
|
Instance Chain:
|
|
Inherits: |
ActiveStorage::Analyzer
|
Defined in: | activestorage/lib/active_storage/analyzer/image_analyzer.rb |
Overview
Active Storage Image Analyzer
This is an abstract base class for image analyzers, which extract width and height from an image blob.
If the image contains EXIF data indicating its angle is 90 or 270 degrees, its width and height are swapped for convenience.
Example:
ActiveStorage::Analyzer::ImageAnalyzer::ImageMagick.new(blob).
# => { width: 4104, height: 2736 }
Class Attribute Summary
::ActiveStorage::Analyzer
- Inherited
.analyze_later? | Implement this method in concrete subclasses. |
Class Method Summary
::ActiveStorage::Analyzer
- Inherited
Instance Attribute Summary
::ActiveStorage::Analyzer
- Inherited
Instance Method Summary
::ActiveStorage::Analyzer
- Inherited
#metadata | Override this method in a concrete subclass. |
#download_blob_to_tempfile | Downloads the blob to a tempfile on disk. |
#instrument, #logger, #tmpdir |
Constructor Details
This class inherits a constructor from ActiveStorage::Analyzer
Class Method Details
.accept?(blob) ⇒ Boolean
Instance Method Details
#metadata
[ GitHub ]# File 'activestorage/lib/active_storage/analyzer/image_analyzer.rb', line 19
def read_image do |image| if rotated_image?(image) { width: image.height, height: image.width } else { width: image.width, height: image.height } end end end