summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorRandy Morgan <[email protected]>2012-04-13 09:13:10 +0900
committerRandy Morgan <[email protected]>2012-04-13 09:13:10 +0900
commita180f6b9e0e650973abdc761183737bf3551d42d (patch)
tree7d53c5ac2a6bd0d4c298b0d92e3ae1fde43e798a
parentaf788ce86ebcc06086218d91494242021fbade6d (diff)
downloadcaxlsx-a180f6b9e0e650973abdc761183737bf3551d42d.tar.gz
caxlsx-a180f6b9e0e650973abdc761183737bf3551d42d.zip
some styling updates for this example
-rw-r--r--examples/real_example.rb59
1 files changed, 32 insertions, 27 deletions
diff --git a/examples/real_example.rb b/examples/real_example.rb
index 320aeec7..62b80cca 100644
--- a/examples/real_example.rb
+++ b/examples/real_example.rb
@@ -1,47 +1,52 @@
$LOAD_PATH.unshift "#{File.dirname(__FILE__)}/../lib"
+
require 'axlsx'
p = Axlsx::Package.new
wb = p.workbook
-page_header = wb.styles.add_style :bg_color => "DD", :sz => 16, :b => true, :alignment => {:horizontal => :center}
-table_title = wb.styles.add_style :b => true, :alignment => { :horizontal => :center }
-col_header = wb.styles.add_style :bg_color => "FF95A39D", :b => true, :alignment => {:indent => 1}
-label = wb.styles.add_style :alignment => { :indent => 1 }
-money = wb.styles.add_style :num_fmt => 5
-# The first sheet in the workbook is a summary of data from the second sheet.
wb.add_worksheet do |sheet|
+ styles = wb.styles
+ page_header = styles.add_style :bg_color => "DD", :sz => 16, :b => true, :alignment => {:horizontal => :center}
+ table_title = styles.add_style :b => true, :alignment => { :horizontal => :center }
+ indented_col_header = styles.add_style :bg_color => "FFDFDEDF", :b => true, :alignment => {:indent => 1}
+ col_header = styles.add_style :bg_color => "FFDFDEDF", :b => true, :alignment => { :horizontal => :center }
+ label = styles.add_style :alignment => { :indent => 1 }
+ # This is the format id for currency. When using predetermined a format id you dont need to specify the format code.
+ # See in the NumFmt class documentation for a list of format id.
+ money = styles.add_style :num_fmt => 5
+ total = styles.add_style :b => true,:bg_color => "FFDFDEDF"
+ total_money = styles.add_style :b => true, :num_fmt => 5,:bg_color => "FFDFDEDF"
+
sheet.add_row
+ # we use an array here because we do not want to style the first cell, only the second.
sheet.add_row [nil, "College Budget"], :style => [nil, page_header]
- sheet.merged_cells << "B2:F2"
sheet.add_row
+
sheet.add_row [nil, "What's coming in this month.", nil, nil, "How am I doing"], :style => table_title
- sheet.merged_cells << "B4:C4"
- sheet.merged_cells << "E4:F4"
- sheet.add_row [nil, "Item", "Amount", nil, "Item", "Amount"], :style => col_header
+ sheet.add_row [nil, "Item", "Amount", nil, "Item", "Amount"], :style => [nil, indented_col_header, col_header, nil, indented_col_header, col_header]
sheet.add_row [nil, "Estimated monthly net income", 500, nil, "Monthly income", "=C9"], :style => [nil, label, money, nil, label, money]
- sheet.add_row [nil, "Financial Awards", 100, nil, "Monthly expenses", "=C27"], :style => [nil, label, money, nil, label, money]
+ sheet.add_row [nil, "Financial aid", 100, nil, "Monthly expenses", "=C27"], :style => [nil, label, money, nil, label, money]
sheet.add_row [nil, "Allowance from mom & dad", 20000, nil, "Semester expenses", "=F19"], :style => [nil, label, money, nil, label, money]
- sheet.add_row [nil, "Total", "=SUM(C6:C8)", nil, "Difference", "=F6 - SUM(F7:F8)"]
+ sheet.add_row [nil, "Total", "=SUM(C6:C8)", nil, "Difference", "=F6 - SUM(F7:F8)"], :style => [nil, total, total_money, nil, total, total_money]
sheet.add_row
+
sheet.add_row [nil, "What's going out this month.", nil, nil, "Semester Costs"], :style => table_title
- sheet.merged_cells << "B11:C11"
- sheet.merged_cells << "E11:F11"
- sheet.add_row [nil, "Item", "Amount", nil, "Item", "Amount"], :style => col_header
+ sheet.add_row [nil, "Item", "Amount", nil, "Item", "Amount"], :style => [nil, indented_col_header, col_header, nil, indented_col_header, col_header]
sheet.add_row [nil, "Rent", 650, nil, "Tuition", 200], :style => [nil, label, money, nil, label, money]
sheet.add_row [nil, "Utilities", 120, nil, "Lab fees", 50], :style => [nil, label, money, nil, label, money]
sheet.add_row [nil, "Cell phone", 100, nil, "Other fees", 10], :style => [nil, label, money, nil, label, money]
sheet.add_row [nil, "Groceries", 75, nil, "Books", 150], :style => [nil, label, money, nil, label, money]
sheet.add_row [nil, "Auto expenses", 0, nil, "Deposits", 0], :style => [nil, label, money, nil, label, money]
sheet.add_row [nil, "Student loans", 0, nil, "Transportation", 30], :style => [nil, label, money, nil, label, money]
- sheet.add_row [nil, "Other loans", 350, nil, "Total", "=SUM(F13:F18)"]
- sheet.add_row [nil, "Credit cards", 450]
- sheet.add_row [nil, "Insurance", 0]
- sheet.add_row [nil, "Laundry", 10]
- sheet.add_row [nil, "Haircuts", 0]
- sheet.add_row [nil, "Medical expenses", 0]
- sheet.add_row [nil, "Entertainment", 500]
- sheet.add_row [nil, "Miscellaneous", 0]
- sheet.add_row [nil, "Total", "=SUM(C13:C26)"]
+ sheet.add_row [nil, "Other loans", 350, nil, "Total", "=SUM(F13:F18)"], :style => [nil, label, money, nil, total, total_money]
+ sheet.add_row [nil, "Credit cards", 450], :style => [nil, label, money]
+ sheet.add_row [nil, "Insurance", 0], :style => [nil, label, money]
+ sheet.add_row [nil, "Laundry", 10], :style => [nil, label, money]
+ sheet.add_row [nil, "Haircuts", 0], :style => [nil, label, money]
+ sheet.add_row [nil, "Medical expenses", 0], :style => [nil, label, money]
+ sheet.add_row [nil, "Entertainment", 500], :style => [nil, label, money]
+ sheet.add_row [nil, "Miscellaneous", 0], :style => [nil, label, money]
+ sheet.add_row [nil, "Total", "=SUM(C13:C26)"], :style => [nil, total, total_money]
sheet.add_chart(Axlsx::Pie3DChart) do |chart|
chart.title = sheet["B11"]
chart.add_series :data => sheet["C13:C26"], :labels => sheet["B13:B26"]
@@ -54,7 +59,7 @@ wb.add_worksheet do |sheet|
chart.start_at 7, 16
chart.end_at 12, 31
end
- sheet.column_widths 2, 23, nil, 2, 23, nil, 2
+ sheet.merged_cells.concat ["B4:C4","E4:F4","B11:C11","E11:F11","B2:F2"]
+ sheet.column_widths 2, nil, nil, 2, nil, nil, 2
end
-
-p.serialize 'real_example.xlsx'
+p.serialize 'axlsx.xlsx'