I was creating a word cloud at work today, and came across Tagul. You have to sign up to use it, but once you have, it’s brilliant.
You can create a list of the words you want to use, take words from a website or paste in text you want to use. There are several standard shapes, with customisable aspect ratio, and a range of fun shapes you can choose from, or you can upload your own. Colour, font and word direction are also customisable. If there are any particular words you want in a particular colour, location, size or angle, you can set those for individual words, while leaving the settings random for other words.
The word clouds below give you an idea of what you can do with Tagul (and use this blog as a source for the words).