PNG 轉 BMP 轉換器
有些軟體至今仍只讀得懂點陣圖:舊版 Windows 程式、安裝程式製作工具,以及小型微控制器板上的顯示函式庫。把 PNG 轉成它們接受的無壓縮 BMP,並自行決定透明部分要填入什麼顏色。
圖片轉換器
或將JPG, JPEG, JPE … 檔案拖曳到這裡 ·
每個檔案最大 95 MB· 最多 20 個檔案· 30 分鐘後刪除
檔案會在我們的伺服器上處理,並於 30 分鐘後刪除。
85 可讓照片在視覺上與原圖幾乎相同。只有需要更小的檔案時才調低。
JPG、BMP 和 EPS 不支援透明。透明的像素會以此顏色填滿。
用於透明像素後方的十六進位色碼,例如 #FFFFFF。
此格式只能存放單張圖片。若要保留動畫,請選擇輸出 GIF 或 WebP。
多尺寸圖示會在一個檔案中包含多種解析度,瀏覽器和作業系統會自行選用需要的尺寸。
保留原始尺寸,或輸入其中一邊,系統會維持長寬比。
上方所選邊的像素值。
相對於原始尺寸的百分比。
sRGB 適合螢幕和網頁。印刷流程請保留原始設定;灰階會捨棄顏色。
僅為中繼資料,0 表示保留原始值。印表機和部分入口網站會讀取此數值;不會改變像素尺寸。
使用方式
- 1
拖入 PNG 檔案
從電腦上傳,或貼上複製的圖片,一次最多可加入 20 個 PNG,每個檔案不超過 95 MB。
- 2
選擇背景顏色
這裡輸出的 BMP 不支援透明,所以透明區域預設為白色。你可以在進階設定中選擇黑色或自訂顏色,配合這張點陣圖所在的畫面或對話方塊。
- 3
按下「轉換為 BMP」
可逐一下載 .bmp 檔案,也可下載單一 ZIP。上傳的檔案與轉換結果會在 30 分鐘後刪除。
軟體要求點陣圖時,就把 PNG 轉成 BMP:像素維持不變,透明區域變成純色,檔案則因 BMP 未壓縮而變大。
哪些人還需要把 PNG 轉成 BMP
BMP 是 Microsoft 的點陣圖格式,現行的結構可追溯到 1990 年的 Windows 3.0。它在 54 位元組的標頭之後幾乎就是原始像素,程式不需要解碼函式庫就能讀取。正因如此簡單,它才得以留存在從未加入 PNG 支援的地方。
安裝程式製作工具就是常見的例子:例如 NSIS 的 Modern UI 精靈,標頭與歡迎畫面圖片都要求 .bmp 檔案。較舊的 Visual Basic 與 Win32 程式,則透過讀取點陣圖的 Windows 函式載入啟動畫面和工具列圖片。使用小型 TFT 或電子紙螢幕的微控制器專案,會從 SD 卡讀取 24 位元 BMP,因為解碼 PNG 需要的記憶體是開發板所沒有的。
如果目的地需要的是 Windows 圖示而不是點陣圖,請改用 PNG 轉 ICO;圖示會保留透明度,還能在一個檔案內包含多種尺寸。
BMP 檔案有多大:無壓縮時的檔案大小
6.2 MB一張 1920 × 1080 的圖片存成 24 位元 BMP 的大小,不論畫面多簡單
PNG
Portable Network Graphics
PNG 是 1996 年由 PNG Development Group 發布的無損點陣圖格式,後來由 W3C 與 ISO 納入標準。它會完整保留每一個像素,支援完整的 Alpha 透明度,處理文字、銳利邊緣和純色區塊時不會產生瑕疵。這樣的精確度使它非常適合螢幕截圖、標誌、圖示和介面圖形。代價是檔案大小:存成 PNG 的相片,往往比同一張相片存成 JPEG 或 WebP 大上好幾倍。所有瀏覽器、作業系統和編輯軟體都能開啟 PNG 檔案。
- 壓縮方式
- 無損
- 透明度
- 支援
- 動畫
- 不支援
- 推出年份
- 1996 · PNG Development Group
BMP
點陣圖
BMP 是 Microsoft 與裝置無關的點陣圖格式,自 Windows 早期版本起即為原生格式。它通常以未壓縮方式儲存像素,因此畫質完美,但與 PNG 或 JPEG 相比檔案非常大。新版 BMP 可包含 Alpha 色版,但許多程式會忽略。此格式讀寫簡單,因此仍存在於舊軟體、嵌入式系統與部分工業工具中。Windows、macOS 與幾乎所有影像編輯軟體都能開啟 BMP。
- 壓縮方式
- 無損
- 透明度
- 支援
- 動畫
- 不支援
- 推出年份
- Microsoft
人們把 PNG 轉成 BMP,是因為特定程式、安裝程式或嵌入式螢幕只能讀取單純的 Windows 點陣圖;沒有人是為了檔案大小或品質才選 BMP,反向轉換則是為了再次縮小這些點陣圖。
BMP 與 PNG 比較:得與失
BMP 的優點
- 不需要任何解壓縮函式庫即可讀取
- 像素值與 PNG 完全相同
- 舊版 Windows API 與安裝程式都能接受
- 大小可預測:寬 × 高 × 每像素位元組數
你要付出的代價
- 檔案比 PNG 大上許多倍
- 透明度被純色取代
- 多數讀取程式不支援文字中繼資料或色彩設定檔
- 許多要求 JPG 或 PNG 的上傳表單會拒絕
以正確尺寸與背景將 PNG 轉成 BMP
BMP 以原始列資料儲存,所以尺寸比壓縮更重要。請將調整輸出圖片尺寸設為目標所需的確切尺寸,例如 NSIS 歡迎圖片的 164 × 314 px,或螢幕的原生解析度,這樣程式就不會拉伸或裁掉圖片。
遇到透明的標誌,請選擇這張點陣圖所在的背景色。淺灰色的對話方塊搭配純白方塊看起來會很突兀,所以請在自訂顏色中輸入確切的十六進位色碼。要為韌體專案轉換整個資料夾嗎?一次可處理 20 個檔案,需要較輕的副本時,再用 BMP 轉 PNG 轉回來。
PNG 轉 BMP 常見問題
為什麼 BMP 檔案比 PNG 大這麼多?
標準 BMP 以未壓縮方式儲存每個像素:24 位元時每像素 3 位元組,每一列還會補齊為 4 位元組的倍數。PNG 則用 Deflate 壓縮相同的像素,所以色塊單純的圖形會縮小很多。PNG 只有 20 KB 的標誌,轉成 BMP 後變成數百 KB 很常見,這是正常現象。
PNG 轉 BMP 會損失畫質嗎?
不會更動任何像素。兩種格式都是無失真,24 位元 BMP 的每個色版也和一般 PNG 一樣是 8 位元。唯一改變的是透明度,會以你選擇的背景色取代。
BMP 檔案可以有透明背景嗎?
此格式雖然允許帶有 alpha 色版的 32 位元版本,但小畫家、大多數 Windows API 以及幾乎所有要求 BMP 的程式都會忽略它,顯示成黑色或亂碼。因此本轉換器會把透明部分合成到你選擇的純色上。
Arduino 或 ESP32 顯示器需要哪種 BMP 格式?
多數顯示函式庫(包括 Adafruit 用於 TFT 螢幕的 ImageReader)都能從 SD 卡載入未壓縮的 24 位元 BMP,這正是本轉換器輸出的格式。請先用調整輸出圖片尺寸把圖片調整為螢幕的確切解析度,例如 320 × 240 px,因為開發板無法自行縮放。
BMP 和 DIB 有什麼差別?
DIB 是裝置獨立點陣圖(device-independent bitmap)的縮寫,是 Windows 自 3.0 版起使用的記憶體內配置。.bmp 檔案其實就是在 DIB 前面加上 14 位元組的檔案標頭,所以要求 DIB 或 .dib 檔的程式也能接受 BMP。
網站或電子郵件適合用 BMP 嗎?
不需要。瀏覽器可以顯示 BMP,但檔案比 PNG 或 JPG 大上許多倍,畫面卻沒有任何提升。BMP 只留給需要它的程式使用,其他地方請用 PNG 轉 JPG 或直接使用原本的 PNG。