如何使用Prawn跨两个页面跨表格内容?

时间:2011-08-31 17:37:17

标签: ruby-on-rails ruby prawn

我有表格内容,基本上是一个大表,需要跨越一本打开的书的两个页面。所以想象一下,书籍或目录在你面前展开。每次翻页时,您都会看到一个跨越两个相对页面的新表。

我知道Prawn可以进行自动分页,但是有没有办法确保一个表跨页面保持在一起?换句话说,如果左侧的表格单元格中的某些文本换行导致行被放大,则下一页面上的相应行需要反映新的大小。

可以这样做吗?

1 个答案:

答案 0 :(得分:1)

如果我需要相同的要求,我会做以下的事情,请说明任何澄清:

require 'Prawn'
Prawn::Document.generate("hello.pdf") do
  table_width = 500
  separator = 100
  0.upto(1) do |i|
    start_new_page
    x = -i * (table_width + separator / 2)
    y = 0
    translate(x, y) do
      table([[
        make_cell(:content => "111111111111111", :width => table_width, :border_width => 1),
        make_cell(:content => "", :width => separator, :border_width => 0),
        make_cell(:content => "222222222222222", :width => table_width, :border_width => 1)
        ]], :width => table_width*2+separator)
      end
    end
  end

,输出应该看起来像following ...