Oto zdjęcie problemu:
Zauważ, że wszystkie linie tekstu mają poziome linie podobne do podkreślenia. Jest to jednak zwykły edytor tekstu (Kate) i nie podkreśla. Nie zastosowano formatowania tego tekstu.
Wybrałem tekst, aby wiersze były lepiej widoczne na zdjęciu. Ale linie istnieją nawet bez zaznaczania tekstu. Czasami są znacznie grubsze i ciemniejsze. Czasami są lekkie. Czasami nie będzie ich wcale, tylko po to, by wrócić losowo.
Konsola ma ten sam problem. Z białym tekstem na czarnym tle Konsola czasami wyświetla wielokolorowe poziome linie. Czasami każda linia w Konsoli ma takie brzydkie i rozpraszające uwagę. Czasami ma to tylko część linii.
Czasami linie są tak gęste i przytłaczające, że trudno jest odczytać tekst. Innym razem linie są łagodne, jak na załączonym zdjęciu.
Pierwszy raz widziałem ten problem około dziesięć miesięcy temu na komputerze stacjonarnym. Myślałem, że użytkownik właśnie zrobił coś naprawdę szalonego w ustawieniach czcionek. Ale teraz widzę problem na nowym laptopie bez żadnych istotnych zmian ustawień od domyślnych.
Oba systemy działają w pełni zaktualizowanym Arch Linux KDE. Na tym laptopie resetuję wszystkie ustawienia czcionek (w Ustawieniach systemu) do wartości domyślnych. Zresetowałem również wygląd profilu Konsoli do ustawień domyślnych (nawet jeśli ustawienia były już na wartościach domyślnych).
Jednak linie poziome nie znikną.
Aplikacje działają poprawnie (poza tym, że czasami trudno jest odczytać tekst). Skopiowany tekst nie zawiera linii poziomych. Na poziome linie nie mają wpływu polecenia na Konsole. Wydaje się to być usterką wyświetlacza, ale nie jest specyficzne dla żadnego procesora graficznego (dotyczy Intela lub NVIDII) ani żadnego ekranu (testowałem różne monitory na pulpicie) lub czegokolwiek innego, co mogę określić.
Próbowałem różnych poprawek na dotkniętym pulpicie w ciągu ostatnich dziesięciu miesięcy i nie rozwiązałem go również na tym komputerze.
Mam wiele innych komputerów Arch KDE, które nie mają problemu.
Czy ktoś ma pojęcie, co może to powodować? Czy ktoś jeszcze to widział?
Edycja: Zobacz raport o błędzie KDE dla Konsoli :
373232 - Poziome linie z ułamkowym skalowaniem HiDPI
QT_SCREEN_SCALE_FACTORS=1 konsole
. Za pomocą tego polecenia możesz utworzyć łącze do aplikacji komputerowej.Odpowiedzi:
Podobno problem został rozwiązany w QTBUG-66036 w wersji 5.12. W chwili pisania tego, QT na Arch Linux to wersja 5.11.2-1. Inne popularne dystrybucje również nie wydały pakietów z Qt 5.12. Jednak po wydaniu Qt 5.12 programiści oczekują rozwiązania tego problemu.
Aby sprawdzić wersję Qt, możesz otworzyć terminal i wpisać:
Dane wyjściowe będą wyglądać podobnie do tego
Gdy zobaczysz wersję Qt 5.12, możesz spodziewać się rozwiązania. Jeśli nie, powiadom programistów o tym w QTBUG-66036 .
Tymczasem istnieje obejście, jak opisano w poniższym raporcie o błędzie
Kroki ku reprodukcji:
Obejście: ustaw współczynnik skalowania z powrotem na 1,0 (lub na liczbę całkowitą, taką jak 2 lub 3).
Podobny raport o błędach dla Konsoli znajduje się tutaj
373232 - Poziome linie z ułamkowym skalowaniem HiDPI
https://bugs.kde.org/show_bug.cgi?id=373232
źródło
Uaktualnienie do wersji 5.12 jest w porządku, ale wydaje się, że nie rozwiązuje problemu od razu. W ustawieniach profilu Konsoli na karcie zaawansowanej zmień „Odstępy między wierszami” na 1 . To rozwiązało problem z poziomymi liniami.
źródło
Aby obejść ten problem, możesz zmienić DPI czcionek :
Fonts
, zaznacz poleForce Fonts DPI
144
na ekranie 2560 x 1440, możesz spróbować192
w 4K)W tym momencie poziome linie powinny zniknąć i powinieneś być w stanie odczytać wszystko na ekranie
źródło
Innym obejściem jest ustawienie odstępu między wierszami na 1 w Ustawienia -> Edytuj bieżący profil ... -> Zaawansowane -> Funkcje terminala. Jest prawie niezauważalny (jeden dodatkowy piksel między liniami), ale rozwiązuje problem.
źródło
Najlepszym obejściem dla mnie byłoby:
źródło
Po wykonaniu instrukcji Nico dotyczących zmiany DPI tekstu systemowego na coś wyższego, jak 144, 192 itd., Istnieje sposób, aby ponownie włączyć skalowanie wyświetlacza i sprawić, by Kate wyglądała dobrze. Jednak wyniki mogą się różnić w zależności od środowiska komputerowego.
Ustaw skalowanie wyświetlacza na pożądaną wartość ułamkową (czasami używam 1,5x).
Możesz ustawić zmienną środowiskową
QT_SCREEN_SCALE_FACTORS=1
dla pojedynczego połączenia z Kate.I możesz utworzyć skrypt opakowania dla wszystkich połączeń z Kate
Następnie upewnij się, że
$HOME/bin
jest w twoim$PATH
. Jeśli nie jest, możesz go dodaćDodaj to,
~/.profile
aby było trwałe.Zauważ, że aby to zadziałało, twoje skrypty domowe muszą znajdować się przed ścieżką oryginalnego pliku wykonywalnego Kate (np.
/usr/bin
) W$PATH
zmiennej środowiskowej.źródło