class Poppler::Document

Private Instance Methods

ensure_uri(uri) click to toggle source
# File lib/poppler.rb, line 46
def ensure_uri(uri)
  if pdf_data?(uri)
    @pdf = Tempfile.new("ruby-poppler-pdf")
    @pdf.binmode
    @pdf.print(uri)
    @pdf.close
    uri = @pdf.path
  end

  if GLib.path_is_absolute?(uri)
    GLib.filename_to_uri(uri)
  elsif /\A[a-zA-Z][a-zA-Z\d\-+.]*:/.match(uri)
    uri
  else
    GLib.filename_to_uri(File.expand_path(uri))
  end
end
pdf_data?(data) click to toggle source
# File lib/poppler.rb, line 42
def pdf_data?(data)
  /\A%PDF-1\.\d/ =~ data
end