如何在Rails中使用Axlsx Gem创建页眉和页脚?

时间:2019-03-06 05:44:30

标签: ruby-on-rails ruby-on-rails-3 ruby-on-rails-4 rubygems axlsx

我正在尝试在轨道中使用以下代码创建页眉和页脚。但这不是在Excel文件中创建页眉和页脚。我哪里做错了?

     xlsx_package = Axlsx::Package.new
        wb = xlsx_package.workbook
        header_footer = {:different_first => false, odd_header:'&C&14 &B&UHeader Text', odd_footer:'&L&11&BPage &P &C&11Footer Text &R&11&ILast updated:&D'}
        wb.add_worksheet(name: "header footer", :header_footer => header_footer) do |sheet|
             sheet.add_row ["First Column", "Second", "Third"]
             sheet.add_row [1, 2, 3]
       end

2 个答案:

答案 0 :(得分:0)

我建议您添加一行并将样式属性应用于此行。 在下面的代码中,我将背景颜色更改为灰色,并将标题的文本设置为粗体。希望这会有所帮助!

p = Axlsx::Package.new
wb = p.workbook

head_style = wb.styles.add_style bg_color: "DDDDDD",  b: true

wb.add_worksheet(name: "Sheet 1") do |sheet|
  sheet.add_row %w(Name Age)
  sheet.row_style 0, head_style

  sheet.add_row ['Tom',20]
  sheet.add_row ['Pete',22]

end

答案 1 :(得分:0)

来自文档here

header_footer = {:different_first => false, :odd_header => '&L&F : &A&R&D &T', :odd_footer => '&C&Pof&N'}
wb.add_worksheet(:name => "header footer", :header_footer => header_footer) do |sheet|
  sheet.add_row ["this sheet has a header and a footer"]
end