Brak znaku Celsjusza w Qt

0

W apliakcji Qt używam znaku unicode U+2103 https://www.compart.com/en/unicode/U+2103 aby wyświetlic temperature
Mam pewna partię komputerów które nie wyświetlają znaku
Może ktoś podpowie co trzeba doinstalować na Linux aby ten znak zadziałał ?

Znak ℃ jest kompozycją dwóch znaków, i te pojedyncze znaki działają poprawnie
℃ U+2103 = ° (U+00B0) + C (U+0043)
℃ [jeden znak] = rysuje sie jako prostokąt
°C [dwa znaki] = rysuje sie OK

Taka ciekawostka

5

Problemem jest czcionka.
Generalnie działa to tak: dla danej czcionki wyszukiwany jest definjcja znaku.
Jak nie ma pasującego glyph, to ten znak jest wyszukiwany w czcionce domyślnej.
Jak go tam nie ma, to używany jest glyph z prostokątem reprezentujący brak dostępnego znaku.
Najwyraźniej, czcionka nie ma informacji, jak poskładać sobie z dwóch glyphs te konkretny znak (jest taka funkcjonalność).

Ergo, spróbuj użyć innej czcionki. Albo jako obejście, możesz próbować normalizować napis (powinno rozłożyć ℃ na dwa znaki jeszcze na etapie samego napisu).

6

No to wyświetlaj jako dwa znaki.
U+2103 nie jest zalecane, a istnieje tylko dla kompatybilności z kodowaniami które definiowały taki znak.

https://en.wikipedia.org/wiki/Celsius#Unicode_character

1

@Azarien: I tak żem uczynił jak Waść prawisz !
Nie wiedziałem ze znak jest nie zalecany.
Dziękuje

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.