class Abrizer::Sprites

Public Class Methods

new(filename, output_dir=nil) click to toggle source
# File lib/abrizer/sprites.rb, line 4
def initialize(filename, output_dir=nil)
  @filename = filename
  @output_directory = File.join output_dir, 'sprites'
  # TODO: make video sprites options configurable
  @options = {
    seconds: 10,
    width: 160,
    columns: 4,
    group: 20,
    gif: false,
    keep_images: true
  }
end

Public Instance Methods

create() click to toggle source
# File lib/abrizer/sprites.rb, line 18
def create
  processor = VideoSprites::Processor.new(@filename, @output_directory, @options)
  processor.process
  FileUtils.chmod_R "go+r", @output_directory
  optimize_images
end
individual_image_glob() click to toggle source
# File lib/abrizer/sprites.rb, line 50
def individual_image_glob
  File.join @output_directory, "images/*.jpg"
end
individual_image_paths() click to toggle source
# File lib/abrizer/sprites.rb, line 46
def individual_image_paths
  Dir.glob(individual_image_glob)
end
optimize_images() click to toggle source
# File lib/abrizer/sprites.rb, line 25
def optimize_images
  optimize_sprites
  optimize_individual_images
end
optimize_individual_images() click to toggle source
# File lib/abrizer/sprites.rb, line 42
def optimize_individual_images
  `jpegoptim #{individual_image_paths.join(' ')}`
end
optimize_sprites() click to toggle source
# File lib/abrizer/sprites.rb, line 30
def optimize_sprites
  `jpegoptim #{sprite_paths.join(' ')}`
end
sprite_paths() click to toggle source
# File lib/abrizer/sprites.rb, line 34
def sprite_paths
  Dir.glob(sprites_glob)
end
sprites_glob() click to toggle source
# File lib/abrizer/sprites.rb, line 38
def sprites_glob
  File.join @output_directory, "*.jpg"
end