Как я могу разделить табличное содержимое на две страницы, используя Prawn? - PullRequest
2 голосов
/ 31 августа 2011

У меня есть табличное содержимое, в основном одна большая таблица, которая должна охватывать обе страницы открытой книги. Итак, представьте, что перед вами открыта книга или каталог. Каждый раз, когда вы переворачиваете страницу, вы видите новую таблицу, которая охватывает обе страницы.

Я знаю, что Prawn может выполнять автоматическое разбиение на страницы, но есть ли способ обеспечить совместимость таблицы на разных страницах? Другими словами, если в результате переноса текста в ячейке таблицы с левой стороны строка увеличивается, соответствующая строка на следующей странице должна отражать новый размер.

Можно ли это сделать?

1 Ответ

1 голос
/ 09 сентября 2011

если мне нужны те же требования, я сделаю что-то вроде следующего, пожалуйста, укажите для любого уточнения:

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

и вывод должен выглядеть как после ...

...