I would agree that using //XTEXT and MX_GDICALC is probably a good way to go. In fact, you might want to use the
//XMDATA and //XMFIELDS directives to create a merge driven by the location of variables embedded in the RTF rather than by XY positioning (and thus would adjust even after changing the layout of the RTF).
But if you prefer turning the RTF into an image, there are lots of image printing drivers around. (Load the RTF into Word and then print to an image pseudo-printer.) If you can't find one, send me your RTF and I'll print it to PNG using the Snagit driver.