2013-04-26 37 views
2

我使用Docsplit使用Ruby +如何將pdf拆分爲單獨的頁面?

Docsplit.extract_pages("my.pdf"). 

分裂pdf進入頁面,但我想要的頁面限制爲4。我試圖

Docsplit.extract_pages("my.pdf", :pages => 1..4) 

這是不工作..

燦任何人建議我該做什麼

+0

':pages'參數是否被忽略,或者有錯誤? – 2013-04-26 10:22:48

+0

沒有錯誤。它被忽略..你可以任何其他方式建議我 – Srinivasan 2013-04-26 10:25:47

+0

你可以在這裏粘貼寶石鏈接? – fotanus 2013-04-26 12:18:30

回答

0
  1. 安裝pdftk在您的電腦,如果沒有這樣做,並設置路徑相應
  2. 從的lib/docscript/page_extractor.rb刪除逃逸:18文件像這樣:

    PDFTK#{ESCAPE [PDF]}同步輸出# {ESCAPE [page_path]} 2> & 1"

變化:

pdftk #{pdf} burst output #{page_path} 2>&1" 
  1. 通過DEF ault,gem會忽略你給出的頁面範圍,它會在每個頁面上創建一個pdf文件。如果您對此感到滿意,則輸出頁面將與您的輸入文件在同一個文件夾中創建。

然而,最簡單的解決方案恕我直言,是隻使用直接二進制PDFTK,這是​​相當簡單:提取1-4頁,你可以使用這個片段:

in_file = 'IN.pdf' 
range = 1..4 
range_s = range.to_s.gsub('..', '-') 
cmd = "pdftk.exe #{in_file} cat #{range_s} output pages#{range_s}.pdf" 
res = `cmd`.chomp 

這工作,提供那pdftk可執行文件在你的PATH中

相關問題