Details
-
Bug
-
Resolution: Unresolved
-
P2: Important
-
None
-
6.9.0
-
None
Description
Unicode block characters are very handy to draw "ASCII"-art in source code documentation or in the output of terminal programs (to draw progress bars, for example). Unfortunately, Qt's font rendering engine leaves gaps when using several "Full block" characters █ in a row, which breaks how they are typically used.
Consider this string: ███████████
When pasting this example into a Qt (Widgets or Quick) application like KDE's Konsole or Kate, this renders as a gapless horizontal line at display scales 100% and 200%. Once fractional scaling is used, a gap shows up between each block. The problem persists when AA/subpixel hinting are disabled, though it's less pronounced then.
The gaps show up both horizontally (between characters) and vertically (between lines).
Screenshots of several lines of full block characters pasted into my terminal:
100% scaling:
125% scaling:
200% scaling:
The issue isn't limited to the block elements. The box-drawing characters have similar issues, but they aren't as prominently visible since these characters only connect through 1 or 2 pixels each.