# PNG to JPG

> 把透明 PNG 鋪上你選的背景色再編成 JPG，全程在瀏覽器完成。實測 1,689,485 位元組降到 351,967，EXIF 與位元深度不會留下，透明區域之後也救不回來。

- URL: https://bytescope.dev/zh-Hant/image-convert/png-to-jpg/
- Locale: zh-Hant · Also: [en](https://bytescope.dev/en/image-convert/png-to-jpg.md) · [ja](https://bytescope.dev/ja/image-convert/png-to-jpg.md)
- Runs: 檔案不會離開你的瀏覽器 — 全部在本機處理。
- Requires: Any modern browser (Chrome, Edge, Firefox, Safari), desktop and mobile.
- Updated: 2026-09-08

## What it does

### PNG 轉成 JPG 會失去什麼

最先不見、也最難救回的是透明度。JPG 根本沒有 alpha 色版，所以每一個透明或半透明像素都會和上方設定裡選定的背景色合成，沒改的話就是白色，而工具一發現來源帶透明就會跳出警告。去背輸出的 logo 會變成貼在一塊方形色板上的 logo。輸出檔裡完全沒有記錄原本哪裡是透明的，所以之後用編輯軟體打開，也分不出哪些像素是被合成上去、哪些本來就是那個顏色。

第二種損失剛好和 PNG 常裝的內容犯衝。實測用的編碼採 4:2:0 色度取樣，亮度逐像素保留，色彩卻只有橫向與縱向各一半的解析度。照片吃得下這種取捨，但住在 PNG 裡的螢幕截圖、示意圖、圖表與 UI 輸出吃不下。深色面板上的紅字、細的彩色分隔線、一像素寬的外框都會出現看得見的色彩暈邊，而且調高品質也沒用——色彩資訊在品質滑桿控制的量化步驟開始之前就已經被丟掉了。

剩下的就是重新編碼的固定成本。16-bit 的來源在編碼前先掉進 8-bit 的 canvas，嵌入的 ICC 色彩描述檔與 EXIF 區塊都不會複製到輸出，動畫 PNG 則只貢獻第一格影像——工具會關掉解碼器並提示，而不是硬去寫一個 JPG 表達不了的結構。最後，品質 85 是有損編碼：就算這張照片一路走來都是無損的，細紋理與邊緣也會被近似一次，而且不會再變回去。

### 實測時檔案大小怎麼變

2026-09-12 那次測到的是一張 1280 × 854、經「最佳化 (oxipng)」打開之後寫出來的 PNG，1,689,485 位元組。這個工具預設把那個選項關著。編成 4:2:0、品質 85 的 JPG 之後是 351,967 位元組，這張照片樣本約縮小 79%。測量在 Node 裡執行，用的是 sharp；你的瀏覽器走 canvas，會自己挑量化表，所以請預期上下幾個百分點的差距，不要拿數字去對。照片的方向是可靠的，平面截圖省下的幅度小得多，簡單示意圖甚至可能變大，因為 JPG 沒有便宜的方式去存大片同一個顏色的區域。

### 什麼時候不該把 PNG 轉成 JPG

需要透明度的圖不要轉：logo、圖示、貼圖，以及任何會被放到未知底色上的圖都算。文字或 UI 的螢幕截圖也不要轉，色度取樣和銳利邊緣旁的振鈴正好是人眼最容易挑出來的那種瑕疵。之後還要繼續編輯的工作母檔同樣不該轉，每存一次就多一個世代的損失。如果只是想讓網頁上的檔案變小，WebP 和 AVIF 都能留住 alpha 色版，而且在同樣視覺品質下比 JPG 更省，這頁兩種都選得到。JPG 站得住腳的時機是：檔案得被很舊的軟體打開、要送去沖印，或者投稿欄位只接受那兩個副檔名。

轉換完全在你的瀏覽器內進行 — 不上傳、不排隊、無浮水印。想放幾個檔案都行，可逐一下載，也能打包成 zip。

## Limits

最先不見、也最難救回的是透明度。JPG 根本沒有 alpha 色版，所以每一個透明或半透明像素都會和上方設定裡選定的背景色合成，沒改的話就是白色，而工具一發現來源帶透明就會跳出警告。去背輸出的 logo 會變成貼在一塊方形色板上的 logo。輸出檔裡完全沒有記錄原本哪裡是透明的，所以之後用編輯軟體打開，也分不出哪些像素是被合成上去、哪些本來就是那個顏色。

第二種損失剛好和 PNG 常裝的內容犯衝。實測用的編碼採 4:2:0 色度取樣，亮度逐像素保留，色彩卻只有橫向與縱向各一半的解析度。照片吃得下這種取捨，但住在 PNG 裡的螢幕截圖、示意圖、圖表與 UI 輸出吃不下。深色面板上的紅字、細的彩色分隔線、一像素寬的外框都會出現看得見的色彩暈邊，而且調高品質也沒用——色彩資訊在品質滑桿控制的量化步驟開始之前就已經被丟掉了。

剩下的就是重新編碼的固定成本。16-bit 的來源在編碼前先掉進 8-bit 的 canvas，嵌入的 ICC 色彩描述檔與 EXIF 區塊都不會複製到輸出，動畫 PNG 則只貢獻第一格影像——工具會關掉解碼器並提示，而不是硬去寫一個 JPG 表達不了的結構。最後，品質 85 是有損編碼：就算這張照片一路走來都是無損的，細紋理與邊緣也會被近似一次，而且不會再變回去。

## FAQ

### JPG 沒有 alpha 色版，透明的 PNG 會變怎樣？

每個透明像素都會和設定裡的背景色混合，預設是白色，而且會跳警告告訴你發生了。請挑跟圖片實際擺放位置一樣的顏色——鋪成白底的 logo，一放到深色頁面上就會露餡。

### 為什麼截圖轉成 JPG 之後文字邊緣會暈開？

因為色彩只用一半的橫向與縱向解析度儲存，一像素寬的彩色邊緣得從鄰近區塊推回來。調高品質能減少振鈴，卻補不回先被丟掉的色度。截圖該留在 PNG、WebP 或 AVIF。

### 之後還能從 JPG 把透明度救回來嗎？

不行。alpha 色版不是被壓縮成劣化版本，而是整個不見，合成後的像素就是普通的不透明像素。要重做去背只能手動選取再擦掉背景，所以原始 PNG 值得跟 JPG 一起留著。

### 我的圖片會被上傳到任何地方嗎？

不會。轉換在你的瀏覽器內使用 canvas API 和 Web Worker 完成 — 檔案不會離開你的裝置。沒有上傳步驟、不用排隊，檔案大小也只受限於你電腦的記憶體。

### 轉換後的圖片會保留 EXIF 中繼資料嗎？

不會 — 而這正是特色之一。透過 canvas 重新編碼會移除所有中繼資料：GPS 位置、相機型號、時間戳記和色彩描述檔。輸出只包含像素，而這通常正是你公開分享圖片前想要的結果。

### 可以一次轉換很多張圖片嗎？

可以。拖放或貼上任意數量的檔案；每個檔案都會在背景轉換，各自有進度顯示和下載按鈕，也可以把全部內容打包成 .zip 一次下載。

### 轉檔會讓畫質變差嗎？

看你選的目標格式。不管來源和目標是哪兩種格式，轉換器一律先解碼成原始像素再重新編碼，中繼資料也是這樣被移除的。目標是無損格式（PNG，以及在 256 色限制內的 GIF）時，像素和解碼出來的完全一樣；目標是 JPEG、WebP 或 AVIF 時，則由品質滑桿控制取捨，而且來源本來就是有損檔的話，會再多疊一層損失。
