我正在用 ruby 制作一个小脚本,它会生成一个周计划 PDF 文件,使用 Prawn 作为 PDF 库,我正在努力设计表格的样式。我想为表格中的所有列设置一个静态宽度,这样宽度就不会取决于单元格的内容。
我已经阅读了 Prawn 项目网站的文档(那里有很多改进的空间)并搜索了几个小时,但我不知道如何为表格中的列或单元格设置宽度,或者如何设置列的样式/cells 以任何方式。我确实得到了一个具有网格布局的 PDF 文件,但单元格的大小变化很大,看起来并不那么整洁。
这没有用:
Prawn::Document.generate(@filename, :page_size => 'A4', :page_layout => :landscape) do
table(course_matrix, :headers => HEADERS, :border_style => :grid, :row_colors => ['dddddd', 'eeeeee'], :column_widths => 50)
end
这是我生成 PDF 方法的当前版本,但它也没有对单元格进行样式化:
def produce_pdf
course_matrix = DataParser.new.parse_for_pdf
Prawn::Document.generate(@filename, :page_size => 'A4', :page_layout => :landscape) do
table(course_matrix, :headers => HEADERS, :border_style => :grid, :row_colors => ['dddddd', 'eeeeee']) do |table|
table.cells.style { |cell| cell.width = 50 }
end
end
end