Sha256: 9785db63865c0218bc337f3d1ee679a70bb9f2aca8c850b623ec6ec03a4c2b9d
Contents?: true
Size: 1.14 KB
Versions: 1
Compression:
Stored size: 1.14 KB
Contents
require 'grover/version' require 'grover/utils' require 'grover/processor' require 'grover/middleware' # # Grover interface for converting HTML to PDF # class Grover # # @param [String] url URL of the page to convert # @param [Hash] options Optional parameters to pass to PDF processor # see https://github.com/GoogleChrome/puppeteer/blob/master/docs/api.md#pagepdfoptions # def initialize(url, options = {}) @url = url @root_path = options.delete :root_path @options = options end # # Request URL with provided options and create PDF # # @param [String] path Optional path to write the PDF to # @return [Array<Integer>] Byte array of the resulting PDF # def to_pdf(path = nil) options = @options.dup options[:path] = path if path result = processor.convert_pdf @url, options result['data'].pack('c*') end def inspect format( '#<%<class_name>s:0x%<object_id>p @url="%<url>s">', class_name: self.class.name, object_id: object_id, url: url ) end private def root_path @root_path ||= Dir.pwd end def processor Grover::Processor.new(root_path) end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
grover-0.2.0 | lib/grover.rb |