class Poppler::Document

Public Class Methods

new(*args) click to toggle source
# File poppler/lib/poppler/document.rb, line 22
def initialize(*args)
  if args.size == 1 and args[0].is_a?(Hash)
    options = args[0]
    data = options[:data]
    uri = options[:uri]
    path = options[:path]
    stream = options[:stream]
    length = options[:length]
    file = options[:file]
    password = options[:password]

    if data
      initialize_new_from_data(data, password)
    elsif uri
      initialize_new_from_file(uri, password)
    elsif path
      uri = ensure_uri(path)
      initialize_new_from_file(uri, password)
    elsif stream
      if length.nil?
        raise(ArgumentError,
              "must specify :length for :stream: #{options.inspect}")
      end
      initialize_new_from_stream(stream, length, password)
    elsif file
      if file.is_a?(String)
        initialize(path: file, password: password)
      else
        initialize_new_from_gfile(file, password)
      end
    else
      message =
        "must specify one of :data, :uri, :path, :stream or :file: " +
        options.inspect
      raise(ArgumentError, message)
    end
  else
    uri_or_data, password = args
    if pdf_data?(uri_or_data)
      initialize_new_from_data(uri_or_data, password)
    else
      uri = ensure_uri(uri_or_data)
      initialize_new_from_file(uri, password)
    end
  end
end
Also aliased as: initialize_raw

Public Instance Methods

each() { |get_page(i)| ... } click to toggle source
# File poppler/lib/poppler/document.rb, line 71
def each
  return to_enum(__method__) unless block_given?

  n_pages.times do |i|
    yield get_page(i)
  end
end
index_iter() click to toggle source
# File poppler/lib/poppler/document.rb, line 89
def index_iter
  IndexIter.new(self)
end
initialize_raw(*args)
Alias for: new
save(uri) click to toggle source
# File poppler/lib/poppler/document.rb, line 80
def save(uri)
  save_raw(ensure_uri(uri))
end
Also aliased as: save_raw
save_a_copy(uri) click to toggle source
# File poppler/lib/poppler/document.rb, line 85
def save_a_copy(uri)
  save_a_copy_raw(ensure_uri(uri))
end
Also aliased as: save_a_copy_raw
save_a_copy_raw(uri)
Alias for: save_a_copy
save_raw(uri)
Alias for: save