Cannot handle font fallbacks unless compiled with pango support
Task Info (Flyspray) | |
---|---|
Opened By | Mingye Wang (arthur2e5) |
Task ID | 58235 |
Type | Feature Request |
Project | Arch Linux |
Category | Packages: Extra |
Version | None |
OS | All |
Opened | 2018-04-15 05:55:28 UTC |
Status | Assigned |
Assignee | Levente Polyak (anthraxx) |
Details
Description: libgdiplus by default calls cairo directly. It retrives the first font match from fontconfig, and goes on to only use that match for all of the rendering. This of course breaks UI rendering in WinForms using e.g. "Sans", as a lack of fallbacks means a lot less font coverage and blank rectangles appear where they shouldn't happen.
The good news about this issue is that libgdiplus has a "--with-pango“ build option right in its official source. The option uses pango, which does fallbacks correctly. Yes, it's "UNSUPPORTED", but what on earth from Xamarin is meaningfully supported anymore?
This is a longstanding bug, reported as early as 2 years ago as https://bugzilla.xamarin.com/show_bug.cgi?id=39418.
Additional info:
- package version(s) (EVERY/ALL)
Steps to reproduce: Compile the source at https://github.com/AOSC-Dev/aosc-os-abbs/issues/224#issuecomment-216431189, and run it in a locale where "fc-match Sans" does not give a Chinese font but is capable of displaying of Chinese text via fallback.