有。幾乎每個 PDF 都帶有你從沒輸入過的中繼資料:作者姓名、建立它的應用程式、寫出 PDF 的軟體,以及建立和最後修改的時間。常常還有標題和關鍵字,有時是從範本裡遺留下來的。這些都不會顯示在頁面上,但收到檔案的任何人幾秒鐘就能讀到。

大部分內容都可以在 PDF 閱讀器的「文件屬性」中看到。要徹底清除,就要另存一份不含這些欄位的新副本,還要檢查 PDF 可能攜帶的其他隱藏內容,例如註解和表單答案,它們不屬於中繼資料,但會以同樣的方式洩露資訊。

PDF 裡有哪些中繼資料

PDF 把中繼資料存放在兩個地方。文件資訊欄位就是閱讀器顯示的那些。很多檔案還有一個 XMP 中繼資料區塊,可能重複同樣的資訊,還會加入更多內容。

  • 作者(Author):通常是你的真實姓名或電腦使用者名稱,由產生檔案的應用程式自動填入。
  • 建立者和製作程式(Creator 和 Producer):產生檔案的應用程式和 PDF 軟體,有時還帶版本號,例如文書處理軟體、薪資系統或掃描器的軟體。
  • 建立日期和修改日期(Created 和 Modified):檔案最初產生和最後儲存的時間,通常精確到秒。
  • 標題、主旨和關鍵字(Title、Subject 和 Keywords):有時是特意設定的,常常是從範本或舊文件繼承下來的。
  • XMP 額外資訊:依應用程式而定,可能包括文件 ID、編輯工具歷程或著作權聲明等。

跟著 PDF 一起傳出去的其他隱藏內容

中繼資料是大家知道的那部分。下面這些才是容易讓人吃虧的:

  • 註解和便利貼:像「先查一下他的薪水」這樣的審閱意見,除非刪掉,否則會一直留在檔案裡,即使註解面板是關著的。
  • 表單欄位答案:填好的表單會把答案當作資料攜帶,有些系統會直接讀取。
  • 隱藏的文字層:經過 OCR 處理的掃描版 PDF,在圖片下面有一層看不見、可搜尋的文字,包括你以為已經裁掉或蓋住的部分。
  • 方框下面的內容:在文字上畫一個黑色或白色矩形,只是在螢幕上把它擋住,文字仍然在檔案裡,可以被複製出來。
  • 附件:PDF 裡可以包含其他檔案,只會在附件面板中顯示。
  • 舊版本:有些應用程式儲存變更的方式是在檔案末尾追加內容,所以舊內容可能仍然在檔案裡。

為什麼這很重要:真實的例子

  • 一份用仲介範本做的租約,在「標題」欄位裡還留著上一位房客的名字。
  • 寄給新雇主的履歷,「作者」欄位裡是你現任雇主的名字,因為你是在公司筆電上寫的。
  • 一份日期寫著上週五的報價單,修改日期卻是今天早上,在發生糾紛時可能會引起質疑。
  • 一份塗黑過的薪資單,「標題」欄位裡仍然顯示著全名,所以塗黑什麼都沒保護到。

如何檢查你的 PDF 透露了什麼

  1. 在電腦上用 PDF 閱讀器開啟檔案。手機 App 很少顯示完整的屬性。
  2. 開啟「文件屬性」。在 Acrobat Reader 中,它在「檔案」下的「內容」裡。在 Chrome 和 Firefox 的內建檢視器中,它在檢視器的選單裡。在 Mac 上,「預覽程式」在「工具」下的「顯示檢閱器」中顯示它。
  3. 查看作者、標題、主旨、關鍵字、建立者、製作程式、建立日期和修改日期這些欄位。
  4. 如果你的閱讀器有註解面板和附件面板,開啟它們,看看有沒有意料之外的內容。
  5. 在你蓋住或塗黑的地方附近,試著選取並複製文字。如果能貼到別的地方,表示它還在檔案裡。

閱讀器顯示的是文件資訊欄位,而不是 XMP 區塊。如果你需要看到全部內容,免費的命令列工具 ExifTool 會把兩者都列出來。

Kopitiam 會怎麼處理中繼資料

Kopitiam 沒有中繼資料編輯器,但每個工具處理中繼資料的方式是固定的,了解哪個是哪個會有幫助。

  • 「編輯 PDF」、「合併 PDF」、「分割 PDF」、「擷取頁面」、「整理 PDF」和「PDF 塗黑」會用你的頁面產生一個新檔案。原本的標題、作者、主旨、關鍵字和 XMP 區塊都不會帶過去。建立者和製作程式會被設為 pdf-lib,也就是 Kopitiam 使用的開源函式庫,兩個日期都會被設為你下載的那一刻。
  • 「旋轉 PDF」、「PDF 加浮水印」和「加入頁碼」會把變更儲存進同一個檔案。原本的標題、作者、關鍵字和建立日期都會保留。製作程式會變成 pdf-lib,修改日期會變成你下載的時間。
  • 「壓縮 PDF」的「無損」或「縮小照片」模式會清空標題、作者、主旨、關鍵字、建立者和製作程式。建立日期、修改日期以及任何 XMP 區塊都會保留。
  • 「壓縮 PDF」的「強力」模式會把每一頁重建成新檔案中的一張圖片,所以原本的欄位都不會帶過去,文字也無法再選取。
清除中繼資料並不會清理頁面。產生新檔案的工具仍然會原樣複製每一頁,包括該頁上的註解和表單欄位。這些要另外檢查,頁面上任何必須去掉的內容,都要用「PDF 塗黑」,而不是畫一個方框。

寄出前快速清理檔案的方法

  1. 照上面的方法檢查檔案,記下你想去掉的內容。
  2. 在「整理 PDF」中開啟它,頁面保持不動,按一下「下載整理好的 PDF」。新副本不含原本的標題、作者、主旨、關鍵字或 XMP 區塊。
  3. 如果頁面上有要刪除的文字,例如薪資單上的 IC 號碼,就改用「PDF 塗黑」,按一下「塗黑並下載」。它同樣會產生一個新檔案,所以同樣的中繼資料也會被去掉,而且被塗黑的文字是被刪除了,而不只是被蓋住。
  4. 寄出前開啟下載的副本,再檢查一遍「文件屬性」和註解面板。

新副本會顯示它是由 pdf-lib 產生的,日期是今天。這透露的是寫出檔案的函式庫,而不是你是誰,但還是值得知道。

特殊情況,以及什麼時候不該用 Kopitiam

  • 有密碼保護或編輯限制的檔案:Kopitiam 目前還無法開啟加密的 PDF。請在閱讀器中用密碼開啟檔案,使用「列印」再「另存為 PDF」製作一份未加密的副本。那份副本也是新檔案,有它自己的中繼資料,所以也要檢查。
  • 掃描文件:製作程式欄位裡常常寫著掃描器或掃描 App 的名字。如果掃描檔有 OCR 文字層,「PDF 塗黑」會在你標記的區域刪除那些隱藏文字,而不只是看得見的圖片。
  • 非常大的檔案:所有處理都在你的裝置上進行,所以實際的限制是你裝置的記憶體。一份 300 頁的掃描檔在舊手機上可能會很慢;電腦會處理得比較好。
  • 日期很重要的時候:如果一份紀錄必須保留原本的建立日期,就不要用會產生新檔案的工具處理它。「旋轉 PDF」、「PDF 加浮水印」、「加入頁碼」,以及「壓縮 PDF」的「無損」或「縮小照片」模式,都會保留建立日期。「編輯 PDF」、「合併 PDF」、「分割 PDF」、「擷取頁面」、「整理 PDF」、「PDF 塗黑」和「強力」壓縮會把它重設。
  • 當你需要設定中繼資料時,例如幫一份要發布的報告設一個正式的標題:請用產生該文件的應用程式。Kopitiam 無法寫入自訂欄位。

Kopitiam 的 PDF 工具在你的瀏覽器中執行,所以你要清理的檔案在這個過程中不會被上傳到伺服器。對於敏感文件,這本身就是一半的意義所在。