BMP Splitter

This is just a quick little project worked up to be like Rasterbator. I liked the concept, but not the halftoning, so I put a little project together that would do the exact same thing, but with continuous tone. Now everybody bitching about illegible text on the PA forums can give this a whirl.

Just a quick note: It's dog slow because I used a bunch of left over code from my raytracer. We're working on levels of accuracy here that are far beyond what we need. The example below took a little under a second, but that's because I'm only making the output images 10dpi. 72dpi takes in the neighborhood of 7 or 8 seconds.

Original Image:

click for full image
Posted on PA Forum by Tini
Output Images:
Program Execution:

click for full image

Because it was thrown together in a hurry today at work, there's only support for 24-bit BMP files. I did have time to throw in bicubic resampling though, so at least sizing images up looks decent.

The code is nothing too complicated, and should be cross-platform compatible. Those of you who would like to re-compile on a Mac may have to alter the BMP reading/writing source so that it does byteswapping. Everything else is handled through pretty much standard C or C++. Also, I'll try to comment the code this afternoon so it makes more sense, and maybe a metric version.

**UPDATE** About an hour later, I've added comments and allowed the user to switch to metric if they choose. Also, you can choose if you want interpolation or not. If you're resizing photos, definitely go with the interpolation, but if you're resizing sprites you should avoid it.

Source code and Win32 executable (, 103 KB)

Please enjoy this program and share it with your friends, but please do not try to claim it as your own work.