Отключить сглаживание, вызванное прокруткой, в Preview и других приложениях PDF

Прокрутка (двумя пальцами на трекпаде) в Preview.app (и TeXShop.app) раздражающе размывает текст PDF, и я хотел бы отключить чрезмерно компенсирующее сглаживание. Мне нравится сглаживание, но не очень хорошо прокручивается.

На изображении ниже есть два снимка экрана Cmd+Shift+3 из предварительного просмотра, верхняя половина с двумя пальцами, все еще на трекпаде после прокрутки, нижняя половина после их отпускания. Фрагменты в коробках были вручную увеличены в Photoshop.

Сверхкомпенсация сглаживания

Я отключил масштабирование двумя пальцами и вращение двумя пальцами в System Preferences > Trackpad, а также снял флажок «Использовать сглаживание шрифта на ЖК-дисплее, когда оно доступно» в System Preferences > General.

Я также устанавливал различные defaultsзначения, но безрезультатно (приведенные ниже значения являются лишь одной из многих комбинаций, которые я пробовал):

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";

Я хотел бы, чтобы прокрутка всегда выглядела так, как будто я прокручиваю медленно и вертикально. Уродливое сглаживание (размытие), скорее всего, произойдет, если предварительный просмотр регистрирует любую горизонтальную прокрутку (что редко бывает преднамеренным), и это было более распространено до того, как я отключил прокрутку с двумя искателями.

Я нашел два способа обойти документ, которые не создают этого уродства: 1) использовать клавиши со стрелками, 2) использовать мышь - мое колесо прокрутки Logitech Revolution MX никогда не вызывает этого. Однако это неоптимально — мне действительно нравится ускоренная (фрикционная) прокрутка OS X, но не ее усиленное размытие.
Не совсем решение, а своего рода обходной путь — я просто быстро увеличиваю/уменьшаю масштаб (CTRL+-), и резкость сбрасывается (и я использую мышь, поэтому такие случаи случаются редко).

Ответы (3)

Я подозреваю, что размытие текста вызвано использованием прокси-сервера с малым объемом памяти для обеспечения высокого FPS во время прокрутки, особенно на компьютерах Retina, вероятно, при использовании встроенной графики Intel.

Поэтому я бы предложил выполнить следующие шаги в приведенной ниже последовательности, чтобы максимально увеличить доступную оперативную память и видеопамять:

  • закрыть все окна во всех приложениях

  • закрыть все приложения

  • отключите все внешние мониторы

  • закрыть лишние рабочие столы в Mission Control

  • для компьютеров с графическим процессором NVIDIA убедитесь, что ваш компьютер подключен к зарядному устройству или что автоматическое переключение графики отключено в режиме энергосбережения.

  • если на компьютере без Retina, установите «Лучшее для дисплея» в настройках «Дисплеи».

  • если на компьютере Retina, установите «Лучший (Retina)» в настройке «Дисплеи».

  • перезагрузите компьютер или откройте терминал и введите «sudo purge», нажмите «Ввод», затем выйдите из терминала.

Примечание: выполнение команды очистки занимает минуту или две. Я обнаружил, что это действительно может помочь очистить оперативную память. Повторный запуск делает то же самое. Иногда оперативная память не освобождается автоматически, как это должно быть без этих шагов, по крайней мере, на 10.8.5 и более ранних версиях. Это может не относиться к 10.9 и новее, но попробовать не помешает.

Если хотите, как до, так и после выполнения вышеуказанных шагов откройте Монитор активности и обратите внимание на то, сколько памяти, ЦП и дисковых данных используется в секунду. Опубликуйте свои цифры до/после для физической памяти и используемой памяти в комментариях (или свободной памяти, если это видно). Также сообщите нам, если шаги решили вашу проблему.

Это не полный ответ, но я читал ранее, что вы можете исправить это, перейдя в «Системные настройки»> «Основные» и изменив «Полосы прокрутки» на «При прокрутке». Казалось, что это сработало, когда я это сделал, но с тех пор я снова заметил это, поэтому на самом деле это может не решить проблему. Хотя, похоже, это имеет к этому отношение.

Раньше у меня было установлено значение «Всегда», и я не могу заметить никакого улучшения (или ухудшения, если на то пошло) после установки значения «При прокрутке».

Я думаю, CommaToast имеет правильную идею. OS X, вероятно, использует воспроизведение содержимого более низкого качества при прокрутке, чтобы обеспечить его быстрое и плавное перемещение, а затем уточняет изображение после завершения прокрутки. У меня нет абсолютно никаких доказательств этого, но такое поведение было очень заметно в ранних версиях iOS. Apple любит качество изображения, но еще больше им нравится обеспечивать безупречное взаимодействие.