how to put jpg to png
如何把 jpg 轉成 png

把 JPG 轉成 PNG 實際在做什麼

把 JPG 轉成 PNG,意思是把照片重新編碼成無損格式,精確儲存每一個仍在的像素,不會再加上新的壓縮痕跡。轉換完全在你的瀏覽器裡用 HTML5 canvas 執行:JPG 被解碼、以原始寬度與高度畫回 canvas,再匯出成你可以下載的 PNG 檔。因為重繪是一對一、沒有縮放或重新取樣,來源的每一個像素都會忠實落入無損容器,準備好編輯,或交給要求 PNG 的工具。轉換無法發明原始 JPG 已經丟掉的細節,所以既有的壓縮痕跡仍看得見——但從這一刻起,檔案是無損的,可以一再儲存,而不會像 JPG 那樣把畫質損失疊加上去。裝置上的原始 JPG 不會被修改;你只是另外得到一份新的 PNG。

這兩種格式解決不同的問題,這也是轉換有用的原因。JPG(JPEG)是有損攝影格式,會丟掉眼睛很少注意到的細節來達到小檔案——很適合相機照片與快速載入的網頁。PNG 是無損格式,精確保住每一個像素、保留銳利邊緣與平面色塊,並能帶透明背景。當你的工作流程要求 PNG——拒絕 JPG 的設計工具、必須能放在任何顏色上的標誌、截圖管線、印刷素材,或任何你打算多次編輯再匯出的影像——你需要一次乾淨、忠實的轉換,而不是再來一輪有損壓縮。

如何在瀏覽器把 JPG 轉成 PNG

不裝任何東西、把 JPG 變成 PNG 最快的方法,是在你自己機器上本機解碼再重新編碼的用戶端轉換器。什麼都不上傳、不必建立帳號,也沒有上傳上限帶來的檔案大小上限。用 JPG to PNG converter 的確切步驟如下:

  1. 開啟工具並點選 Browse JPG files 來挑一張照片——若要一次批次轉換多張照片,按住對應的鍵,在檔案選擇器裡選多張 JPG。
  2. 瀏覽器會解碼每一張 JPG,並以檔案精確的原始寬度與高度重繪到 canvas。因為沒有縮放或重新取樣,來源的每一個像素都會忠實複製進新的 PNG。
  3. 稍等結果清單填入。每一張完成的 PNG 都會帶自己的下載連結。
  4. 點選每一個下載連結,把新的 PNG 檔存到你的裝置。原始 JPG 仍原封不動留在你挑檔的資料夾裡。
  5. 若你轉了一批,對每一筆結果重複下載步驟,或再挑一組新的 JPG 開始下一輪。

轉換以本機磁碟速度進行,這就是為什麼一整個資料夾的照片,會比同一批必須上傳、排隊、處理、再把檔案送回來的伺服器快得多。因為整份工作透過裝置上的 canvas API 執行,頁面一載入,即使沒有可用的上傳連線也能做。

JPG 與 PNG 一覽

下表彙整你決定要不要轉換時真正有關係的差異。這些是兩種格式的固定屬性,不是算出來的數值。

屬性 JPG (JPEG) PNG
壓縮類型 有損——丟掉細節以縮小檔案 無損——精確儲存每一個像素
透明度支援 完整 alpha 通道
同一張照片的典型檔案大小 大上好幾倍
最適合 相機照片、快速載入的網頁影像 標誌、截圖、UI 圖形、編輯再匯出工作流程
再次儲存的畫質 每次都會變差(世代損失) 無論再存幾次都維持相同
邊緣與平面色的銳利度 銳利邊緣周圍可能出現振鈴 像素級精確,無振鈴
瀏覽器支援 全面 全面

轉成 PNG 會提升影像畫質嗎?

不會——這也是關於 JPG 轉 PNG 最常見的誤解。轉成 PNG 讓檔案 從那一刻起變成無損,但無法還原細節,也無法去掉原始 JPG 已經丟掉的壓縮痕跡。你得到的是可以反覆編輯、再儲存、而不再損失畫質的格式。若來源 JPG 已經有模糊、塊狀邊緣,或漸層裡的色帶,轉換後的 PNG 會在同樣位置顯示同樣痕跡,因為轉換只是把已經在那裡的東西重新包裝。

這也是為什麼 JPG 轉 PNG 對之後的編輯是單向的畫質升級。每次你再存一份 JPG,編碼器都會再丟掉一點細節;經過幾次再存,照片會明顯比原圖更軟。相對地,PNG 可以隨你喜歡開啟、編輯、再儲存任意多次,像素在各次儲存之間保持位元級相同。這就是編輯者在開始任何重度編輯前,會把工作檔重新編碼成 PNG(或另一種無損格式)的實務原因。

為什麼新的 PNG 比 JPG 更大

PNG 是無損的,所以轉換後的 PNG 經常比它來自的 JPG 更大——那是像素級精確、可再壓縮品質的老實代價,不是轉換器的缺陷。JPG 利用人類視覺的限制把照片擠成小檔,然後把丟掉的細節永遠扔掉。PNG 精確儲存每一個像素,每個像素要花更多位元組,對雜訊多的攝影內容尤其如此。對典型照片來說,無損 PNG 往往比 JPG 大上好幾倍;確切比例取決於 JPG 已經丟掉多少細節,以及場景有多複雜。

若這個用途裡檔案大小比無損品質更重要——用電子郵件寄照片、上傳到論壇,或要壓進大小上限——繼續用 JPG 或重新編碼成 JPG 才是對的。image compressor 可以在不離開瀏覽器的情況下,把兩種格式再縮小。若你需要無損容器、但又想要較小的像素,image resizer 可以在轉換前或轉換後改尺寸。這些步驟之後的確切位元組數來自工具本身,不是固定規則。

透明度無法從 JPG 帶過來

JPG 無法儲存 alpha 通道,所以來源裡沒有可保留的透明度。產出的 PNG 完全不透明。若你需要真正透明的背景——例如必須能放在任何顏色上的標誌——單靠轉換給不了你。你必須在轉換後另外去除背景,用支援感知 alpha 遮罩的工具。之後需要時,再把平面色背景加回去。

兩點實務提醒。第一,不要指望只要存成 PNG,白色或任何顏色的背景就會消失。第二,若目標是透明度,請從已經有透明度的格式開始——PNG 本身、帶透明背景的截圖,或 SVG——而不是從 JPG 轉換。試圖從 JPG 抽出透明度是不可能的,因為這個格式根本沒有記錄要知道哪些像素是透明所需的資料。

什麼時候把 JPG 轉成 PNG 說得通

轉換在少數常見情境會劃算。當你依賴的工具拒絕 JPG、要求 PNG 時就用——許多設計應用程式、素材匯入器與印刷管線都是這樣。用於標誌、圖示,以及任何銳利邊緣與平面色比檔案大小更重要的 UI 圖形。當你打算多次編輯影像、並希望每次再存都相同時就用。用於文字與細線必須保持清晰的截圖與圖表。對高品質印刷工作,無損容器也有幫助——印刷時 PNG 與 JPG 的比較指南 會逐步說明印刷解析度下各格式的取捨。

當目標是盡可能小的檔案時,轉換 劃算——那種情況你要的是 JPG,或用壓縮器再縮小。來源已經是 PNG、你需要 JPG 無法提供的透明度,或接收系統根本不接受 PNG 時,也不劃算。用電子郵件寄 JPG 幾乎總是比寄等價的 PNG 更省,因為 JPG 比較小,而且多數郵件用戶端對兩種格式一視同仁。

轉換之後:PNG 接下來怎麼用

PNG 到了裝置上之後,幾個瀏覽器工具可以在不上傳任何東西的情況下把工作接下去。用 image resizer 在把素材上傳到有大小限制的地方之前,改像素尺寸。若你想要較小的檔、但仍要留在 PNG,就用 image compressor——注意 PNG 上的壓縮不如 JPG 戲劇性,因為這個格式已經是無損的。要裁切、旋轉、翻轉或加邊框,其餘瀏覽器內影像工具可以本機編輯 PNG,再交回一份全新的完整解析度檔。

這些步驟全部在用戶端執行,所以工作流程從頭到尾都保持私密。原始 JPG 全程留在你的裝置上,轉換後的 PNG 直接下載到你的下載資料夾,伺服器上不會留下中間複本。這也是為什麼本機執行的轉換器適合敏感照片——檔案路徑是「你的磁碟 → 你的瀏覽器 → 你的磁碟」,中間沒有第三方。

若要更深入了解,見 在 Canva(或瀏覽器)把 SVG 轉成 JPG.