Sha256: e3c447c29cde9562ff3c9d80c3ba75125cae4bb635b63d836170c220b0d3a252

Contents?: true

Size: 837 Bytes

Versions: 2

Compression:

Stored size: 837 Bytes

Contents

require 'rmagick'

module SpriteFactory
  module Library
    module RMagick

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

      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::QuantumRange
        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

2 entries across 2 versions & 1 rubygems

Version Path
sprite-factory-1.7.1 lib/sprite_factory/library/rmagick.rb
sprite-factory-1.7 lib/sprite_factory/library/rmagick.rb