I think what is happening is when we switched from GDI+ rendering to D2D rendering (specifically DirectWrite), it was important for existing skins to render as close as possible to the previous GDI+ rendering. We didn't want the thousands of existing skins to look "off" with different spacing, so we attempted to correct this as best as we could. Nothing was pixel perfect, but we got it close as we could.
I believe this is one of the few side effects of this "emulation" code. In fact, this is one of the reasons we did the CharacterSpacing
inline setting, so that you could tweak things to your liking.
The fact of the matter is, there is just a ton of options when rendering text with different rendering engines. We chose to have a consistent look across platforms since one of our greatest strengths is our existing skins library. I could only imagine the complaints if all the sudden all those skins didn't align correctly and look "off". Other programs have made other rendering decisions without that restriction.
Unfortunately, I think the only solution is to use the CharacterSpacing
inline setting. I spent a little more time tweaking things, and you can get really close (in my opinion).
Code: Select all
InlineSetting=CharacterSpacing | 0.14 | 0.14 | 2
Here is a side-by-side with your picture above.
Here is a zoomed in version (click on the image).
There is an extra 1 pixel space between characters in a few instances, and a few characters "touching" other characters (mainly the v and w). This might be corrected with further tweaking, but it is really close. You may also look into different typography settings (assuming the Tahoma font supports them) using the Typography
PS - The AccurateText option mainly adjusts the extra leading/trailing space when calculating the "width" of the rendered text. This is another setting we used to emulate GDI+ rendering.
You do not have the required permissions to view the files attached to this post.