Method: Postdoc::Client#print_document

Defined in:
lib/postdoc/client.rb


33
34
35
36
37
38
39
40
41
42
43
44
# File 'lib/postdoc/client.rb', line 33

def print_document(file_path, settings: PrintSettings.new)
  client.send_cmd 'Page.enable'
  client.send_cmd 'Page.navigate', url: "file://#{file_path}"
  client.wait_for 'Page.loadEventFired'

  # prevent race condition
  sleep 0.1 if settings.slow_pc

  response = client.send_cmd 'Page.printToPDF', settings.to_cmd

  Base64.decode64 response['data']
end