Thanks for all the input. I used the input that all of the numerals in Arial were the same width. This made the process significantly easier.
With that, I determined the number of dots that a numeral was, and how many dots a comma was in the font and size that I was going to use. (in my case it was 23 and 12).
Then I determined the length of the number I was going to print, and based on the length, I calculated the number of dots past my base start point, and set the following string to the beginning of my number Ec*p[num]X where [num] was my calculated number. I added some | to the end for testing to make sure everything lined up.
For example, my start point was 2000 dots, and my number size was 9 digits. Smallest number I had was 0.00 so I didn't have to worry about the decimal.
If the number was 9 characters (99,999.99), I set Ec*p2000X to the beginning of the number.
If the number was 8 characters (9,999.99), I set Ec*p20023X.
If the number was 6 (no 7 was allowed 999.99), I set the width of 2 plus a comma or Ec*p2058X. etc.
I see if I used jlasman's idea of changing the HMI for spaces, it would have meant that I only needed to add spaces for each characters, but I couldn't figure an easy way to get past the comma.
Thanks again for all the ideas.