PDF 轉 PNG 轉換只有在轉檔工具不會將您的文件上傳到遠端伺服器時,才能安全地在線上使用。基於瀏覽器的渲染器會使用開源的 PDF.js 函式庫來解析 PDF,將每一頁繪製到本機的 canvas 上,將該 canvas 編碼為 PNG,然後透過臨時的 object URL 將檔案交還給您,因此位元組從未離開目前的分頁。相反的模式——將檔案上傳到伺服器、排隊等待處理、再以電子郵件回傳下載連結——正是大多數隱私與留存風險進入工作流程的地方,因為該檔案現在儲存在您無法控制的基礎設施上,可能會卡在佇列中,並且可能被無關的服務快取、記錄或掃描。在按下「轉換」之前,辨識工具使用的是哪一種模式,是您能做的最有用的單一安全檢查,這也區分了這是一項耗時一分鐘的本機工作,還是一份您無法從第三方完整撤回的文件。

is pdf to png safe to use online
PDF 轉 PNG 在線上使用安全嗎?一份隱私指南

在線上將 PDF 轉為 PNG 時,「安全」代表什麼

PDF 轉檔工具的安全性不是單一的核取方塊;它是一組獨立的特性,這些特性共同決定了檔案是否仍處於您的掌控之下。最強烈的訊號也是最簡單的:PDF 是否離開了您的電腦?如果答案是「沒有」,接下來的討論就是圍繞著防範意外發生——失控的記憶體配置、讓渲染器當機的損毀檔案,或是悄悄產生格式錯誤的 PNG。如果答案是「有」,那麼頁面上所有其他的安全機制,都只是在為一個早已放棄最強保護的步驟進行補償。

下表列出您可以尋找的安全特性,以及每項特性所能防範的情況。

安全訊號它能防範什麼
不上傳檔案到伺服器第三方儲存、留存、掃描與外洩風險
未指定需要帳號或登入身分與文件綁定,以及憑證遭竊
開源渲染器專有函式庫內的隱藏資料外傳
明確的大小與頁數限制單一分頁悄悄佔用數 GB 的記憶體
在輸入錯誤時顯示明確的錯誤匿損毀或加密檔案的靜默失敗
取消或替換時釋放資源工作結束後,已解碼的頁面緩衝區仍殘留在記憶體中

瀏覽器端的 PDF 轉 PNG 工具,正是圍繞著上表的每一行所設計。PDF 在本機進行解析,頁面被光柵化到 canvas,canvas 被編碼為 PNG,然後透過一個 object URL 提供檔案,該 URL 會在工作被取消或替換時由分頁釋放。文件沒有任何部分被傳送到伺服器,也未對來源 PDF 的可信度作出任何聲明。

PDF 轉 PNG 如何讓您的檔案留在瀏覽器中

處理鏈分為四個階段,全部都發生在您正在查看的分頁內。PDF.js 及其專屬的 worker 僅在開始轉檔時才會被下載,因此該函式庫不會被載入初始的頁面 bundle 中。檔案載入後,PDF.js 會解讀頁面的文字、向量圖形、點陣影像、裁切路徑、字型與透明度,並將合併後的可見結果製到 canvas 上。接著,該 canvas 會透過 HTMLCanvasElement.toBlob 方法,使用瀏覽器內建的 PNG 編碼器進行編碼,所產生的二進位資料會以臨時的 object URL 形式公開,您的瀏覽器可以像處理任何其他下載一樣儲存它。

由於 worker 在同一組 PDF 影像工具之間共用,該函式庫會在首次使用後被快取,第二次轉檔時就不會重新下載。當您選擇其他檔案、調整縮放比例,或關閉工具時,轉檔器會釋放先前的渲染工作、canvas、頁面資源與 object URL。這樣的清理動作很重要:單一高解析度的頁面可能會佔用數十 MB 的像素資料,而讓這些緩衝區存活得比必要時間更長,正是那種會在使用共用電腦時損害隱私的無聲記憶體成長。

如何安全地將 PDF 轉成 PNG

  1. 選擇一個不超過 25 MiB 的本機 PDF。加密、損壞或超過限制的檔案會在任何渲染開始之前被拒絕。
  2. 選擇輸出縮放比例,然後點擊「Convert to PNG」。該工具會渲染所有預計處理的頁面,顯示每一頁的確切寬度與高度,並使用您所選的縮放比例。
  3. 檢查每一頁的尺寸,然後下載以零補位的個別 PNG 檔案。檔名會依照與 PDF 相同的順序排列。

限制與拒絕條件

PDF 轉 PNG 會拒絕那些會讓單一瀏覽器分頁超出預定預算的文件。每項限制會在頁面被編碼之前進行檢查,因此被拒絕的檔案會產生明確的錯誤,而不是產生半完成的渲染結果。

限制數值
輸入檔案大小25 MiB
頁數40 頁
每頁尺寸單邊 12,000 像素
每頁像素面積40 megapixels
整份工作的總像素面積100 megapixels

除了數值上限之外,轉檔器也會拒絕加密的 PDF、格式錯誤的交叉參考表 (cross-reference table),以及包含 PDF.js 無法解讀之內容的文件。該工具不會繞過密碼、不會修復損毀、不會驗證簽章,也不會清除惡意程式。請將原始檔案視為唯一的事實來源,並在使用輸出之前加以檢查。如果一份文件反覆失敗,轉檔器可能會因為以下原因而拒絕它:檔案已加密或損壞、交叉參考表格式錯誤、包含不支援的內容、超過 25 MiB、頁數超過 40 頁、任一預計頁面縮放後的視口在單邊超過 12,000 像素或超過 40 megapixels,或是所有預計頁面的像素總和超過 100 megapixels。

PNG 輸出包含什麼,又捨棄了什麼

輸出內容是頁面可見內容的平面點陣圖,而不是底層 PDF 的重建。可選取的文字、即時連結、表單欄位、向量幾何、圖層與中繼資料都不會被保留,PDF 中內嵌之任何影像的原始壓縮也不會被保留。您會得到的是一張無損影像,呈現的是 PDF.js 在您所選的縮放比例下繪製到 canvas 上時,該頁面的樣貌。無損壓縮意味著文字與邊緣周圍不會出現 JPEG 類型的瑕疵,這就是為什麼 PNG 適用於圖表、線條藝術、使用者介面圖,以及包含小字型的頁面。

無損並不代表輸出與來源逐位元相同,也不代表無限的細節。頁面會以您選擇的縮放比例進行光柵化,字型與色會依照瀏覽器的渲染器呈現,提高縮放比例只會產生密度更高的像素表示。如果底層的掃描本身解析度就很低,任何縮放設定都無法重現檔案中從未存在的細節。這同時也是一個頁面渲染器,而非內嵌影像擷取器:如果一個 PDF 頁面只包含一張 2,000 像素寬的照片而沒有其他內容,那麼該 PNG 是該照片的渲染結果,而不是從 PDF 內部擷取出的原始影像位元組。

同一份文件的 PNG 與 JPG 之比較

PDF 轉 PNG 使用無損壓縮,而 PDF 轉 JPG 則是有損壓縮。請根據頁面上的視覺內容來選擇,而非憑習慣。

特性PDF 轉 PNGPDF 轉 JPG
壓縮類型無損有損
最適合文字、圖表、線條藝術、UI 擷圖照片類頁面、影像密集的文件
文字周圍的 JPEG 瑕疵無可能出現,尤其在低品質時
典型檔案大小照片類內容較大照片類內容較小
選擇時機需要清晰的文字與圖形時希望檔案更小,且能接受部分模糊時

如果您希望將渲染後的頁面堆疊成一張高聳的長條影像,以便於捲動或分享,PDF 轉長條影像 會將所有頁面組合成一張連續的 PNG。該工具屬於同一組頁面渲染選項的一部分,接受相同類型的輸入,然而如果隱私對您的文件至關重要,您仍應查閱其自身的處理說明。

在按下「Convert」之前的快速安全檢查清單

在將敏感檔案交給任何 PDF 轉 PNG 工具之前,請先確認三件事。首先,開啟瀏覽器的網路面板,確認 PDF 本身從未被傳送到遠端主機;合法的本機工具只會顯示靜態資源、渲染器函式庫,以及最終的 PNG 下載。其次,尋找明確列出的大小、頁數與像素限制;一個沒有任何限制的工具,正是在暗示它並未思考過惡意或意外的過大輸入會對您的瀏器造成什麼影響。第三,閱讀錯誤路徑:一個會明確指出拒絕原因(「encrypted」、「malformed cross-reference table」、「page exceeds 12,000 pixels on one side」)的工具,是決定對您誠實以對、而不是產出損壞輸出的工具。如果某個工具同時滿足這三點,本機處理可以避免 PDF 被傳送到伺服器,但這並不證明來源 PDF 是可信的。請保留原始檔案,並在使用輸出之前加以檢查。

若想從更廣泛的角度檢視相鄰工具上相同的隱私問題,PNG 轉 PDF 隱私指南 從相反的方向探討了相同的上傳 vs. 本機決策。

延伸閱讀:值得一試的無損 PNG 轉 PDF 替代方案。