PNG 轉 JPG 工具在線上使用是否安全,完全取決於它是否會將你的影像上傳到遠端伺服器 —— 如果會,你的像素就會離開你的裝置;如果不會,它們就永遠不會離開。大多數免費轉檔器會靜悄悄地將檔案送到後端,由後端解碼、重新編碼,然後回傳一個你存回磁碟的 JPG。在這過程中,檔案會經過你無法掌控的伺服器,可能會停留在佇列或暫存快取中,理論上還可能被查看、紀錄或洩漏。對於公開文章的截圖來說這沒什麼,但對於稅務文件、醫療影像,或是你尚未發布的產品照片,這就完全不行。有一類較安全的轉檔器完全在你的瀏覽器分頁中運作,使用 Canvas API 和 JavaScript 的 createImageBitmap 函式,在你自己的 CPU 上解碼 PNG 並寫入 JPG,完全不需要任何網路往返。PNG 轉 JPG 工具就屬於第二類,這就是為什麼它對重視隱私的轉檔來說是可靠的預設選擇。

is png to jpg safe to use online
PNG 轉 JPG 在線上使用是否安全?完整隱私解析

在多數網站上將 PNG 轉成 JPG 時會發生什麼事

你在搜尋引擎上找到的典型 PNG 轉 JPG 轉檔器都遵循相同的模式。你點擊上傳,瀏覽器透過 HTTPS 將 PNG 送到後端,伺服器端腳本(通常是 ImageMagick 或 libvips)解碼檔案、以硬編碼的品質編碼 JPG,然後串流回結果。從使用者角度來看,感覺像是在本機執行;從安全性角度來看,很多事情已經改變了。

你的影像已經被寫入別人機器上的磁碟,可能不止一次。該服務可能會紀錄檔名、IP 位址、瀏覽器指紋和轉檔參數。檔案可能會在快取中停留數小時或數天,也可能會被複製到 CDN 上以便更快地傳遞。如果該公司日後遭到入侵、被傳喚或被出售,你的影像就成了其資產的一部分。這些都不會在使用者介面上顯示,而轉檔仍然「能運作」 —— 這正是伺服器端轉檔即使在經營者善意時仍然具有風險的原因。

伺服器端模式的存在有一些合理的理由。非常大的影像、特殊的編解碼器,以及產品管線的批量 API 確實需要伺服器的效能。對於在你的筆記型電腦上快速進行一次性的 PNG 轉 JPG 轉檔來說,這些理由都不適用 —— 你的瀏覽器已經內建了功能強大的影像解碼器,使用它就能完全免除上傳的步驟。

線上 PNG 轉 JPG 工具重視你隱私的三個跡象

有 3 個具體的信號可以告訴你一個線上 PNG 轉 JPG 工具是否妥善對待你的檔案,而且你不用實際轉檔,在一分鐘內就能全部檢查完畢。

第一,頁面應該清楚明確地說明檔案會留在你的裝置上。尋找像是「在瀏覽器中執行」、「不上傳」或「用戶端」這類明確的措辭。如果頁面只說「快速」或「免費」,卻沒說明處理在哪裡進行,那就做最壞的打算。第二,在頁面載入完成後,斷掉網路再試用該工具。真正的用戶端轉檔器會繼續運作,因為程式碼已經在本機執行;伺服器端轉檔器則會因為無法連線到後端而發生錯誤。第三,在轉檔時打開瀏覽器的網路分頁。如果你只看到頁面資源在載入,而且完全沒有夾帶影像資料的 POST 請求,這就表示轉檔是在本機進行。如果你看到 multipart 上傳,那檔案就已經離開你的電腦了。

同樣的隱私設計模式,正是讓像是圓角圖片隱私檢查這類指南值得一讀的原因:安全工具的特徵在各類編輯工具中是可以重複使用的。當你學會辨識它們之後,就不再需要憑信心來判斷安全性了。

PNG 轉 JPG 如何把所有處理都保留在你的瀏覽器中

PNG 轉 JPG 圍繞著一個承諾打造:你的檔案會完全在你的裝置上完成解碼、攤平、重新編碼並提供下載。當你點擊「瀏覽 PNG 檔案」並挑選一張或一百張影像時,瀏覽器會使用 FileReader API 讀取檔案,並將位元組交給 createImageBitmap,由它在用戶端產生解碼後的點陣圖。接著工具會將該點陣圖繪製到一個填滿白色像素的 Canvas 上,讓任何 PNG 的透明區域變成不透明的白色背景 —— JPG 沒有 alpha 通道,沒有填色的 Canvas 在匯出時會變成黑色。

品質滑桿的範圍從 0.60 到 1.00,預設值為 0.92,控制編碼器捨棄高頻細節的程度。每當你移動滑桿,編碼器都會重新執行,因此你在每個預覽旁看到的檔案大小,反映的就是你會下載的 JPG 的實際輸出。產生的結果會被包進 Blob,使用與原始檔名對應的名稱(photo.png 變成 photo.jpg),並透過一般的錨點下載來提供。沒有上傳步驟、沒有佇列、不需要建立帳號,也沒有任何伺服器端點會接觸到這些像素。

由於所有處理都在這個頁面上透過 Canvas API 執行,即使在你斷線之後工具仍然能運作 —— 轉檔依然有效。

如何安全地在瀏覽器中將 PNG 轉成 JPG

如果你想將 PNG 轉成 JPG,卻又不想讓檔案離開你的筆記型電腦,PNG 轉 JPG 工具是最簡單的途徑。完整流程花不到一分鐘。

  1. 在任何現代瀏覽器(Chrome、Edge、Firefox 或 Safari)中打開 PNG 轉 JPG 頁面 —— 這些瀏覽器都支援用戶端轉檔所需的 Canvas API。
  2. 點擊「瀏覽 PNG 檔案」,從你的電腦中選取一個或多個 PNG 影像。一旦你選好檔案,轉檔就會立刻開始;由於檔案是使用 FileReader API 在本機讀取,所以沒有上傳步驟。
  3. 拖曳JPEG 品質滑桿,在檔案大小和影像品質之間取得平衡。預設值 0.92 接近無損,產生的 JPG 會比原始 PNG 小非常多。需要最高品質時可滑到 1.00,想要最小檔案且能接受在銳利邊緣附近出現輕微塊狀或振鈴偽影時,可往下調到 0.60。
  4. 檢視每個檔案旁的即時預覽。工具會並排顯示原始大小和新的 JPG 大小,讓你在下載前能確認節省的空間,而且每當你移動滑桿,編碼器都會重新執行。
  5. 點擊每個結果下方的下載連結。檔案會以你原本的檔案命名 —— photo.png 會下載成 photo.jpg —— 並存進你平常的下載資料夾。如果你丟入的不是 PNG,工具會跳過該檔案並回報,而不是默默產生出損壞的結果。

你應該知道的品質、透明度和取捨

有兩個設計選擇值得更仔細檢視,因為它們決定了所有輸出的樣貌:品質滑桿,以及透明度的處理方式。

JPG 是以離散餘弦轉換(DCT)為基礎。影像會被切成 8×8 的方塊,編碼器會捨棄肉眼幾乎察覺不到的高頻細節。這就是為什麼照片存成 JPG 後通常能縮小為原本 PNG 的一小部分,但平面色塊的標誌和螢幕截圖反而可能變大。相較之下,PNG 是無損的,使用 DEFLATE 壓縮 —— 每個像素都會被精確保留,對照片來說較笨重,但對銳利的邊緣和透明度來說是完美的選擇。

屬性PNGJPG
壓縮方式無損(DEFLATE)有損(基於 DCT)
色彩深度24 位元全彩 + 8 位元 alpha24 位元全彩
最大尺寸2,147,483,647 × 2,147,483,647 px65,535 × 65,535 px
透明度支援不支援
最佳用途標誌、螢幕截圖、線條藝術照片、平滑漸層

因為 JPG 完全無法儲存透明度,每個透明的 PNG 像素在編碼前都必須變成某個實心色彩。PNG 轉 JPG 會先把 Canvas 填滿白色,再將影像繪製上去,這就是為什麼透明背景在輸出中會變成白色而非黑色。如果你之後還需要原始的 PNG 像素,它仍然完整保留在你的磁碟上。

線上 PNG 轉 JPG 工具適合用在什麼時候

用戶端的 PNG 轉 JPG 轉檔器適合用在檔案小到可以放進記憶體、轉檔是一次性或低頻率,而且影像屬於你不想交給陌生伺服器的情況。這涵蓋了大多數個人用途:超過大小限制的電子郵件附件、部落格文章的首圖、尚未發布的產品照片、內部儀表板的截圖,以及你每週會製作的一次性圖片。

它不適合的情況是需要伺服器級處理 —— 數百萬張影像的批量管線、透過 API 的程式化存取,或瀏覽器不支援的編解碼器。這些工作交由具有明確資料保留政策的託管服務較合適。除此之外,在自己的 CPU 上完成解碼、編碼、下載的工具更快、更便宜,也明顯更安全。

想深入了解,請參閱 SVG 轉 JPG 轉檔器在線上使用是否安全?隱私檢查。