module BrInvoicesPdf::Util::PdfRenderer
Constants
- AUTO_HEIGHT_MOCK
Public Instance Methods
generate_pdf(data, options, renderers)
click to toggle source
:reek: FeatureEnvy
# File lib/br_invoices_pdf/util/pdf_renderer.rb, line 13 def generate_pdf(data, options, renderers) page_width = Util::BaseRenderer.page_paper_width(options[:page_size]) data[:additional_variables] = options[:additional_variables] || {} Prawn::Document.new(options.merge(page_size: [page_width, AUTO_HEIGHT_MOCK])) do |pdf| pdf_content(pdf, data, page_width: page_width, renderers: renderers) end end
pdf_content(pdf, data, options)
click to toggle source
# File lib/br_invoices_pdf/util/pdf_renderer.rb, line 23 def pdf_content(pdf, data, options) pdf.font_size(7) do options[:renderers].each do |renderer| renderer.execute(pdf, data) end page = pdf.page page.dictionary.data[:MediaBox] = [0, pdf.y - page.margins[:bottom], options[:page_width], AUTO_HEIGHT_MOCK] end end