UltKit

PNG转BMP在线转换

有些软件至今只认位图:旧版Windows程序、安装包制作工具,以及小型单片机开发板上的显示库。把PNG转换为它们能读取的无压缩BMP,并自行决定透明部分用什么颜色填充。

图片格式转换

或将JPG, JPEG, JPE … 文件拖放到此处 ·

单个文件最大 95 MB· 最多 20 个文件· 30 分钟后删除

输出

文件在我们的服务器上处理,并在 30 分钟后删除。

使用方法

  1. 1

    拖入PNG文件

    从电脑上传,或粘贴复制的图片,一次最多添加 20 张 PNG,每张不超过 95 MB。

  2. 2

    选择背景色

    这里输出的 BMP 不支持透明,所以透明区域默认为白色。可在高级设置中选择黑色或自定义颜色,使其与位图所在的界面或对话框底色一致。

  3. 3

    点击“转换为 BMP”

    可逐个下载 .bmp 文件,也可下载单个 ZIP。上传的文件和转换结果会在 30 分钟后删除。

软件要求位图时,可把 PNG 转成 BMP:像素保持不变,透明部分变为纯色,文件会变大,因为 BMP 不压缩。

哪些场景仍需要把PNG转换为BMP

BMP 是微软的位图格式,现在的结构可追溯到 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 的大小,无论画面多简单

1920 × 1080 像素 × 3 字节 = 6,220,800 字节,再加 54 字节的文件头。带 Alpha 的 32 位 BMP 每像素需要 4 字节,同样的图片约为 8.3 MB。

PNG

便携式网络图形(PNG)

PNG 是 PNG 开发组于 1996 年发布的无损位图格式,后来由 W3C 和 ISO 标准化。它精确保留每个像素,支持完整的 Alpha 透明度,处理文字、锐利边缘和纯色块时不会产生伪影。这种精确度使它非常适合截图、徽标、图标和界面图形。代价是体积:保存为 PNG 的照片往往比同一张照片的 JPEG 或 WebP 大好几倍。所有浏览器、操作系统和编辑器都能打开 PNG 文件。

压缩方式
无损
透明度
支持
动画
不支持
发布年份
1996 · PNG Development Group
PNG 转换器

BMP

位图图像

BMP 是微软的设备无关位图格式,自 Windows 早期版本起就是其原生格式。它通常以无压缩方式保存像素,因此画质完美,但文件比 PNG 或 JPEG 大得多。较新的 BMP 版本可以包含 Alpha 通道,但许多程序会忽略它。该格式读写简单,因此在旧软件、嵌入式系统和一些工业工具中仍在使用。Windows、macOS 和几乎所有图像编辑器都能打开 BMP 文件。

压缩方式
无损
透明度
支持
动画
不支持
发布年份
Microsoft
BMP 转换器

人们把 PNG 转成 BMP,是因为某个程序、安装包或嵌入式显示屏只能读取普通的 Windows 位图;没有人会为了体积或画质选择 BMP,反方向的转换则是为了再次缩小这些位图。

BMP与PNG对比:得与失

BMP 的优点

  • 无需任何解压库即可读取
  • 像素值与 PNG 完全一致
  • 老式 Windows API 和安装程序都能接受
  • 大小可预测:宽 × 高 × 每像素字节数

需要放弃的

  • 文件比 PNG 大许多倍
  • 透明被替换为纯色
  • 多数读取程序不支持文本元数据和色彩配置文件
  • 许多要求 JPG 或 PNG 的上传表单不接受

PNG转BMP:设置合适的尺寸和背景

BMP 按原始行存储,所以尺寸比压缩更重要。请把调整输出图片尺寸设为目标所需的精确尺寸,例如 NSIS 欢迎图的 164 × 314 px,或显示屏的原生分辨率,这样程序就不会拉伸或裁切图片。

对于透明的 Logo,请选择位图所在位置的背景色。浅灰色的对话框配上纯白方块会很难看,所以请在自定义颜色中输入准确的十六进制值。要为固件项目转换整个文件夹?每次可一次处理 20 个文件,需要体积更小的副本时,可用 BMP转PNG 转回去。

PNG转BMP常见问题

为什么BMP比PNG大这么多?

标准 BMP 不压缩,每个像素都原样存储:24 位色下每像素 3 字节,并通过填充让每一行的字节数是 4 的倍数。PNG 用 Deflate 压缩同样的像素,色块单一的图形能缩小很多。一个 PNG 只有 20 KB 的 Logo,保存为 BMP 后很容易达到几百 KB,这是正常现象。

PNG转BMP会损失画质吗?

不会改变任何像素。两种格式都是无损的,24 位 BMP 每个通道同样是 8 位,与常见的 PNG 一致。唯一变化的是透明度,它会被你选择的背景色取代。

BMP文件可以有透明背景吗?

BMP 格式本身允许带 Alpha 通道的 32 位版本,但画图、大多数 Windows API 以及几乎所有要求 BMP 的程序都会忽略它,显示成黑色或乱码。因此转换器会把透明部分铺到你选定的纯色上。

Arduino或ESP32显示屏需要哪种BMP格式?

大多数显示库都能从 SD 卡读取未压缩的 24 位 BMP 文件,比如用于 TFT 屏幕的 Adafruit ImageReader,而这正是本转换器输出的格式。由于开发板无法缩放图片,请先用调整输出图片尺寸把图片改成屏幕的实际分辨率,例如 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。

将其他文件转换为BMP
JPG转BMPWebP转BMPPDF转BMP
BMP转PNGPNG转ICO图片格式转换