I think there may not really be a good way to do this and get a very nice looking result.
I've spent quite a bit of time almost getting what i would consider a usable result for real-world applications i.e. preserving the spacing of text with proper kerning, but not quite, as it's difficult to get an accurate measurement of input characters at runtime. Realistically I think most people would rather have the amount and size of text set the distance around the curve rather than evenly fill a space with "objects".
However, if you can calculate the circumference your text covers you should be able to divide that in half to at least get a centered look(the second most difficult part).
Project707
Dynamic web development and rich media Project707.com