Any suggestions for a simple C++ library I can use to create an image to a specified size, with either a fixed rgb colour value or ideally supporting gradients.
Needs to work on Windows and ideally but not required to work on OS X as well.
I've found Cairo, but just wondered if there was anything else as it seems quite simple what I require.
Cairo is an exceptional library for this task. If you're thinking it's overkill, I can reassure you that it most definitely is not a bloated or large library. Cairo is meant exactly for what you need it. Note that if you need the ability to set text on the image, you'll need a typesetting library such as Pango (which works well with it).
That said, most of the other libraries in this category are intended for games (like Allegro), or are limited to bitmap manipulations (like libGd and ImageMagick). Cairo was designed for application-generated vector images.