// if the first character is a separator, and we are in RTL
// text, this character will not be painted on screen
- // and thus we should not count it and skip to the next.
- if (rtl && par.isSeparator(bidi.vis2log(vc)))
+ // and thus we should not count it and skip to the next. Only
+ // in freespacing paragraphs, this first character is painted.
+ if (!par.isFreeSpacing() && par.isSeparator(bidi.vis2log(vc)))
++vc;
while (vc < end && tmpx <= x) {