Sha256: bccfe4e2ea470772093be027cc6fb923788ceb1127afe7e5560a7bb3775dc652

Contents?: true

Size: 908 Bytes

Versions: 14

Compression:

Stored size: 908 Bytes

Contents

require "rabbit/utils"

require "rabbit/image"
require "rabbit/element"
require "rabbit/parser/base"

module Rabbit
  module Parser
    class Image < Base
      push_loader(self)

      class << self
        def match?(source)
          options = {
            :prefix => "image-parser-match",
            :source  => source,
          }
          Rabbit::TemporaryFile.create(options) do |input|
            begin
              Rabbit::ImageLoader.new(input.path)
              true
            rescue Rabbit::ImageLoadError
              false
            end
          end
        end
      end

      include Element
      def parse
        options = {
          :prefix => "image-parser-parse",
          :source => @source,
        }
        TemporaryFile.create(options) do |image|
          @image = image
          @canvas << ImageTitleSlide.new(@image.path)
        end
      end
    end
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
rabbit-2.1.6 lib/rabbit/parser/image.rb
rabbit-2.1.5 lib/rabbit/parser/image.rb
rabbit-2.1.4 lib/rabbit/parser/image.rb
rabbit-2.1.3 lib/rabbit/parser/image.rb
rabbit-2.1.2 lib/rabbit/parser/image.rb
rabbit-2.1.1 lib/rabbit/parser/image.rb
rabbit-2.1.0 lib/rabbit/parser/image.rb
rabbit-2.0.9 lib/rabbit/parser/image.rb
rabbit-2.0.8 lib/rabbit/parser/image.rb
rabbit-2.0.7 lib/rabbit/parser/image.rb
rabbit-2.0.6 lib/rabbit/parser/image.rb
rabbit-2.0.5 lib/rabbit/parser/image.rb
rabbit-2.0.4 lib/rabbit/parser/image.rb
rabbit-2.0.3 lib/rabbit/parser/image.rb