簡短的回答
開啟 PDF 合併與拆分,把要用的每個檔案都拖進去,再把頁面拖成你要的順序。然後說清楚它是出成一份檔案還是好幾份,按下按鈕。什麼都不會被上傳:檔案是你自己的瀏覽器開啟、拆散、再寫回去的。
人們分開去搜的三件事——合併、拆分、重排——在這裡是同一個介面,因為它們本來就是同一個操作,只是最後的答案不同:挑出一些頁面,把它們排好,再決定它們出來時是幾個檔案。
把兩份或更多檔案合到一起
先選第一個檔案,再選第二個;每個檔案的頁面都會接在當前順序的末尾,所以你可以不斷從不同資料夾裡添檔案,而不用從頭再來。要是順序進錯了,抓住頁面的把手拖動,或者用每張卡片上的箭頭。
合並不會重新編碼任何東西。每一頁的內容,以及它用到的每一種字型、每一張圖片、每一段向量圖形,都是原樣搬過去的,所以文字照樣能選、能搜,掃描檔還是那份掃描檔。合出來的檔案通常比兩個輸入加起來略小,這不是壓縮——那是頁面外圍的結構只寫了一遍,而不是兩遍。
頁面各自保留自己的尺寸。把一份 A4 的報告和一份 Letter 的附錄合到一起,你得到的就是一份兩種尺寸都在裡面的檔案,因為檔案本身就是這麼寫的。把別人的頁面縮放到同一種紙張尺寸是另一個操作,也不是一個合併工具該悄悄替你做的。
把一份檔案拆成好幾份
切法有四種,你要哪一種,取決於你為什麼要切:
- 每隔幾頁切一刀。適合把原本是一疊獨立檔案的東西一口氣掃成的長檔案——十二張工資條,每張兩頁。
- 在你指定的頁碼切。適合章節起始頁你看得見的報告。你輸入的每一個數字都開啟一個新檔案。
- 一頁一個檔案。適合從一沓裡把某一張簽字頁或者證書拎出來。
- 按來處還原成原來的幾個檔案。只有在你合併了不止一個檔案時才出現,改完東西之後很好用:一次把三份掃描檔裡的空白頁都刪掉,再拿回三個檔案。
要是你只想從一份長檔案裡取幾頁,根本不用拆。把要的頁碼寫進範圍框—— 1-3, 8, 12-——按「只留這些」,直接搭出一份檔案。
輸出不止一個檔案時,會打成一個 ZIP 交給你。五十次下載就是五十次儲存提示,差不多誰都在那裡放棄了。
重排、旋轉和刪頁
抓住卡片的把手拖動,就能挪位置。每張卡片上的箭頭把它往前後挪一格,或者一次轉九十度——從掃描器裡橫著出來的那頁,就靠它扶正。× 是刪掉它。
只要涉及的頁數超過兩三頁,就改用範圍框。它認你在紙上會寫的那些寫法:1-3, 8, 12-,另外還有 odd、even、all 和 last。留下這些、刪掉這些,或者轉這些。有個常見的:雙面掃描裡每隔一頁就是倒的,那就是 even 加兩次旋轉。
卡片上的編號會隨著你的操作重編,所以它們永遠表示「在成品檔案裡的位置」,而不是「在原來那個檔案裡的第幾頁」。在你按下按鈕之前,什麼都還沒寫出去,所以也沒有什麼需要撤銷——而「恢復成剛進來的樣子」會把一切的原始順序還回來。
重排之後什麼留得下,什麼留不下
這是沒有哪個工具會告訴你的部分,也是合出來的檔案有時會讓人覺得哪裡說不上來地壞了的原因。
PDF 不是一疊頁面。它是一張圖,而其中相當一部分說的是整份檔案、而不是某一頁:書籤面板、連結、表單、螢幕閱讀器所依的閱讀順序,還有把前四頁叫作「i、ii、iii、 iv」的那套編號。你一動頁面,這些每一樣都得重建,或者被丟掉。
- 書籤會被重建。它指的那頁還在,它就指向那頁挪去的新位置。它指的那頁被你刪了,它就走——除非它下面還有活下來的條目,那它就作為一個標題留下,因為章的題目仍然在章所在的地方。合併多個檔案時,每個檔案的書籤會嵌在一個以檔名命名的標題之下,一份合出來的報告能翻得動,全靠這個。
- 連結會被跟著走。從第 2 頁指向第 40 頁的連結,知道第 40 頁去了哪裡,包括 Word 和 LaTeX 為每個標題寫下的那些具名目標。目標沒跟過來的連結,後面會留成空的,而不是去指現在恰好落在那個位置的某一頁。
- 填好的表單能留下,而且新檔案會被登記成表單,好讓閱讀器把它當表單對待。有個值得知道的怪癖:同名的兩個欄位,在任何閱讀器看來都是同一個欄位,所以把同一張表單的兩份合到一起,它們就被綁在了一塊兒——在一個裡打字,另一個也會跟著填上。
- 打過標籤的閱讀順序留不下。它描述的是一個已經不存在的次序,而對螢幕閱讀器來說,錯的順序比沒有順序更糟。要是一份檔案的無障礙標籤很重要,就把原件一併留著。
- 頁面標籤也留不下。「iii、iv、1、2」這套編號,是關於一個你剛剛改掉的次序的陳述。
- 附件和文件指令碼也留不下。掛在檔案上的附件屬於檔案,而不屬於哪一頁。執行 JavaScript、把表單提交到某處、啟動某個程式這類動作,不會被帶進你的新檔案裡,而對來自別人的頁面來說,這正是應有的預設。
數字簽名是特殊的一項,也不是哪個工具的短板:簽名擔保的是當時那一份檔案。你挪一頁,它就失效了,因為它待在那裡就是為了告訴你這件事。
加了密碼的檔案
加密過的 PDF 會被拒收,包括很多辦公室影印機產出的那種空密碼的。去掉一份檔案的保護,和挪它的頁面是兩件不同的事,一個悄悄替你去做的工具,做的是你沒要求過的事。請先用密碼在閱讀器裡開啟它,另存一份沒有保護的副本。
檢查結果
開啟它,看三樣:頁數、順序,還有——如果原來的檔案有的話——書籤面板和一兩個連結。
第一樣,這裡的工具在把檔案交給你之前就替你做了。每一份做好的檔案,都會被讀你原件的那同一段程式碼重新開啟一遍,頁數是靠走一遍頁面樹數出來的,而不是相信檔案裡寫著的那個數。要是那和你要的對不上,那就壓根不給你下載。
為什麼這件事不需要伺服器
合併聽起來像伺服器的工作,在網路存在的大半時間裡它也確實是。但它實際做的,是解析檔案結構、把某一頁依賴的物件複製進一個新檔案、再寫一張新的交叉引用表。沒有畫素被解碼,也沒有任何東西被渲染。瀏覽器已經能把這些全做完,好多年了。
而這件事在這裡比在幾乎任何別處都要緊,因為人們合併的是什麼。會被拼到一起的檔案,都是從某處來的:一份合同和它的簽字頁、一張護照掃描檔和一份銀行流水、一封醫生的信和一張申請表。一個線上合併服務一次就收到了它們全部,已經歸攏好,來自同一個人。這是大多數人一輩子做過的最能說明問題的一次上傳。
這裡的工具沒有任何網路功能,頁面的 Content-Security-Policy 裡寫著它允許聯絡的每一個地址,沒有一個屬於本站。把頁面載入好,拔掉網線,照樣合一份試試。
把檔案傳給線上轉換器安全嗎?那一頁還列了另外三條這樣的檢查。