Another approach is to forget text with its universally recognised shapes completely and use images of objects, people or places that are related to the site and ask "Who or What is this?" to figure out if the sender is human. Remember some contact form spam bots are capable of reading simpler CAPTCHA's by themselves, others submit them to a 3rd party service to be solved by humans. This human outsourcing incidentally takes about 20-30 seconds to return an answer on average.
For example an Electronics website could ask.. What does this represent?
Now the puzzle becomes one of context & interpretation something that computers don't do well at all.
How Bots bust Captcha
Depending on the type of human solving service and nature of the captcha protection the the bot will either forward the image URL if it contains a unique session sequence. In which case your server could (should) be scripted to notice that the same image has been sent to two different IP locations. OR the Bot will take a static screenshot of the image/text and pass that along to a waiting human or a character recognition script. In this case animated gif, png or flash images with a blank intro frames should cause some pleasant confusion for the spammer.