Wyłącz antyaliasing indukowany przewijaniem w podglądzie i innych aplikacjach PDF

13

Przewijanie (dwoma palcami na gładziku) w Preview.app (i TeXShop.app) irytuje rozmycie tekstu PDF i chciałbym wyłączyć wygładzanie wygładzania. Lubię wygładzanie krawędzi, ale nie przewijam się dobrze.

Na poniższym obrazku są dwa zrzuty ekranu Cmd + Shift + 3 z poziomu podglądu, górna połowa z dwoma palcami nadal na gładziku po przewinięciu, dolna połowa po zwolnieniu. Fragmenty kodu zostały ręcznie powiększone w programie Photoshop.

Nadmiernie kompensujące wygładzanie krawędzi

Wyłączyłem powiększanie dwoma palcami i obracanie dwoma palcami System Preferences > Trackpadoraz odznaczono opcję „Użyj wygładzania czcionek LCD, jeśli jest dostępna” System Preferences > General.

Ustawiłem również różne defaultswartości, bezskuteczne (poniższe wartości to tylko jedna kombinacja wielu, które próbowałem):

for domain in com.apple.CoreGraphics CoreGraphics -g
do
  echo $domain
  defaults read $domain | egrep -i 'scal|smooth|alias|scroll'
done
> com.apple.CoreGraphics
>     CGFontDisableAntialiasing = 1;
> CoreGraphics
>     CGFontDisableAntialiasing = 1;
> -g
>     AppleAntiAliasingThreshold = 128;
>     AppleFontSmoothing = 0;
>     AppleScrollAnimationEnabled = 0;
>     AppleScrollerPagingBehavior = 1;
>     AppleShowScrollBars = Always;
>     NSScrollAnimationEnabled = 0;
>     "com.apple.mouse.scaling" = "1.5";
>     "com.apple.trackpad.scaling" = "-1";

Chciałbym, aby przewijanie zawsze wyglądało tak, jak w przypadku powolnego i pionowego przewijania. Brzydkie wygładzanie (rozmycie) jest najbardziej prawdopodobne, jeśli Preview zarejestruje przewijanie w poziomie (co rzadko jest zamierzone), i było bardziej rozpowszechnione, zanim wyłączyłem przewijanie dwóch wyszukiwarek.

chbrown
źródło
Znalazłem dwa sposoby obejścia dokumentu, który nie wywołuje takiej brzydoty: 1) użyj klawiszy strzałek, 2) użyj myszy - moje kółko przewijania Logitech Revolution MX nigdy tego nie powoduje. Jest to jednak nieoptymalne - naprawdę podoba mi się przyspieszone przewijanie (tarcie) OS X, ale nie jego wyraźne rozmycie.
chbrown
Nie do końca rozwiązanie, ale rodzaj obejścia - po prostu robię szybkie powiększanie / pomniejszanie (CTRL + -) i resetuje ostrość (i używam myszy, więc te zdarzenia są rzadkie).
Siniša Šašić

Odpowiedzi:

1

Podejrzewam, że rozmycie tekstu jest spowodowane przez użycie proxy o niskiej pamięci w celu zapewnienia wysokiego FPS podczas przewijania, szczególnie na komputerach Retina, prawdopodobnie podczas korzystania ze zintegrowanej grafiki Intel.

Dlatego sugerowałbym wykonanie następujących kroków w poniższej sekwencji, aby zmaksymalizować dostępną pamięć RAM i VRAM:

  • zamknij wszystkie okna we wszystkich aplikacjach

  • zamknij wszystkie aplikacje

  • odłącz wszelkie zewnętrzne monitory

  • zamknij dodatkowe pulpity w Mission Control

  • w przypadku komputerów z procesorem graficznym NVIDIA upewnij się, że komputer jest podłączony do ładowarki lub że automatyczne wyłączanie grafiki jest wyłączone w trybie oszczędzania energii

  • jeśli na maszynie innej niż Retina, ustaw „Najlepsze do wyświetlania” w ustawieniach Wyświetlaczy

  • w przypadku urządzenia Retina, ustaw „Najlepsza (Retina)” w ustawieniu Wyświetlacze

  • uruchom ponownie maszynę lub otwórz Terminal i wpisz „sudo purge”, naciśnij Enter, a następnie zamknij Terminal

Uwaga: zakończenie operacji czyszczenia zajmuje minutę lub dwie. Przekonałem się, że to może naprawdę pomóc wyczyścić pamięć RAM. Ponowne uruchomienie robi to samo. Czasami pamięć RAM nie zwalnia się automatycznie tak, jak powinna bez tych kroków, przynajmniej w wersji 10.8.5 i wcześniejszych. Może nie dotyczyć wersji 10.9 i nowszych, ale próba nie zaszkodzi.

Jeśli chcesz, zarówno przed, jak i po wykonaniu powyższych kroków, otwórz Monitor aktywności i zwróć uwagę, ile pamięci, procesora i danych na dysku jest zużywanych na sekundę. Zamieść swoje komentarze przed / po dotyczące pamięci fizycznej i pamięci użytej w komentarzach (lub wolnej pamięci, jeśli to pokazuje). Daj nam również znać, czy kroki rozwiązały problem.

CommaToast
źródło
0

To nie jest pełna odpowiedź, ale przeczytałem wcześniej, że możesz to naprawić, przechodząc do Preferencji systemowych> Ogólne i zmieniając Pokaż paski przewijania na „Podczas przewijania”. Wydawało się, że działa, kiedy to zrobiłem, ale od tego czasu zauważyłem to ponownie, więc może to nie rozwiązać problemu. Wydaje się, że ma to jednak związek z tym.

krs013
źródło
Wcześniej ustawiłem opcję „Zawsze” i nie mogę dostrzec żadnej poprawy (lub degradacji) po ustawieniu jej na „Podczas przewijania”.
chbrown
0

Myślę, że CommaToast ma właściwy pomysł. OS X prawdopodobnie używa niższej jakości odwzorowania treści podczas przewijania, aby zapewnić, że może się ona poruszać szybko i płynnie, a następnie udoskonalić obraz po zakończeniu przewijania. Nie mam na to absolutnie żadnego dowodu, ale takie zachowanie było bardzo widoczne we wczesnych wersjach iOS. Apple uwielbia jakość obrazu, ale uwielbia zapewniać bezbłędną interakcję.

Jeff Chausse
źródło