2013-11-15 96 views
11

與PHP我必須拆分一個單一的PDF文件,其中的多個頁面到大量的PDF文件,每個文件一頁。 我使用pdftk並且工作正常,但爲每個頁面創建的每個pdf都非常大。我的原始PDF爲7MB(內含70頁),與pdftk分割創建的每個文件的總和超過70MB。pdftk分割pdf與多個頁面

有人知道是否有一個屬性設置爲pdftk有小文件輸出?

謝謝

+0

一個很好的解決方案是使用cloudinary的分裂和檢索的PDF預覽圖像等.. http://cloudinary.com –

回答

18

你總是可以指定compress選項 - 例如:

pdftk input.pdf burst output output_%02d.pdf compress 

注意pdftk只是複製從投入產出的PDF文件的內容,而不能儘量優化消除膨脹。所以如果你的輸入PDF文件很大/很複雜,你的輸出PDF文件也將會是。另請注意,嵌入在文檔中的任何字體可能最終會在每個輸出文檔中被複制,佔用更多空間。

+0

我嘗試它,但不起作用:(我有相同的文件大小 –

+0

@Simone,因爲pobrelkey說,你可能有原始文件中的公共資源,如字體或背景圖像,現在是70倍重複。也許一個頁面樣本將幫助某人提出優化方法。請注意,'pdftk'不會壓縮到最大值(使用壓縮外部參照表和對象流等1.5個功能,當然,它不會提供70倍壓縮) – user2846289

+2

好的,我嘗試使用它並解決了我的問題:http://pandemoniumillusion.wordpress.com/2008/05/07/compress-a-pdf-with-pdftk/ –

5

在分割PDF文件時,有時很難避免僅包含在每個輸出文件中的某些頁面所需的信息。

cpdf儘量避免這種情況 - 您可以嘗試一下,看看會發生什麼。你可能會發現它比你的文件上的pdftk好,但它應該是。

披露:我是cpdf的作者。

7

您可以使用pdftk並嘗試

pdftk source.pdf cat 1-100 output try1.pdf 
pdftk source.pdf cat 101-end output try2.pdf 
1

有類似的問題。但不適用1:1的問題。反正有人可能會發現它有用:

  1. 我有一個非常大的PDF文件 - original.pdf - 比240MB以上。這幾乎是 不可能使用它。我用evince作爲pdf和 刪除了打印機設置中的任何縮放比例。這產生了一個文件 - new.pdf - 大約102MB!顯然,所有嵌入的字體,書籤等都被刪除。
  2. 要獲取書籤,我使用cpdf從原始pdf文檔中提取 書籤,並將其應用於 新書籤。由此產生的文件 - result.pdf - 很容易導航,並在 任何pdf查看器很快。

參考:CPDF提取和應用的書籤:http://www.coherentpdf.com/cpdfmanual/node38.html

cpdf -list-bookmarks original.pdf > booksmarks.txt 
cpdf -add-bookmarks booksmarks.txt new.pdf -o result.pdf