Sha256: aa333114cdc319b89b6084cfd13f256acbd27ecf18175badc6b127bf32aeed8c

Contents?: true

Size: 591 Bytes

Versions: 3

Compression:

Stored size: 591 Bytes

Contents

module Prawn
  def self.image_handler
    @image_handler ||= ImageHandler.new
  end

  class ImageHandler
    def initialize
      @handlers = []
    end

    def register(handler)
      @handlers.delete(handler)
      @handlers.push handler
    end

    def register!(handler)
      @handlers.delete(handler)
      @handlers.unshift handler
    end

    def find(image_blob)
      handler = @handlers.find{ |h| h.can_render? image_blob }

      return handler if handler

      raise Prawn::Errors::UnsupportedImageType,
            "image file is an unrecognised format"
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
prawn-0.13.2 lib/prawn/image_handler.rb
prawn-0.13.1 lib/prawn/image_handler.rb
prawn-0.13.0 lib/prawn/image_handler.rb