大多數Split PDF工具以頁數劃分文件。讓工具每 10 個頁面進行分割,無論每個頁麵包含多少數據,它都會產生一組 10 頁的區塊。對於頁面內容密度差異很大的文檔,頁數拆分會產生大小截然不同的文件。 10 頁的文字部分可能為 100 KB。包含高解析度照片的 10 頁部分可能為 25 MB。按文件大小而不是頁數拆分會產生每個輸出文件都在特定兆位元組限制下的文件,這是電子郵件伺服器、上傳表單和文件管理系統實際強制執行的。
基於檔案大小的拆分比頁數拆分更複雜,因為該工具必須在執行拆分之前估計有多少頁適合目標大小。由於 PDF 壓縮和物件重複資料刪除會影響最終檔案大小,因此估計永遠不會準確。工具會保守地進行分割,產生略低於目標的文件,最後一個文件包含剩餘的頁面。
WukongPDF 的PDF Batch 分割工具為文件分發工作流程提供頁數和文件大小分割選項。

為什麼文件大小分割對於分發很重要
電子郵件附件限制是檔案大小分割最常見的原因。 Gmail 將附件大小限制為 25 MB。大多數方案的 Outlook 限制為 20 MB。企業電子郵件伺服器通常會施加更低的限制,有時為 10 MB 或 5 MB。需要透過電子郵件傳送的 60 MB PDF 必須分成適合收件者附件限制的區塊。按頁數拆分可能會產生一個 22 MB 的區塊和另一個 38 MB 的區塊,這兩個區塊都無法透過電子郵件發送。依檔案大小拆分可保證每個區塊都在限制範圍內。
在線上傳表單也強制執行檔案大小限制。政府入口網站、法院備案系統和求職網站通常將上傳限制為 5 MB、10 MB 或 25 MB。此限制會顯示在上傳頁面上,超過該限制會在上傳已消耗時間後產生錯誤。將 PDF 預先分割成大小相容的區塊,確保第一次嘗試上傳成功。
具有每個文件儲存配額的文件管理系統受益於一致的文件大小。按儲存千兆位元組收費的系統對於檔案是按頁數還是按大小分割無關緊要,但限制每個記錄的檔案數的系統可能會懲罰產生許多小檔案的頁數分割。了解下游系統約束可以為拆分策略提供資訊。
嘗試拆分 PDF
無需安裝。直接在您的瀏覽器中工作。
方法一:Adobe Acrobat Pro 依大小分割
Acrobat Pro 在其拆分文件工具中包含檔案大小拆分選項。打開 PDF 並前往“工具”、“組織頁面”,然後按一下“拆分”。在拆分對話框中,從拆分下拉清單中選擇檔案大小。輸入最大檔案大小(以兆位元組為單位)。 Acrobat 會估計該尺寸內適合的頁面數量並相應地進行拆分。
Acrobat 依大小分割演算法非常適合頁面相對均勻的文件。對於頁面大小變化很大的文檔,估計值可能會偏差 10% 到 20%,因為 Acrobat 無法精確預測輸出壓縮將減少每個頁面對文件大小的影響程度。分割後,檢查輸出區塊的實際檔案大小。如果任何區塊超過目標,請稍微減小目標大小並重新拆分。
Acrobat 透過在原始檔案名稱後面附加後綴來命名輸出文件,例如 Document_Part1.pdf、Document_Part2.pdf。命名約定清楚地表明文件是一個整體的一部分,並指示了正確的閱讀順序。對於將由收件人重新組合的文檔,請在第一部分中包含一個封面頁,解釋預期有多少部分以及如何重新組裝它們。
方法 2:使用 pdftk 進行命令列分割
pdftk 沒有原生的按大小分割功能,但可以編寫腳本來實現相同的結果。此方法是將 PDF 拆分為單獨的頁面,測量每個頁面的檔案大小,然後將頁面分組為累積大小保持在目標以下的區塊。 bash 或 PowerShell 腳本可自動執行此工作流程。
首先,使用 pdftk 將 PDF 突發為單獨的頁面檔案:pdftk input.pdfburst。這會產生 pg_0001.pdf、pg_0002.pdf 等。使用 ls -l 或 du 等系統指令來測量每個頁面檔案的大小。依序遍歷頁面,累積大小,直到下一頁將總數推到目標之上。當達到目標時,使用 pdftk cat 將累積的頁面合併到區塊檔案中,重置累加器,然後繼續下一個區塊。
在實踐中,pdftk 方法是免費且可編寫腳本的,使其適合批次和伺服器端自動化。準確性取決於每頁文件大小的測量。由於共享資源(例如字體)在各個頁面文件中重複,作為單獨文件測量的各個頁面可能比組合成單一 PDF 的相同頁面稍大。最終的區塊檔案大小將略小於各個頁面大小的總和。
方法 3:使用 pike 編寫 Python 腳本pdf
實際上,pikepdf 函式庫提供了對 PDF 分割的位元組級精度的程式控制。 Python 腳本開啟 PDF,遍歷頁面,並使用 pikepdf API 為每個區塊建立一個新的 PDF。此腳本追蹤新增至目前區塊的頁面的累積未壓縮大小,並在新增下一頁超出目標時啟動新區塊。
pikepdf 提供對原始頁面內容流的訪問,從而在寫入輸出文件之前實現準確的大小估計。該腳本還可以使用特定設定(例如影像的 JPEG 壓縮)來壓縮每個區塊,以進一步控制輸出檔案大小。 Python 方法透過單獨壓縮該頁面而不是失敗來處理邊緣情況,例如大於目標大小的單一頁面。
處理文件大小分割中的邊緣情況
當單一頁面超過目標檔案大小時,分割無法在保持低於目標的情況下產生僅包含該頁面的區塊。選項包括使用更積極的圖像下採樣來單獨壓縮超大頁面,如果頁面由多個邏輯部分組成,則將頁面拆分為更小的子頁面,或者接受該頁面將超出目標並注意到異常。
對於具有許多小頁面的文檔,按大小分割演算法可能會產生頁數差異很大的區塊。第 1 塊可能包含 50 頁文字。第 2 塊可能包含 3 頁照片。應告知接收者,區塊的頁數有所不同,因為分割標準是檔案大小,而不是頁數。
| 方法 | 工作原理 | 最適合 |
|---|---|---|
| Acrobat Pro 依大小拆分 | 指定每個輸出檔案的最大 MB | GUI 用戶,偶爾分裂 |
| 帶有大小估計的 pdftk | 迭代頁面直到達到目標大小 | 腳本化工作流程,免費 |
| Python + 派克pdf | 讀取頁面大小,累計超過目標時拆分 | 自訂邏輯、批次處理 |
分配前驗證分割輸出
按檔案大小分割後,開啟每個輸出區塊並確認第一頁和最後一頁正確。分割應該發生在頁面邊界,而不是頁面中間。驗證所有區塊的總頁數是否等於原始文件的頁數。差異表示頁面在拆分期間被刪除。
根据目标检查每个块的文件大小。块应该等于或略低于目标。如果區塊超出目標 5% 以上,則分割演算法低估了輸出大小。将目标降低 10% 并重新拆分。 5% 到 10% 的餘裕考慮了壓縮可變性和共享資源開銷。
以檔案大小而非頁數拆分 PDF 會產生尊重數位發行實際限制的輸出。電子郵件伺服器、上傳表單和儲存配額並不關心 PDF 有多少頁。他們關心它有多少兆位元組。檔案大小分割使分割策略與重要的限制保持一致。
自動重複文件大小分割
從實際角度來看,在文件工作流程中,對於定期拆分大型 PDF 進行分發的組織,可以自動化按大小拆分工作流程。腳本監視資料夾中是否有超過閾值大小的傳入 PDF,將它們分成組織標準電子郵件附件限制下的區塊,並將這些區塊儲存到具有一致命名的輸出資料夾中。自動化消除了文件分發過程中的手動分割步驟。
自動化還可以產生一個清單文件,列出每個區塊的文件名稱、其文件大小及其包含的頁面範圍。清單伴隨著區塊並告訴接收者如何重新組合文件。一個簡單的文字文件,每個區塊一行,並以原始文件名作為標題就足夠了。清單將任意命名的區塊檔案的集合轉換為清晰記錄的文件包。
從廣義上看,在文件工作流程中,對於企業文件管理系統,拆分自動化可以與系統 API 集成,以將每個區塊註冊為父文件的相關元件。系統追蹤原始 60 MB 文件被分割成三個 20 MB 區塊進行分發,並可以根據需要重新組裝它們以供需要完整文件的使用者使用。
在接收方重新組裝分割文件
通常,文件大小分割文件的接收者需要明確的重組指示。如果按正確的順序合併,大多數 PDF 合併工具都可以將區塊合併回原始文件。區塊檔案名稱應指示順序:Document_Part1_of_3.pdf、Document_Part2_of_3.pdf 等。收件者開啟合併工具,依序新增文件,並產生重新組合的文件。
對於非技術接收者,請在這些區塊中包含一個簡短的說明文件。該說明文件解釋了區塊是什麼、應該有多少個、如何使用免費的線上 PDF 合併工具重新組合它們,以及區塊遺失或損壞時應聯繫誰。額外花一分鐘編寫說明文件可以防止混亂,並為收到多個沒有上下文的 PDF 附件的收件人提出支援請求。
重新組裝後,接收者應驗證合併文件的頁數是否與清單中規定的頁數相符。不匹配表示區塊遺失或重複。清單頁數是確認完整重組的權威參考。
嘗試拆分 PDF
無需安裝。直接在您的瀏覽器中工作。
