Class: ReportBuilder::Table::PdfBuilder
- Inherits:
-
ElementBuilder
- Object
- ElementBuilder
- ReportBuilder::Table::PdfBuilder
- Defined in:
- lib/reportbuilder/table/pdfbuilder.rb
Overview
Text Builder for ReportBuilder::Table objects.
Uses Aaron Tinio’s text-table gem
Instance Method Summary collapse
- #generate ⇒ Object
-
#parse_row(row) ⇒ Object
Parse a row.
Methods inherited from ElementBuilder
Constructor Details
This class inherits a constructor from ReportBuilder::ElementBuilder
Instance Method Details
#generate ⇒ Object
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/reportbuilder/table/pdfbuilder.rb', line 10 def generate() t=@element @pdf=@builder.pdf @rowspans=[] @pdf.text t.name, :size=>14 return if t.header.size+t.rows.size==0 has_header=t.header.size>0 if has_header =t..merge({:headers=>t.header}) @pdf.table(t.rows.map{|row| parse_row(row)}, ) do row(0).style(:style => :bold, :background_color => 'cccccc') end else @pdf.table(t.rows.map{|row| parse_row(row)}, t.) end end |
#parse_row(row) ⇒ Object
Parse a row
27 28 29 30 31 32 33 |
# File 'lib/reportbuilder/table/pdfbuilder.rb', line 27 def parse_row(row) if row==:hr [] else row end end |