2011-12-18 85 views
0

在Ruby on Rails應用程序中,我創建了使用prawn(o.12.0)和prawnto的pdf。在pdf中有一個表格,問題是我無法將桌子對齊。Rubyonrails - 生成Pdf使用prawn.how來對齊表格中心在pdf

當我給:align => center時,它會拋出一個錯誤爲undefined。

我該如何解決這個問題。

pdf.bounding_box([5, 705], :width => 530, :height => 680) do 
pdf.stroke_bounds 

pdf.move_down(20) 
pdf.text "Demographics", :size => 15, :style => :bold, :align => :center 


invoiceData = [["Facebook Pushes - Total users","Users Shared Exercise For Week","Users Shared Exercise For Day","Users Share TestResult"], 
[100","20","50","30"]] 

pdf.table(invoiceData,:row_colors => ["FDFFFF", "FFFFFF"], :cell_style => { :border_width => 0.1,:border_color=> 'C1C1C1' }) do |table| 

end 

pdf.bounding_box([pdf.bounds.right - 50,pdf.bounds.bottom], :width => 60, :height => 20) do 
pagecount = pdf.page_count 
pdf.text "Page #{pagecount}" 
end 
    end 

[畫面]

http://i.stack.imgur.com/pqBtA.png

回答

1
pdf.bounding_box([5, 705], :width => 530, :height => 680) do 
pdf.stroke_bounds 

pdf.move_down(20) 
pdf.text "Demographics", :size => 15, :style => :bold, :align => :center 

pdf.bounding_box([25,pdf.bounds.top-100], :width => 516, :height => 680) do 
invoiceData = [["Facebook Pushes - Total users","Users Shared Exercise For Week","Users Shared Exercise For Day","Users Share TestResult"], 
[100","20","50","30"]] 

pdf.table(invoiceData,:row_colors => ["FDFFFF", "FFFFFF"], :cell_style => { :border_width => 0.1,:border_color=> 'C1C1C1' }) do |table| 
end 
end 

pdf.bounding_box([pdf.bounds.right - 50,pdf.bounds.bottom], :width => 60, :height => 20) do 
pagecount = pdf.page_count 
pdf.text "Page #{pagecount}" 
end 
    end 

通過定義上述表的新邊界框likethis就可以解決這個問題

pdf.bounding_box([25,pdf.bounds.top-100], :width => 516, :height => 680) do