taoyue
37 discussion posts
The antialiasing in Beta 11 has gone bad again, compared to previous betas. Creates a shadow effect -- looks like it detected the wrong background color? See attached screenshot (Win taskbar at top, DF taskbar at bottom).
Repro environment: Fresh install of Displayfusion on a fresh install of Windows 7 RTM amd64, South African theme.
The workaround is interesting: Change the theme. As soon as you change the theme, the DF taskbar begins rendering antialiasing properly again. Even if you change the theme back to the original, it still renders correctly. This suggests that the background color is not getting detected properly on a fresh install of Displayfusion, but does get detected properly with on-the-fly change notifications.
df-antialiasing-shadow.png
This is very strange for sure. DisplayFusion can't read the theme's colours until the theme has been applied, not just a preview of it. For example, when you click a colour for the theme the Windows taskbar will change colours, but DF's won't until you actually click the "Ok" button in the themes window. This is by design in Windows (for some reason). Is this what is happening, or did I read it wrong?
taoyue
37 discussion posts
You're right -- this has nothing to do with reading the background color incorrectly.
Rather, there's some interaction between the color and the wallpaper that causes this shadow effect. The problem is only noticeable with a light wallpaper (namely, the penguins on the beach in the South African theme). Changing the theme changed the wallpaper and caused the issue to be masked.
The Windows 7 taskbar seems immune, no matter what the wallpaper.
Sorry, the antialiasing sure seems like a Sisyphean task. No matter what you do, there's always another edge case ...
The real problem is the way the GDI+ font rendering works. It assumes that you want to use black as the AA background color, instead of whatever is on the screen. GDI+ and Aero don't play nicely together in this case. I tried using DirectWrite (the new DX equivalent), but the font rendering looked very different as well. For now I'll just have to keep using this "fake" AA, but hopefully in the future I'll figure out a better method.