Sha256: b8dae7fad9018d75dc0a3028f04eb1b8330eaec0a2c91cf709313900c2286486

Contents?: true

Size: 825 Bytes

Versions: 7

Compression:

Stored size: 825 Bytes

Contents

require 'RMagick'

module SpriteFactory
  module Library
    module RMagick

      VALID_EXTENSIONS = [:png, :jpg, :jpeg, :gif]

      def self.load(files)
        files.map do |filename|
          image = Magick::Image.read(filename)[0]
          {
            :filename => filename,
            :image    => image,
            :width    => image.columns,
            :height   => image.rows
          }
        end
      end

      def self.create(filename, images, width, height)
        target = Magick::Image.new(width,height)
        target.opacity = Magick::MaxRGB
        images.each do |image|
          target.composite!(image[:image], image[:x], image[:y], Magick::SrcOverCompositeOp)
        end
        target.write(filename)
      end

    end # module RMagick
  end # module Library
end # module SpriteFactory

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
sprite-factory-1.5.1 lib/sprite_factory/library/rmagick.rb
sprite-factory-1.5.0 lib/sprite_factory/library/rmagick.rb
sprite-factory-1.4.2 lib/sprite_factory/library/rmagick.rb
sprite-factory-1.4.1 lib/sprite_factory/library/rmagick.rb
sprite-factory-1.3.0 lib/sprite_factory/library/rmagick.rb
sprite-factory-1.2.0 lib/sprite_factory/library/rmagick.rb
sprite-factory-1.0.0 lib/sprite_factory/library/rmagick.rb