要把 PDF 轉成 PNG 影像,請在瀏覽器中開啟 PDF 轉 PNG 工具,挑選一個最大 25 MiB 的本機檔案,選擇輸出縮放倍率,然後點擊 Convert to PNG。每一頁會個別以無損 PNG 方式渲染,下載前會顯示實際的寬度與高度。所有解析、渲染、編碼與下載檔案的動作都在你目前這個瀏覽器分頁內完成,因此原始文件從不離開你的電腦。PNG 採用無損壓縮,這代表頁面影像會保留畫布在所選縮放倍率下所產生的每一個像素,文字、邊緣或圖表周圍都不會出現 JPEG 風格的瑕疵。輸出是該可見頁面的平面點陣表示,因此可選取的文字會變成影像像素,可點擊的連結也無法再被點擊。你會得到每一頁一個以零填補編號的 PNG 檔案,命名方式會依照 PDF 的順序排列,而每張 PNG 都是你在所選縮放倍率下的真實點陣化結果,不是模糊的螢幕擷取畫面。

大多數人搜尋如何把 PDF 轉成 PNG 的原因是螢幕擷取畫面永遠看起來不對。PDF 頁面的螢幕擷取是你螢幕所顯示內容以螢幕解析度進行的點陣化,這通常會導致文字模糊、圖表褪色。PNG 是網路上標準的無損影像格式,因此一張正確渲染的 PNG 頁面可以直接放進投影片、貼到說明文件截圖、附加到聊天訊息,或上傳到內容管理系統,相較於原始來源不會有任何可見的品質損失。如果你需要手冊中的某一頁、報告中的清晰圖表,或合約頁面的可分享影像,將 PDF 直接轉成 PNG 可以得到與 PDF 本身渲染一樣銳利的結果。

how to put pdf to png
如何以正確的縮放倍率將 PDF 轉成 PNG

PNG 保留了什麼(以及哪些會被捨棄)

一個 PDF 頁面是一堆繪圖指令的堆疊:向量路徑、文字流、嵌入的點陣影像、字型、透明度和裁剪規則。這個工具會把該頁面餵給 PDF.js,也就是 Mozilla 維護的開源 PDF 渲染器,並要求它把可見的結果繪製到畫布上。然後畫布會以明確的 image/png 編碼方式進行編碼,產生具有無損壓縮的真實 PNG。

由於畫布只是像素的格子,PDF 中所有可編輯的元素都會被扁平化為影像。可選取的文字變得無法選取、可點擊的連結無法再導航、表單欄位變成無作用的方框、向量幾何變成著色像素,原本嵌入影像的中繼資料或壓縮也不會被保留。你保留的是頁面在所選縮放倍率下一張忠實的視覺快照。「無損」代表 PNG 完整編碼了渲染器所產生的每個像素而不丟棄資訊,但這並不代表輸出與原始 PDF 位元組完全相同——那些本來就不是點陣格式。

PNG 也無法憑空生出來源中沒有的細節。如果 PDF 包含的是低解析度掃描,渲染出來的 PNG 會反映該掃描的解析度乘上你的縮放倍率;它無法重建從未被擷取到的資訊。較高的縮放倍率只是把頁面中已有的內容以更密集的點陣方式呈現,並沿用瀏覽器渲染器所套用的顏色與字型。

為頁面挑選合適的縮放倍率

縮放倍率是把每個 PDF 點轉成固定像素數量的乘數。一個 PDF 點正好是 1/72 英吋,因此標準的美國 Letter 頁面是 612 乘 792 個 PDF 點。在縮放倍率 1 下輸出為 612 乘 792 像素,縮放倍率 2 下變成 1224 乘 1584 像素,縮放倍率 3 則是 1836 乘 2376 像素。要了解縮放倍率如何改變頁面,可以拿美國 Letter 頁面逐步算一下縮放倍率 2:把每邊乘以 2(612 × 2 = 1224 像素寬,792 × 2 = 1584 像素高),再把寬和高相乘得到總像素數(1224 × 1584 = 1,938,816 像素,約略是 1.94 百萬像素,這是該單一頁的量級)。

由於像素數量會依縮放倍率的平方成長,縮放倍率加倍會讓每頁像素變成四倍,變三倍則會乘以九倍。檔案大小也大致依此成長,這就是為什麼一份 40 頁的 PDF 在縮放倍率 3 下產生的下載會比同一份 PDF 在縮放倍率 1 下明顯大很多。

一個實用的原則:

  • 縮放倍率 1 適用於縮圖、快速預覽,或你不會再放大檢視的頁面。
  • 縮放倍率 2 是投影片、說明文件和聊天附件最常見的甜蜜點——文字可讀、線條乾淨,檔案又不會太大。
  • 縮放倍率 3 或更高適用於文字極小、UI 擷取密度很高,或你打算裁切緊湊並以原生像素密度檢查的影像。

這個工具會在編碼前預檢所有計畫輸出的頁面視口,當任何單頁任一邊超過 12,000 像素或超過 40 百萬像素時會拒絕處理,因此在非常大的頁面上使用非常高的縮放倍率時,即使來源 PDF 本身可被接受,也可能會被拒絕。

如何在瀏覽器中將 PDF 轉成 PNG

  1. 開啟工具並選取本機 PDF。檔案大小必須為 25 MiB 以下。加密的 PDF、損壞的檔案以及超出安全上限的文件會以可見訊息被拒絕;由於不會上傳任何內容,因此拒絕動作只會在本地分頁中發生。
  2. 選擇輸出縮放倍率。挑選符合你使用目的的乘數——縮放倍率 1 適用於精簡預覽,縮放倍率 2 適用於一般用途的分享,縮放倍率 3 或更高則適用於需要放大或緊密裁切的場景。每次變更縮放倍率後,先前的結果都會被清除,因此顯示的設定永遠不會與實際產生的結果默默不一致。
  3. 點擊 Convert to PNG。PDF.js 及其專屬 worker 會依需求載入,每個計畫輸出的頁面都會透過渲染器渲染,並明確以 image/png 編碼畫布。工具會顯示每個完成頁面的像素寬度與高度。
  4. 確認尺寸並下載。對每個頁面,請確認寬度與高度符合預期,然後下載個別的 PNG。輸出檔名會去掉任何既有的 .pdf 副檔名、替換掉桌面檔名中常見的不安全字元,並加上以零填補的頁碼,讓整套檔案依照 PDF 的順序排列。
  5. 變更任何設定時請重新執行。選擇新檔案或新縮放倍率會取消先前的作業。取消、替換和卸載都會釋放頁面資源、畫布、渲染任務和暫存的下載網址,因此大型影像緩衝不會被保留超過必要時間。

可能讓轉檔中止的限制

這個工具完全在單一瀏覽器分頁中運作,而分頁無法安全地為單一轉檔配置無上限的記憶體。在任何 PNG 被編碼之前,所有計畫輸出的頁面視口都會被檢查。當超出以下任一限制時,轉檔會被拒絕:

限制門檻
輸入檔案大小最多 25 MiB
頁數最多 40 頁
單頁寬度或高度任一邊最多 12,000 像素
單頁總像素數最多 40 百萬像素
所有頁面的計畫像素總和最多 100 百萬像素

如果你的 PDF 觸發了這些檢查中的任何一項,轉檔會在任何下載產生之前停止。常見的原因包括以非常高的 DPI 掃描的 PDF(每頁本身就已經很大)、在縮放倍率 3 或更高下渲染數十頁的報告,或渲染器無法解析的加密 PDF。這個工具不會繞過密碼、不會修復損壞、不會驗證簽章,也不會移除惡意程式;它只會直接拒絕該檔案並顯示原因。

如果被拒絕的原因是縮放倍率,降低一階通常就能解決。如果被拒絕的原因是頁數或輸入大小,先用 分割 PDF 切開 PDF,或用 刪除 PDF 頁面 修剪內容,就能以兩輪處理該文件。

PNG、JPG 或長圖——挑選合適的輸出

PDF 轉 PNG 工具是 PDF 可用的三種影像輸出之一。每一種都適合不同的用途,而選擇通常取決於你需要無損品質還是最小檔案大小,以及頁面應該維持個別檔案還是堆疊成一張影像。

使用情境最佳輸出原因
包含文字、圖表、UI 擷取、向量線條或小字型的頁面PNG(無損)邊緣不會出現 JPEG 瑕疵;任何縮放程度下都可讀
照片類頁面,且小檔案比完美文字更重要JPG(有損)檔案通常較小;照片可接受 JPEG 瑕疵
需要長捲動參考資料,且所有頁面都在同一張影像中長圖(PNG)一張高聳影像,而非多個分散檔案

三種情況下底層的渲染器是相同的——都是由 PDF.js 把可見頁面繪製到畫布上——但編碼與打包方式不同。PNG 精準保留每一個渲染像素,JPG 用部分保真度換取更小的檔案,長圖變體則會以可調整的間距把每一頁垂直拼接在一起。如果你不確定,可以分別以所選縮放倍率把同一頁渲染成三種格式,再挑一個在你可接受的檔案大小下看起來最合適的。

這些操作都不會修改來源 PDF;原始檔案會維持你載入時的狀態留在你的電腦上。

延伸閱讀:把 PNG 轉成 PDF 在線上使用是否安全?一份隱私指南

延伸閱讀:選擇合適的方式將 PDF 轉為灰階