prawn-table set header的行背景颜色

时间:2015-11-16 10:25:19

标签: ruby-on-rails prawn

pdf.table([header, row1, row2], width: 490, cell_style: { size: 7, align: :center }) do
  style(row(0), padding: [4,2], font: "#{Prawn::BASEDIR}/data/fonts/DejaVuSans-Bold.ttf")
  # style(row(0).columns(2..3), width: 10 )
  # style(row(0), cell_style: {background_color: "#f5f5dc"} )
  style(row(1), padding: [16,10])
  style(row(1).columns(-2..-1), align: :right)
  style(row(2).column(0), borders: [])
  style(row(2).column(-2..-1), padding: [6,10], align: :right)
end

我希望row(0)具有背景颜色,但无法找到方法(请参阅注释掉的行 - 这些行不起作用)。

我使用prawn-railsprawn-table宝石。

谢谢!

1 个答案:

答案 0 :(得分:0)

好的..我提问时太快了。

以下是how you do that(使用row_colors选项):

pdf.table([header, row1, row2], width: 490, cell_style: { size: 7, align: :center}, row_colors: ['F0F0A3', nil, nil]) do
  style(row(0), padding: [4,2], font: "#{Prawn::BASEDIR}/data/fonts/DejaVuSans-Bold.ttf")
  style(row(1), padding: [16,10])
  style(row(1).columns(-2..-1), align: :right)
  style(row(2).column(0), borders: [])
  style(row(2).column(-2..-1), padding: [6,10], align: :right)
end

我不认为,这是实现标题背景颜色的最佳方式,但我所做的只是为每一行设置颜色(第一行实际为颜色,每个左边为nil)。