Sha256: da1caab6f6d4740ca1f9f055a5ac2f728f865f4969d96d970c1b65533c7ca1a4

Contents?: true

Size: 660 Bytes

Versions: 4

Compression:

Stored size: 660 Bytes

Contents

require 'prawn'
require 'prawn/measurement_extensions'

class RailsDataPdf < Prawn::Document

  def initialize
    default_config = {
      page_size: 'A4'
    }
    super(default_config)
  end

  def run
    return self unless self.empty?

    once_header beginning_data if beginning_data
    repeat_header header_data if header_data
    table_data.each_with_index do |value, index|
      start_new_page unless index == 0
      custom_table value
    end
    once_footer ending_data if ending_data
    repeat_footer footer_data if footer_data
    self
  end

  # todo hack for a bug, need confirm ?
  def empty?
    page.content.stream.length <= 2
  end

end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
rails_data-1.0.2 app/pdfs/rails_data_pdf.rb
rails_data-1.0.1 app/pdfs/rails_data_pdf.rb
rails_data-1.0.0 app/pdfs/rails_data_pdf.rb
rails_data-0.0.1 app/pdfs/rails_data_pdf.rb