設定大小上限並將 PDF 分割成不超過該上限的數個部分,意思就是把一份本地端的 PDF 切割成多份連續的 PDF 檔案,讓每份實際的位元組長度維持在您所選擇的 MiB 目標值以內。依大小分割 PDF會依照原始順序複製頁面,在瀏覽器內序列化每個候選部分,並測量最終產生的位元組數,而不是依來源檔案大小做比例切片,因此每個被接受的部分在產生的當下都符合上限。如果第 1 到第 4 頁放在一起合適,但加入第 5 頁會讓候選部分超過上限,那麼第一份下載會包含第 1 到第 4 頁,下一個部分則從第 5 頁開始。頁面絕不會被重新排序、略過、重複,或在視覺上被切割。整個工作流程都在目前的瀏覽器分頁中執行,因此來源檔案和產生的部分都不會離開您的裝置。這種作法適用於電子郵件附件上限、上傳入口網站的門檻、封存分塊,以及任何需要經過驗證的最大輸出大小、而非從來源檔案大小猜測的工作流程。

split pdf by size limit
設定大小上限並將 PDF 分割成不超過該上限的數個部分

本工具中大小上限控制了什麼

您輸入的大小上限是以 mebibyte (MiB) 為單位測量的最大輸出目標。1 MiB 等於 1,048,576 位元組,是二進位單位,而不是略小的十進位 megabyte。工具接受小至 0.01 MiB、大至 25 MiB 的目標值,小數輸入最多到三位數。25 MiB 的上限符合工具受限的本地檔案工作流程;0.01 MiB 的下限則適用於確定性測試,或用於您希望細部控制每個部分包含多少頁的極小文件。

在選擇檔案之後,輸入目標值就是這個工作流程唯一需要做的決定。工具不會詢問您要分割成幾個部分、分頁應該落在哪裡,或每份下載應包含多少頁。這些決定會根據您的目標,以及瀏覽器實際建構並測量的候選部分位元組長度來推導。

設定可接受的值
來源 PDF 大小不可為空,上限 25 MiB
目標大小單位Mebibyte (MiB)
目標大小最小值0.01 MiB
目標大小最大值25 MiB
小數位精確度最多三位數
1 MiB 的位元組數1,048,576

工具接受小數輸入,因此 4.5 MiB 的目標代表 4.5 × 1,048,576 = 4,718,592 位元組 — 您輸入的數值就是規劃工具用來與每個序列化候選部分比較的依據。

工具如何決定 PDF 的切割位置

分割引擎採用貪婪的逐頁附加方式,並以真實位元組數進行測量。它從第一頁開始,將其複製到候選文件中,序列化該候選部分,然後檢查其位元組長度。如果候選部分符合或低於您的目標,引擎就會以來源順序繼續附加下一頁並重新測量。一旦附加下一頁會讓候選部分超過目標,引擎就會把前一組定為一個部分,並以放不進去的該頁開始一個新的候選部分。

這種候選—測量迴圈正是讓輸出在嚴格大小限制下值得信賴的原因。這個決定是根據新近序列化的 PDF 檔案,而不是根據來源檔案大小的比例估算。PDF 資源可能在頁面之間共用、以不同方式壓縮,或在複製到新文件時產生與來源不同的額外負擔。測量每個候選部分能直接捕捉到這些效應。底層的複製操作記錄於 pdf-lib copyPages API,而位元組測量的序列化步驟則記錄於 pdf-lib save API

由於「在候選部分跨越目標之前就定稿」這條規則被嚴格執行,所有部分的頁數加總會等於輸入檔的結構頁數。不會有任何頁面被默默遺失、不會有頁面出現兩次,且原始順序會在編號下載之間完整保留。

設定上限並分割 PDF

  1. 在瀏覽器中開啟「依大小分割 PDF」。
  2. 從您的裝置中選擇一個非空的 PDF。檔案必須是 25 MiB 或更小;空的、大於 25 MiB 的、加密的、損壞的,或標示錯誤的檔案會產生明顯的錯誤訊息。
  3. 以 MiB 為單位輸入每個部分的最大大小。此欄位接受最多三位數的小數,從 0.01 一直到 25 MiB。
  4. 選擇「依大小分割 PDF」。瀏覽器會開始將頁面複製到候選文件中,逐一序列化,並依您的目標測量其位元組長度。
  5. 在部分清單出現時檢視它。每個項目會顯示頁面範圍以及所產生部分的測量大小。
  6. 如果有任何項目被標示為超出目標,代表該部分包含一個本身就已經大於您上限的單一頁。它會被完整保留,以避免頁面遺失。
  7. 下載每個編號的部分。下載會以原始頁面順序出現,且在您變更檔案或目標之前都會持續有效。
  8. 如果您變更檔案或目標,先前的下載連結會被撤銷,且工作識別碼會防止較慢的早期結果取代較新的結果。

為什麼輸出大小要測量而非估算

許多大小分割工具常用的捷徑,是把來源檔案大小除以頁數,然後給每頁分配等量的預算。一旦 PDF 內含混合內容,這種捷徑就會失效 — 舉例來說,可能先是一大段文字,接著是一百頁的點陣掃描。文字頁序列化後可能只有幾 KB,而掃描頁序列化後可能高達數百 KB。平均分配時,掃描頁會爆量,文字頁則會留下大部分目標預算沒用到。

「依大小分割 PDF」透過序列化每個候選部分並檢查其真實位元組數來避開這個失敗模式。這個測量反映了將頁面複製到新文件的負擔、嵌入字型被重新包含或共用的方式,以及來源檔與新建立部分之間的任何壓縮差異。被規劃工具接受的部分,在產生的當下,其位元組長度會符合或低於您的目標。這是對您即將下載之部分的測量,而非預測。

為您的限制選擇合適的目標

請將 MiB 目標對應到觸發這次分割的限制條件,並預留一點安全邊際,因為瀏覽器和作業系統在下載顯示中對同樣的位元組數可能有不同的四捨五入方式,而 MIME 編碼或 HTTP 請求主體等包裝層也會在 PDF 之上額外加上自己的位元組。

情境如何設定目標
有嚴格上限的外部限制(電子郵件服務、上傳入口網站、API 請求)將目標設定為低於所宣告上限的安全邊際,以免包裝層的負擔讓部分超出限制。
沒有外部上限的封存分塊將目標設定為您偏好的任何 MiB 上限;工具會將其強制作為每個被接受部分的硬性最大值。
分割邏輯的反覆測試使用 0.01 MiB 最小值,進行確定性、小批量的頁面邊界行為測試。

送達接收系統的確切位元組值可能會因為表頭、base64 編碼或傳輸包裝層額外增加的負擔而略有偏移。將目標規劃得略低於文件記載的限制,才能讓每個部分在包裝之後仍安全地落在限制範圍內。

分割後哪些保持不變、哪些可能改變

「依大小分割 PDF」建立在一條不可違背的規則上:頁面順序會被保留。第一份下載包含符合目標的最初連續頁面,第二份下載包含下一段連續頁面,依此類推。所有部分的頁數加總恰好等於輸入檔的結構頁數。

每個輸出都是由複製所選來源頁面所建立的新 PDF。頁面方塊、旋轉、向量圖稿、文字和嵌入的點陣內容會在現有複製作業所支援的範圍內予以保留。分割本身並不會修改任何特定頁面的視覺呈現。

在跨部分時可能無法完整保留的是原本橫跨整份文件的文件層級結構。書籤、腳本、附件、作品集關聯、具名目的地,以及跨部分連結在頁面被分離後,可能無法保留其原本的語意,因為這些結構是附加在整份來源文件上,而非附加在個別頁面上。如果檔案依賴這些結構來提供導覽或互動功能,請先檢查各個部分再於下游使用。

什麼時候大小限制不是正確的解法

大小限制式分割解決一個問題:將單一 PDF 分割成多個符合目標的檔案。它不會改變每頁內部的位元組數。如果來源檔案過大是因為嵌入影像過於肥大、字型尺寸過大,或未壓縮的掃描,那麼即使分割後,每個部分仍可能個別偏大,且當單一頁本身已經大於目標時,仍會超出限制。工具處理這種情況的方式是把過大的頁面保留為獨立的部分,並標示為超出目標,所以不會有任何東西被默默遺失 — 但結果仍不是一份符合限制的檔案。

若目的是縮減內容而非重新分配頁面,那麼專門的壓縮工作流程才是正確的工具。壓縮 PDF 至指定大小只有在經驗證的重新壓縮結果達到您的目標時,才會重建 PDF。當目標是減少頁面內部的位元組數時,請使用壓縮;當目標是保持每頁完整並把它們分割成符合上限的多個檔案時,請使用「依大小分割 PDF」。

若要依頁數而非大小進行分割,分割 PDF會以精確的頁數或自訂範圍進行分割。若要手動挑選頁面,擷取 PDF 頁面可以依照您指定的任何順序,將所選頁面複製到新檔案中。

如需更深入的說明,請參閱 如何在每一頁將 PDF 分割成 2 個部分

如需更深入的說明,請參閱 用於列印的 PDF 長條圖:尺寸與限制