2013-02-08 132 views
0

我有一個rails項目,我正在使用wicked_pdf從生成的html生成PDF,並且我在該pdf的每個頁面上添加了一個光滑的頁腳。很多這些頁面到PDFs實際上來自分析的word .doc或.txt文件,然後我將它們轉換爲PDF下載此頁腳。將Rails部分添加到現有PDF

但是...... PDFs也被上傳到系統中,雖然沒有解析並顯示在應用程序中,但下載後我需要它們以將頁腳作爲上面的其他文件。無論如何要做到這一點?

我不需要編輯PDF中的任何內容,只需要添加此頁腳即可。

非常感謝!

回答

1

如果它已經是一個PDF,那麼wicked_pdf將不會幫你在這裏,但你可能能夠使用蝦或PDFtk。

可以層上現有的PDF的每個頁面的底部區域的頂端部分內容有以下:

require 'prawn' 
require 'pdf-reader' 

respond_to do |format| 
    format.pdf { 
    input_filename = Rails.root.join('input.pdf') 

    page_count = PDF::Reader.new(input_filename).page_count 

    file = Prawn::Document.new(:skip_page_creation => true) do |pdf| 

     page_count.times do |num| 
     pdf.start_new_page(:template => input_filename, :template_page => num+1) 
     pdf.move_down(700) 
     pdf.text('FOOTER TEXT') 
     end 

    end 
    send_data file.render 
    } 
end 
+0

謝謝您的答覆。所以要輸出下載,我需要做'file = Prawn :: Document.generate()do | pdf |等等?然後'send_file文件'? – Sparkmasterflex 2013-02-11 19:13:01

+0

@Sparkmasterflex我建議您將此作爲上傳過程的一部分,因此轉換隻發生一次,並存儲在磁盤上,而不是每次下載。也許在觀察者身上;然後使用output_filename上的send_file,但我已更新答案以便即時生成它,前提是您知道input_filename來自哪裏。 – Unixmonkey 2013-02-11 20:42:45

相關問題