TIFF to BMP converter
Convert TIFF images to BMP format
Two uncompressed raster containers, one in and one out: this conversion is mostly a change of wrapper. The TIFF parser in this page reads the first image directory and rebuilds the pixels; a BMP writer then emits a 54-byte BITMAPFILEHEADER and BITMAPINFOHEADER pair followed by 24-bit BGR rows stored bottom-up with each row padded to a multiple of four bytes. The output is within a hundred bytes of the input for the same dimensions, so nothing is gained in size. What is gained is compatibility with old Windows software and anything that reads a device-independent bitmap.
Key facts about TIFF to BMP converter
| Output size formula | 54 + ceil(width x 3 / 4) x 4 x height. A 1920x1080 image is exactly 6,220,854 bytes. |
|---|---|
| Versus the source | The same pixels as an uncompressed TIFF occupy 6,220,934 bytes, so the BMP is 80 bytes smaller. No real change. |
| Pixel layout | 24 bits per pixel in BGR order, rows written bottom to top, each row padded to a 4-byte boundary. |
| Transparency | No alpha at 24 bits. A four-sample TIFF loses its alpha and transparent areas are written as black. |
| Compression | BI_RGB, meaning none. RLE4, RLE8 and BITFIELDS variants are not produced by this writer. |
| Stated resolution | The header records 2835 pixels per metre on both axes, which is 72 DPI, regardless of what the TIFF implied. |
| Colour table | None. A 24-bit BMP indexes nothing, so palette reduction never happens on this pair. |
| Source requirement | The TIFF must be uncompressed and 8 bits per sample. LZW or Deflate scans are refused with a message. |
| Pages | The reader stops at the first image directory, so multi-page document TIFFs yield a single bitmap. |
| Practical ceiling | Both formats are raw, so a 6000x4000 conversion allocates about 72 MB twice over in memory. |
| Opens natively in | Windows Paint and Photos, macOS Preview, GIMP, IrfanView, and any Win32 app that loads a DIB. |
What happens to your file
No network call touches the image. The file is read into an ArrayBuffer with the File API, decoded by the baseline TIFF reader compiled into this page, and painted into a canvas. The BMP is then assembled byte by byte into a DataView in the same tab, using getImageData to fetch the pixels back out of the canvas. The finished buffer becomes a Blob and a download link. Nothing is cached, uploaded or shared, and there is no server-side component to this tool at all.
About this tool
- 1
Choose the TIFF
Drag a .tif or .tiff file in or click to browse. A batch of up to twenty files is accepted.
- 2
Decide on dimensions
Because BMP size scales purely with pixel count, a size preset is the only lever that changes the output size.
- 3
Convert
The reader decodes the scan and the writer emits the header, then the padded BGR rows in reverse order.
- 4
Download the bitmap
Save the .bmp, or collect several results as one ZIP file built locally in the page.
| Input and output | Takes .tiff and .tif only (image/tiff) and returns .bmp with the image/bmp type; any other extension is refused before decoding. |
|---|---|
| Conversion path | TIFF to BMP runs in three steps: the page's own baseline parser reads the IFD and rebuilds the pixels, because no browser decodes TIFF; the pixels land on a 2D canvas in this tab; then getImageData feeds a 24-bit BI_RGB writer that assembles the file in page memory. |
| Browser support | The TIFF side needs no browser support at all, only a baseline uncompressed source, because LZW, Deflate and JPEG-in-TIFF files stop with an error, while writing the BMP needs nothing from the browser, the bytes being assembled in the page. |
| Controls for this pair | No quality slider, BMP not being a lossy target here, so the max-dimension presets from 3840 down to 200 px are the only way to hold the BMP down in size against the TIFF. |
| Batch, caps and naming | Twenty TIFF files per run at 500 MB each; one result downloads as a single BMP, several as converted-bmp-files.zip, zipped by JSZip 3.10 in page memory. |
| Device ceiling | The canvas caps it: past roughly 16,384 px a side Chromium refuses the bitmap and iPhone Safari gives up sooner, so an oversized TIFF fails before any BMP bytes exist. |
- Do not expect a smaller file. Both sides of this conversion store every pixel literally, so the only way to reduce the output is to reduce the dimensions.
- If the destination software is fussy about alpha, this pair is useful precisely because it guarantees a flat 24-bit image with no fourth channel.
- Check anything with transparency before converting: those regions arrive black rather than white, which is easy to miss on a dark scan.
- The 72 DPI written into the header is a constant, not a reading of your scan. Set the true print resolution in whatever application places the bitmap.
- For archiving, keep the TIFF. It is the format with room for tags, pages and profiles; BMP is a delivery wrapper for legacy tools.
- Feed a legacy Windows application, industrial controller or embedded display tool that accepts only a plain device-independent bitmap.
- Prepare an input for a course exercise or a computer-vision assignment that expects raw uncompressed pixel data with a simple header.
- Hand a scanned texture to older 3D or game tooling whose importer predates PNG and TIFF support.
Related tools
View allNeed the opposite? Try BMP to TIFF
Works well with this4
Other BMP tools12
Updated