Spec-Zone.ru › Ruby on Rails 5.2

класс ActiveStorage::Analyzer::ImageAnalyzer

Родитель:
ActiveStorage::Analyzer

Извлекает ширину и высоту в пикселях из изображения blob.

Если изображение содержит данные EXIF, указывающие, что его угол составляет 90 или 270 градусов, для удобства ширина и высота меняются местами.

Пример:

ActiveStorage::Analyzer::ImageAnalyzer.new(blob).metadata
# => { width: 4104, height: 2736 }

Этот анализатор полагается на стороннюю библиотеку MiniMagick. MiniMagick требует системной библиотеки ImageMagick.

Публичные Классовые Методы

accept?(blob) Показать исходный код
# File activestorage/lib/active_storage/analyzer/image_analyzer.rb, line 16
def self.accept?(blob)
  blob.image?
end

Публичные Экземплярные Методы

metadata() Показать исходный код
# File activestorage/lib/active_storage/analyzer/image_analyzer.rb, line 20
def metadata
  read_image do |image|
    if rotated_image?(image)
      { width: image.height, height: image.width }
    else
      { width: image.width, height: image.height }
    end
  end
rescue LoadError
  logger.info "Skipping image analysis because the mini_magick gem isn't installed"
  {}
end

© 2004–2018 David Heinemeier Hansson
Licensed under the MIT License.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API