PDF 轉圖片

PDF 每頁輸出為 PNG 或 JPEG,全程在瀏覽器完成

PDF 轉圖片把文件的每一頁光柵化成一張 PNG 或 JPEG。渲染引擎是 pdf.js,它的解析工作跑在你瀏覽器開出來的 Web Worker 裡,worker 檔案是從本站自己的路徑載入的、不是外部 CDN,你選的 PDF 從頭到尾留在這台裝置上。要先有的認知是:這是一趟單向轉換。轉出來的是像素,文字層、超連結、可選取的內容在那一刻全部消失,且無法從圖片還原回 PDF。

使用步驟

  1. 選一個 PDF。上傳框收單一檔案,上限與其他 PDF 工具相同。
  2. 選「輸出格式」:PNG 或 JPEG。兩顆按鈕預設停在 PNG。
  3. 拉「解析度倍率」滑桿,範圍 1 到 4、只能取整數,預設是 2。標籤上會即時顯示目前選到幾倍(例如「解析度倍率: 2×」)。倍率乘以 72 就是實際的 dpi:1× 約 72 dpi、2× 約 144、4× 約 288。
  4. 按「轉換為圖片」。轉換期間按鈕旁會出現「已完成 / 總頁數」的進度數字,以及一個「取消」連結。
  5. 每轉好一頁就立刻長出一張縮圖,不必等全部跑完。中途按「取消」會在當前這一頁做完之後停下,已經產生的圖片全部保留、照樣可以下載。
  6. 每張縮圖下方各有一個「下載第 N 頁」的連結,檔名是 page-1.png 這樣的格式(選 JPEG 時副檔名為 .jpg)。沒有一鍵打包下載,要幾頁就點幾次。

什麼時候用得上

把 PDF 的某一頁貼進簡報或文件裡

投影片軟體貼入整份 PDF 通常只會變成一個檔案圖示,貼圖片才會真的顯示出來。轉成 2× 的 PNG 貼進去,在投影布幕上放大也還算清楚;如果那一頁本身是滿版的圖表,拉到 3× 會更保險。

應付只收圖片的上傳欄位

不少報名系統、政府平台或客服表單的附件欄位只接受 JPG 與 PNG,卻要你附上 PDF 格式的證明文件。轉成 JPEG 通常最合適,因為那些系統多半有幾 MB 的單檔限制,而 JPEG 在同樣尺寸下比 PNG 小很多。送出前記得放大檢查文字是否還讀得清楚,不夠清楚就把倍率往上調一級。

做設計稿或版面的快照存檔

排版完成的稿件轉成 4× 的 PNG,可以當成不會跑版的視覺紀錄——不必擔心對方電腦少了某套字型而顯示成別的樣子,因為所有東西都已經被畫成像素了。這也是把版面貼上聊天軟體給同事看的最快方式。

取出海報或單張設計稿的預覽圖

單頁的活動海報、菜單、傳單常以 PDF 交付,但社群貼文與網站縮圖需要的是圖檔。一頁的文件轉換很快,選 PNG 保留銳利的文字邊緣,再依平台需求自行縮放。要注意這裡沒有裁切與尺寸設定,輸出的長寬完全由頁面尺寸乘上倍率決定。

限制與注意事項

  • 黑白掃描件轉得出來。CCITT Group 4、JBIG2 與 JPEG 2000 這三種影像壓縮在目前版本是由 WebAssembly 模組解碼的,那份模組由本站自己提供(與其餘 pdf.js 資產一樣走自家網域,不向 CDN 索取)。CCITT Group 4 正是傳真與辦公室事務機掃黑白文件的預設格式,所以這類檔案佔比不低。
  • 使用預定義 CJK 編碼、又沒有把字型內嵌進檔案的 PDF(繁體中文公文與早期系統匯出的檔案常見)需要一份額外的編碼對照表,才能把字碼對到字形。那份對照表同樣由本站提供,所以這類文件的中日韓文字會正常畫出來 —— 缺了它的話不是掉幾個字,是整個字型物件載入失敗、那段文字一個字都不會出現。
  • 效能上有個實作細節值得先知道:每轉一頁,程式都會把整個檔案重新解析一次,並且複製一份完整的檔案內容到記憶體裡。這代表耗時大致隨頁數線性成長,而且大檔案的成本會被乘上頁數——一份 30 MB、200 頁的文件在轉換過程中會反覆做 200 次完整解析。頁數多的檔案請預留時間,也別在同一個分頁裡同時開其他吃記憶體的工作。
  • 轉換途中不要去動格式或倍率。那兩組控制項在處理期間沒有被停用,而切換它們會把「已經產生的圖片」全部作廢並釋放掉,但背景的轉換迴圈仍在繼續並把舊清單寫回畫面,結果是縮圖破圖、下載連結失效。真的要改設定,請先按「取消」,等按鈕從「處理中...」變回來,再調整後重新轉換。
  • 沒有批次下載。一份 60 頁的文件就是 60 個「下載第 N 頁」連結,得一個一個點。若只需要其中幾頁,比較有效率的做法是先用 PDF 分割取出那幾頁,再拿短檔案來轉——同時也省下前面提到的重複解析成本。
  • 輸出尺寸完全由頁面尺寸乘上倍率決定,沒有指定寬高、裁切邊界或壓縮品質的選項。JPEG 的品質固定在 0.92,PNG 則是無損。A4 頁面在 2× 下大約是 1191 × 1684 像素,4× 下約 2381 × 3368 像素。
  • 瀏覽器對單一畫布的尺寸與總面積有上限。一般 A4、A3 在 4× 之下都安全,但大尺寸的工程圖或海報頁在高倍率下可能超過限制,此時該頁會失敗並顯示通用的「處理時發生錯誤,請重試」。碰到這種情形把倍率調低一級通常就能通過。
  • 轉出來的圖片不含文字層,沒辦法搜尋、選取或複製其中的文字,也不會有超連結、書籤或表單欄位。這個站上沒有 OCR,圖片轉回可搜尋 PDF 的路徑並不存在。需要保留文字請改用 PDF 分割,它取出的頁面文字層完好。

常見問題

倍率要選多少?我要拿去印。

先算清楚:倍率乘 72 才是 dpi,所以最高的 4× 也只有 288 dpi,仍略低於印刷業界常說的 300 dpi 標準。一般文件在 288 dpi 下印出來肉眼看不出問題,但精細的線條圖或小字級的表格可能會略糊。真正要送印的檔案,最好的做法是直接給對方原始 PDF——PDF 裡的文字與向量圖是解析度無關的,印表機會用自己的解析度去渲染,任何轉成圖片的中間步驟都只會扣分。

PNG 和 JPEG 該選哪一個?

判斷依據是頁面的內容型態。以文字、表格、線條為主的頁面選 PNG:它是無損壓縮,黑白分明的字緣不會出現 JPEG 那種灰灰的雜訊光暈,而且這類畫面的 PNG 壓縮率其實很好。整頁都是照片或漸層的頁面選 JPEG:同樣尺寸下檔案可能只有 PNG 的幾分之一,而照片本來就不怕那點失真。不確定就先用預設的 PNG 轉一頁看看檔案多大,太大再改 JPEG 重轉。

有辦法一次把所有頁面下載成一個壓縮檔嗎?

沒有,目前只能逐頁點「下載第 N 頁」。頁數多的時候有兩個實務上的省力方式:一是在瀏覽器設定裡關掉「每次下載都詢問儲存位置」,這樣連續點的時候不會每次都跳出對話框;二是先確認自己真正需要哪幾頁,用分割工具取出來之後再轉,通常會發現要點的連結少了一大半。

轉完的圖片檔案比原本的 PDF 還大很多,正常嗎?

正常,而且經常如此。PDF 儲存的是「怎麼畫」的指令——一段文字只是幾個字碼加上字型引用,一條線只是兩個座標,佔的空間極小。轉成圖片之後,這些指令通通變成一格一格的像素,一張 A4 在 4× 下就是八百萬個像素要存。所以一份 500 KB、文字為主的報告轉成 PNG 之後變成幾十 MB 是完全合理的。想壓下來就降低倍率,或改用 JPEG。

轉出來的圖片能再變回 PDF 嗎?

技術上可以——本站的圖片轉 PDF 工具就能把它們重新組回一份文件,但那份文件裡只有圖片,不會有文字層。也就是說你不會拿回原本的 PDF,只會拿到一份「掃描件外觀」的 PDF:不能搜尋、不能選字、體積大得多、連結也全部失效。真的需要往返的話,請保留原始檔案,不要把轉出來的圖片當成備份。

為什麼有些頁面轉出來是空白的?

先確認那一頁在原始檔案裡本來就有內容 —— 報表系統在結尾附一張空白頁是很常見的事。若原檔確實有內容而轉出來是白的,通常是該頁使用了本工具尚未涵蓋的影像壓縮或字型情形;常見的黑白掃描壓縮(CCITT、JBIG2、JPEG 2000)與預定義 CJK 編碼都已支援,所以先用閱讀器打開原檔對照那一頁,再決定是不是要換工具處理。

轉到一半可以停嗎?停下來的部分還能用嗎?

可以。按下「取消」之後,正在渲染的那一頁會先做完,接著迴圈就不再往下走。已經產生的縮圖與下載連結全部保留,不會被清掉,所以「只想要前面十頁」的情境可以直接開始轉、數到十頁就按取消。要注意取消之後不能從中斷處續轉,重新按「轉換為圖片」會從第一頁重來,而且會先把上一批圖片清空。