I had to create an internal table for the character widths, as the Windows APIs (at least for English Windows) simply don't work reliably.