2011-09-12 40 views
1

我正在開發一些蝦報告,並遇到一個問題,我用下面的代碼繪製的任何線條只會在最後一頁中呈現。線不呈現

horizontal_line(0, 200, :at => y) 

它每頁調用一次。

我的代碼是比較複雜的,所以我現在試着找出問題張貼在這裏,孤立代碼如下

require 'prawn' 

a = Prawn::Document.new(:page_size => 'A4', :margin => [20,20,20,20]) 
a.font('Times-Roman') 
a.horizontal_line(10, 400, :at => 140) 
a.text_box('Test Text', :size => 50, :at => [2, 100], :width => 400) 
puts a.render 

對於我驚訝的是,它didn't具有單頁文檔甚至工作。只有「測試文本」正在呈現。這讓我覺得我在頁面設置或類似的事情上做錯了什麼。

回答

2

找出問題所在。

正確的使用將是:

require 'prawn' 

a = Prawn::Document.new(:page_size => 'A4', :margin => [20,20,20,20]) 
a.font('Times-Roman') 
a.stroke do 
    a.horizontal_line(10, 400, :at => 140) 
end 
a.text_box('Test Text', :size => 50, :at => [2, 100], :width => 400) 
puts a.render