PNG to BMP Converter

Uploads a PNG and hand-encodes its pixels as an uncompressed 32-bit BMP using a BITMAPV4HEADER with RGBA bitmasks, preserving the alpha channel that a classic 24-bit BMP would otherwise drop, entirely client-side. A free online tool from Staaarter, right in your browser.

Runs locallyUpdated 2026-07-26

Overview

Introduction

This tool converts a PNG into a real, uncompressed BMP file, hand-writing the actual byte structure of a 32-bit BMP with a BITMAPV4HEADER rather than relying on any external encoder.

It specifically uses the alpha-aware BMP variant so transparency survives the conversion, which a classic 24-bit BMP could not represent at all.

What Is PNG to BMP Converter?

A client-side BMP encoder that writes a complete BITMAPFILEHEADER followed by a 108-byte BITMAPV4HEADER declaring explicit RGBA bitmasks, then the pixel data itself in bottom-up row order with BGRA byte ordering per pixel.

The result is a real, spec-compliant Windows bitmap file, not an approximation or a renamed PNG.

How PNG to BMP Converter Works

The file header records the total file size and the offset to pixel data; the BITMAPV4HEADER declares the image dimensions, 32 bits per pixel, BI_BITFIELDS compression mode, and the exact bit masks for red, green, blue, and alpha.

Pixel rows are written from bottom to top (as BMP requires for a positive height value), with each pixel's 4 bytes in blue-green-red-alpha order to match the declared bitmasks.

When To Use PNG to BMP Converter

Use it when a workflow or legacy tool specifically requires BMP input, especially one that needs to preserve transparency.

It's also useful for producing an uncompressed reference file for testing image-processing pipelines against known-exact pixel data.

Features

Advantages

  • Runs entirely client-side; your image is never uploaded to a server.
  • Preserves the full alpha channel, unlike a classic 24-bit BMP export.
  • Produces a genuinely uncompressed file, useful when exact, unmodified pixel data matters more than file size.

Limitations

  • BMP files are typically much larger than PNG for the same image, since this format applies no compression at all.
  • A small number of very old or minimal BMP readers only support the basic 24-bit header and may not correctly read this format's alpha channel.

Examples

Convert an icon with transparency

Input

A 128x128 PNG icon with a transparent background

Output

A 32-bit BMP of the same size with alpha preserved

The BITMAPV4HEADER's alpha mask carries the transparency through to the BMP.

Convert a fully opaque photo

Input

A 1920x1080 opaque PNG photo

Output

An uncompressed BMP roughly 8MB in size

Uncompressed 32-bit BMP is width x height x 4 bytes, plus a small fixed header.

Best Practices & Notes

Best Practices

  • Use this specifically when you need BMP format with working transparency; for general use, PNG remains far more space-efficient.
  • If your target software is known to only support classic 24-bit BMP, verify it correctly reads this 32-bit alpha variant before relying on it.

Developer Notes

The encoder builds the file entirely with a DataView over a pre-sized ArrayBuffer, writing each header field at its exact spec-defined byte offset — including the BITMAPV4HEADER's RGBA bitmasks and LCS_sRGB color space tag — with no external BMP library involved.

PNG to BMP Converter Use Cases

  • Producing BMP input for legacy Windows software or embedded systems that require it
  • Generating an uncompressed reference file for testing an image pipeline's pixel-exact output
  • Converting a transparent PNG icon to BMP for a tool that specifically needs that format with alpha

Common Mistakes

  • Expecting BMP output to be smaller than the source PNG — uncompressed formats are almost always larger.
  • Assuming every BMP reader supports the 32-bit alpha variant; some very old software expects the simpler 24-bit form.

Tips

  • If file size matters and you don't specifically need BMP, stick with PNG, WebP, or JPG instead.
  • Verify alpha support in your target BMP reader before depending on transparency surviving the conversion.

References

Frequently Asked Questions