如何把 BMP 转成 PNG
- 把位图拖进来。其他支持的图片格式可以放在同一批里——不必先按格式把文件分好。
- 勾选这一轮要转的图片。新加进来的默认全选,不想要的取消勾选就行。
- 导出为保持 PNG 不动。PNG 没有任何需要设置的选项。
- 点导出。只有一个文件时直接下载;两个以上会合成一个 ZIP。
导出之后文件还留在工作台里。改选择、换输出格式、再导一次,都不用重新添加。
BMP 为什么这么大
BMP 通常是把每个像素的原始字节直接写下来,几乎不压缩。这正是它能在 Windows 工具链里活这么久的原因——读写都极简单——也正是一张截图存成 BMP 能有几十兆,而同一张图存成 PNG 只剩零头的原因。
PNG 存的是同一批像素,只是把它们压了。既不丢弃也不近似:把 PNG 解码回来,位图原样都在。截图、示意图、界面素材,以及任何有大片纯色的画面,省下来的通常很可观;噪点多的照片类内容省得少。这里刻意不给一个百分比,因为老实的答案完全取决于那张图。
BMP 现在还从哪来
- 老一点的 Windows 软件——扫描仪、收银系统、实验室和工业设备,以及还在用的业务系统,至今仍然导出 BMP,因为它是最好写的一种。
- 截图和导出的位图——有些小工具的默认保存格式就是 BMP。
- 游戏和应用素材——早年的工具链里,BMP 就是工作格式。
- 任何现在要放到网页或文档里的图——浏览器、聊天软件、文档编辑器处处都认 PNG;BMP 的支持时有时无,文件还白白地大。
本页支持什么
- 输入:BMP——想混在同一批里的话,JPG、PNG、WebP 和 AVIF 也可以。
- 输出:默认 PNG;JPG 和 WebP 在同一个下拉菜单里。BMP 自己在这里导不出来——本页只读它,不写它。
- 透明:多数 BMP 文件根本没有透明。如果浏览器解出来的那张位图确实带可用的 alpha——32 位、带 alpha mask 的 BMP 有可能——PNG 会把它保留下来。没有的话,就没有什么可保留的,我们也不会凭空造一个。
- 这里说的无损指什么:浏览器从 BMP 解出来的像素被原样存下。PNG 没有画质旋钮,所以既没什么要设,也就没什么会设错。
- 元数据:EXIF、ICC 色彩配置文件和拍摄日期不会带过去。需要它们的话,请保留原文件。
- 批量:文件逐个处理,内存占用可以预期;输出重名时自动编号。
- 大小:不设固定上限。实际上限是设备内存。
解码 BMP 是浏览器在做的事。BMP 是个很老的家族,头部变体繁多,浏览器读不了某一种,就会把那个文件标成失败——这一批里其余的照转。一个读不了的文件,从来不会把别的文件一起拖住。
常见问题
我的图片会被上传吗?
不会。一切都在你的浏览器标签页里完成:文件从磁盘读进内存,重新绘制,再在本地重新编码。不会发送到服务器,事后也没有需要删除的服务器副本。转换时你可以开着网络面板看——那里一直很安静。
转成 PNG 会掉画质吗?
不会。PNG 是无损格式:它把解码出来的像素精确存下,也没有会设错的画质选项。BMP 转 PNG 改的是像素怎么打包,不是像素本身。
文件能小多少?
看图。我们不想报一个自己站不住的数字。截图、示意图和任何有大片纯色的画面通常缩得很多,因为这正是 PNG 压缩擅长的;照片类、噪点多的图缩得少。但无论哪一种,都不是靠牺牲细节换来的。
透明会保留吗?
有的话就保留。大多数 BMP 变体根本没有 alpha 通道,所以压根没有可保留的东西。有些 32 位 BMP 确实带 alpha mask,浏览器解出这一类时,透明的地方在 PNG 里仍然透明。
能在这里把 PNG 转回 BMP 吗?
不能。本页读 BMP,写 PNG、JPG 或 WebP。没有 BMP 输出——BMP 是我们打得开的格式,不是我们生产的格式。
可以一次转一整个文件夹吗?
可以。文件想加多少加多少,勾选这一轮要处理的,然后导出——一个文件直接下载,两个以上合成一个 ZIP。之后文件仍留在工作台里,换个选择或换个格式再导一次,都不用重新添加。