Alternate Mix PDF 會以固定的 A1、B1、A2、B2 閱讀順序交錯合併兩個本地 PDF,並將較長文件剩餘的頁面附加在最後,同時保留每頁原始的大小、旋轉與內容,而且不會上傳任何一個檔案。當讀者詢問如何避免使用這個工具時出錯時,答案幾乎總是回到同樣幾個常見的陷阱:選錯檔案作為 PDF A、預期頁面會被調整大小或反轉、餵入有密碼保護或過大的文件,以及在未檢查總頁數的情況下就信任下載結果。這個工具的排序規則刻意保持固定且可見,因此來源序列中的任何錯誤都會永久性地反映在輸出中。由於整個操作都在瀏覽器中執行,輸出結果會在記憶體中與兩個來源檔案短暫共存,因此實際的限制比紙面上看起來更重要。下面提到的每一個錯誤,只要依照文件說明的工作流程操作,都能事先避免:選擇不為空且各不超過 25 MiB 的 PDF A 與 PDF B,確認兩者都已是你想要的順序,並在下載前驗證顯示的頁面總數等於 A 加 B。

Alternate Mix PDF 的功能,以及它刻意不做的事
Alternate Mix PDF 是建立在一條單一、可見的規則之上。它依序取用 PDF A 的第 1 頁、PDF B 的第 1 頁、PDF A 的第 2 頁、PDF B 的第 2 頁,依此模式繼續。當其中一份文件先沒頁時,較長文件所有剩餘的頁面會依照其原有的內部順序附加到結尾。頁面複製完全在你的瀏覽器中透過底層的 PDF 函式庫完成,因此兩個檔案都不會上傳到伺服器,而新的 PDF 會在下載連結出現之前先在本機序列化。只要底層函式庫的複製作業支援,每個複製的頁面都會保留其自身的頁面框、旋轉、向量繪圖、文字以及內嵌的點陣內容,而且原本的兩個檔案永遠不會被更動。
這個工具「不做」的事和它「做」的事一樣重要。它不會反轉任一份輸入來「修正」順序。它不會調整大小、拉伸或縮放任一份文件的頁面來配合另一份。它不會把文字點陣化成截圖,也不會在交錯的頁面之間插入空白的分隔頁。它不會用「A 接著 B」的堆疊方式合併(請使用 Merge PDF),不會選取範圍、不會去除重複頁面、不會比較內容、不會修復損壞的 PDF,也不會製作小冊子裝訂簽(請使用 Booklet PDF 進行拼版)。它不會繞過加密檔案的密碼保護,也無法保證保留所有進階的互動功能 —— 表單欄位、書籤、大綱目的地、指令稿、附件以及跨文件連結,可能無法在頁面複製後保有相同的語意,因此你應該在交錯合併後檢查重要的互動檔案。
在合併前準備好你的兩個來源 PDF
大多數的錯誤在你按下合併按鈕之前就已經發生。先確認以下每一項條件,之後的工作流程就幾乎不可能出錯。
- 兩個檔案都是有效且不為空的 PDF。空的文件會產生明顯的錯誤,操作也不會開始。
- 每個檔案的大小在 25 MiB 以下。25 MiB 的上限是分別適用於每個輸入,而非合併後的輸出,因此兩個 24 MiB 的檔案都符合限制。
- PDF A 確實是你希望其第 1 頁出現在輸出位置 1 的文件。對調兩個選擇會完全改變整個交錯的型態。
- PDF B 處於你想要的順序。這個工具不會根據內容或檔名去猜測、反轉或「排序」任一份輸入。
- 如果任一份 PDF 是加密或有密碼保護的,請先移除密碼。這個工具不會繞過密碼保護。
- 如果掃描器產生了其中一份反向的串流,請先使用專用工具(例如 Reorder PDF Pages)重新排序,再進行交錯合併。
做好這些事前檢查,就能把潛在的錯誤化為無形。
如何不出錯地交錯合併兩個 PDF
當你的兩個檔案準備就緒後,請依照下列順序操作,輸出結果就會符合你預期的交錯型態。
- 在瀏覽器分頁中開啟 Alternate Mix PDF。
- 選擇應該產生輸出第 1 頁的檔案 —— 它會成為 PDF A。
- 選擇首頁應出現在輸出位置 2 的檔案 —— 它會成為 PDF B。
- 在繼續之前,確認兩個檔案都不是空的,且都在 25 MiB 的限制內。
- 短暫開啟每個來源,仔細確認 A 的第 1 頁是你想要的第一頁,而 B 的第 1 頁合乎邏輯地接續其後。
- 點擊標示為「Alternate and mix PDFs」的按鈕。
- 仔細閱讀結果行。它會顯示 A 的頁數、B 的頁數,以及一個必須等於這兩個數字總和的總計。
- 如果總計不符合 A 加 B,請不要下載 —— 這是一個明確的訊號,代表你應該用修正過的輸入重試。
- 下載交錯合併後的 PDF。你原本的兩個檔案會維持不變,留在它們原本的位置。
人們使用 Alternate Mix PDF 時常犯的錯誤
同樣的幾個錯誤幾乎佔了所有失敗或令人意外的結果。在執行工具之前,請用這個表格做快速的檢查。
| 錯誤 | 會發生什麼事 | 如何預防 |
|---|---|---|
| 選錯檔案作為 PDF A | 輸出序列從錯誤的文件開始,因此每頁都會錯位一格 | 在選擇檔案前先決定哪個串流應該領先;記住對調 A 和 B 會對調整個交錯型態 |
| 假設工具會反轉反向的來源 | 頁面在輸出中仍維持其原本(錯誤)的順序 | 先用專用工具重新排序反向的來源,再合併修正後的檔案 |
| 餵入有密碼保護的 PDF | 檔案會被拒絕並顯示明顯的錯誤;永遠不會繞過密碼保護 | 事先移除密碼,再回到合併步驟 |
| 餵入過大的檔案 | 檔案會在合併開始前被拒絕並顯示明顯的錯誤 | 讓每個輸入都保持在 25 MiB 以下;這個上限是針對每個輸入,不是針對輸出 |
| 未檢查頁數總計就信任下載結果 | 微妙的問題(多出的空白頁、被截斷的段落、選錯檔案)不會被察覺 | 閱讀結果行;總計必須等於 A 的頁數和 B 的頁數之和 |
| 在成功合併後更換其中一個輸入 | 先前的結果會被清除,避免過期的 URL 覆蓋新的執行結果 | 先完成選擇兩個輸入,再一次觸發合併 |
| 預期頁面會被調整大小以互相吻合 | 輸出會保留交錯的頁面大小,因為不會有任何拉伸以符合的動作 | 如果符合的頁面大小對你的列印工作很重要,請先調整任一來源的大小 |
| 在一個已經充滿重型頁面的分頁中執行工具 | 瀏覽器可能會耗盡記憶體,因為兩個來源加上新的 PDF 會暫時共存 | 關閉重型分頁,將無法取代的原件保存在工作流程之外,必要時改用較小的輸入重試 |
若要更深入地專門探討「不會反轉」的行為,請參考指南 Does Alternate Mix PDF Reverse Either PDF?。
在下載前驗證頁數
結果行是最重要的單一檢查。它會顯示 A 的頁數、B 的頁數,以及輸出頁數的總計,而總計必然等於 A 加 B —— 如果不相等,表示出了問題,該檔案就不應該被信任。以下兩種情境是容易讓人中招的不對稱輸入,它們直接來自於工具文件說明的行為。
| 輸入 A | 輸入 B | 產生的輸出序列 |
|---|---|---|
| 3 頁 | 2 頁 | A1, B1, A2, B2, A3 |
| 1 頁 | 3 頁 | A1, B1, B2, B3 |
當兩個文件長度相同時,交錯會乾淨地結束,不會有剩餘的尾巴 —— A1、B1、A2、B2 依此類推,直到兩個序列在同樣的輸出頁結束。當兩者長度不同時,較長文件剩餘的尾巴會被保留在最後,其內部順序不會被改動。閱讀結果行並確認顯示的總計符合 A 加 B,是你能內建到工作流程中最簡單的防錯習慣。
當輸出看起來有誤時該怎麼辦
如果下載後交錯合併的 PDF 看起來不對,請依序進行以下檢查。首先,開啟檔案並確認第一頁確實來自 PDF A,而第二頁來自 PDF B —— 選錯選擇是「順序錯誤」結果最常見的原因。其次,確認頁數總計符合結果行上印出的總和。受損、加密、過大以及標示錯誤的輸入會在產生任何輸出之前就被拒絕並顯示明顯的錯誤,因此如果一個檔案進到了下載階段,代表它已通過輸入檢查。第三,檢查是否有任一來源依賴於互動功能,例如表單欄位、書籤或跨文件連結。透過底層函式庫(記錄於 pdf-lib copyPages API)進行頁面複製,並無法保證保留所有進階結構,因此解決方式是在合併前檢查原件是否包含這些功能,並接受它們可能需要在交錯合併後重新加入。
最後,如果先前的合併結果看似被新的執行覆寫了,那是工作識別碼在發揮作用 —— 較舊的結果會被刻意撤銷,避免較慢的先前操作取代較新的結果。如果你需要重新建立舊的合併,只要用同樣的兩個來源檔案再執行一次工具即可。新的檔名會結合兩個清理過的來源名稱並加上「-alternated.pdf」,而你的原始文件會完全保留在原本的位置,不受更動,無論你實驗多少次都一樣。