Class: PDFKit::Configuration

Inherits:
Object
  • Object
show all
Defined in:
lib/pdfkit/configuration.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeConfiguration

Returns a new instance of Configuration.



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/pdfkit/configuration.rb', line 6

def initialize
  @verbose         = false
  @use_xvfb        = false
  @meta_tag_prefix = 'pdfkit-'
  @default_options = {
    :disable_smart_shrinking => false,
    :quiet => true,
    :page_size => 'Letter',
    :margin_top => '0.75in',
    :margin_right => '0.75in',
    :margin_bottom => '0.75in',
    :margin_left => '0.75in',
    :encoding => 'UTF-8'
  }
end

Instance Attribute Details

#default_optionsObject

Returns the value of attribute default_options.



3
4
5
# File 'lib/pdfkit/configuration.rb', line 3

def default_options
  @default_options
end

#meta_tag_prefixObject

Returns the value of attribute meta_tag_prefix.



3
4
5
# File 'lib/pdfkit/configuration.rb', line 3

def meta_tag_prefix
  @meta_tag_prefix
end

#root_urlObject

Returns the value of attribute root_url.



3
4
5
# File 'lib/pdfkit/configuration.rb', line 3

def root_url
  @root_url
end

#use_xvfb=(value) ⇒ Object (writeonly)

Sets the attribute use_xvfb

Parameters:

  • value

    the value to set the attribute use_xvfb to.



4
5
6
# File 'lib/pdfkit/configuration.rb', line 4

def use_xvfb=(value)
  @use_xvfb = value
end

#verbose=(value) ⇒ Object (writeonly)

Sets the attribute verbose

Parameters:

  • value

    the value to set the attribute verbose to.



4
5
6
# File 'lib/pdfkit/configuration.rb', line 4

def verbose=(value)
  @verbose = value
end

Instance Method Details

#default_wkhtmltopdfObject



26
27
28
# File 'lib/pdfkit/configuration.rb', line 26

def default_wkhtmltopdf
  @default_command_path ||= (defined?(Bundler::GemfileError) && File.exists?('Gemfile') ? `bundle exec which wkhtmltopdf` : `which wkhtmltopdf`).chomp
end

#executableObject



39
40
41
# File 'lib/pdfkit/configuration.rb', line 39

def executable
  using_xvfb? ? "xvfb-run #{wkhtmltopdf}" : wkhtmltopdf
end

#quiet?Boolean

Returns:

  • (Boolean)


47
48
49
# File 'lib/pdfkit/configuration.rb', line 47

def quiet?
  !@verbose
end

#using_xvfb?Boolean

Returns:

  • (Boolean)


43
44
45
# File 'lib/pdfkit/configuration.rb', line 43

def using_xvfb?
  @use_xvfb
end

#verbose?Boolean

Returns:

  • (Boolean)


51
52
53
# File 'lib/pdfkit/configuration.rb', line 51

def verbose?
  @verbose
end

#wkhtmltopdfObject



22
23
24
# File 'lib/pdfkit/configuration.rb', line 22

def wkhtmltopdf
  @wkhtmltopdf ||= default_wkhtmltopdf
end

#wkhtmltopdf=(path) ⇒ Object



30
31
32
33
34
35
36
37
# File 'lib/pdfkit/configuration.rb', line 30

def wkhtmltopdf=(path)
  if File.exist?(path)
    @wkhtmltopdf = path
  else
    warn "No executable found at #{path}. Will fall back to #{default_wkhtmltopdf}" unless File.exist?(path)
    @wkhtmltopdf = default_wkhtmltopdf
  end
end