Module: Html2Pdf::Rails::MailerRendering

Defined in:
lib/html2pdf/rails/mailer_rendering.rb

Instance Method Summary collapse

Instance Method Details

#render_to_pdf_string(template: nil, layout: false, formats: [:pdf], handlers: nil, pdf_options: {}) ⇒ Object



6
7
8
9
10
11
12
13
# File 'lib/html2pdf/rails/mailer_rendering.rb', line 6

def render_to_pdf_string(template: nil, layout: false, formats: [:pdf], handlers: nil, pdf_options: {})
  # When :template is omitted, Rails resolves the template from `_prefixes`
  # (= [mailer_name]) and `action_name` via `_process_render_template_options`:
  # https://github.com/rails/rails/blob/v8.1.2/actionview/lib/action_view/rendering.rb#L177
  render_opts = { template: template, layout: layout, formats: formats, handlers: handlers }.compact
  html = render_to_string(**render_opts)
  Html2Pdf::Rails.generate(html: html, pdf_options: pdf_options)
end