module Screencork

Constants

IMAGE_FORMATS
VERSION

Public Class Methods

render(url, format, opts = {}) click to toggle source
# File lib/screencork.rb, line 15
def render(url, format, opts = {})
  result = run_phantom(url, format, opts)
  raise_if_error! result
  format == :pdf ? result : Base64.decode64(result)
end
run_phantom(url, format, opts = {}) click to toggle source
# File lib/screencork.rb, line 21
def run_phantom(url, format, opts = {})
  format, opts = format.to_s, opts.to_json
  log_command(url, format, opts)
  Phantomjs.run(render_script_path, url, format, opts)
end
screen(*args) click to toggle source
# File lib/screencork.rb, line 11
def screen(*args)
  Screen.new(*args)
end

Private Class Methods

log_command(url, format, opts = {}) click to toggle source
# File lib/screencork.rb, line 29
def log_command(url, format, opts = {})
  puts [Phantomjs.path, render_script_path, url, format, opts.inspect.inspect].join(' ')
end
raise_if_error!(result) click to toggle source
# File lib/screencork.rb, line 33
def raise_if_error!(result)
  return if !result.valid_encoding?
  error_match = /Error: /.match(result)
  return if error_match.nil?
  raise ScreencorkError.new(error_match.post_match)
end
render_script_path() click to toggle source
# File lib/screencork.rb, line 40
def render_script_path
  @render_script_path ||= File.expand_path('../screencork/render.js', __FILE__)
end