Мы уже рассказывали о проблемах, которые могут возникнуть при выборе внешнего монитора для Mac. При неподходящем разрешении картинка на экране будет нечеткая, шрифты могут быть смазанными, а границы элементов превратятся в “лесенку”.
Даже после покупки монитора с “правильным” разрешением для macOS картинка может быть хуже, чем на экране MacBook или iMac. Сейчас разберёмся, почему так происходит и как это исправить.
Почему картинка на внешнем мониторе нечеткая
Оригинальные мониторы на компьютерах Apple работают в HiDPI режиме, по сути система удваивает разрешение, чтобы добиться четкости шрифтов и границ элементов. Даже на правильно подобранном внешнем мониторе картинка будет не такая четкая, как на оригинальной матрице MacBook или экране iMac.
Не видите разницу? Включите увеличение экрана () и приблизьте картинку в 3-4 раза.
На экране Mac четкость не пропадет даже при большом увеличении, а на внешнем мониторе сразу же “поплывут” шрифты, а границы элементов интерфейса станут нечеткими.
Оказывается, есть способ заставить компьютеры Apple выводить изображение в HiDPI режиме и на внешний монитор.
Как отключить защиту SIP
Для работы с нестандартными разрешениями экрана потребуется модифицировать некоторые системные файлы. Еще в операционной системе купертиновцы добавили специальную защиту SIP (System Integrity Protection), которая по умолчанию защищает важные данные от модификации.
На время настройки разрешения придется ее отключить. Для этого делаем следующее:
1. Перезагружаем Mac.
2. Во врем включения зажимаем клавиши Command + R для входа в режим восстановления.
Это нужно делать на оригинальной беспроводной или любой проводной клавиатуре. Сторонние беспроводные клавиатуры, скорее всего, подключаются к системе уже после начала загрузки системы и не успеют дать нужный сигнал.
3. После запуска в режиме восстановления в строке меню выбираем .
4. Вводим команду:
csrutil disable
Подтверждаем действие паролем администратора.
5. Перезагружаем Mac в обычном режиме.
Теперь системные файлы можно модифицировать. После всех проделанных манипуляции настоятельно рекомендуем включить защиту обратно. Делается это аналогично, но с использованием команды ““.
Как включить HiDPI на любом экране Mac
Проще всего для этого использовать сторонние приложения вроде SwitchResX или QuickRes.
1. Вводим следующую команду в Терминале для активации режима HiDPI:
sudo defaults write /Library/Preferences/com.apple.windowserver.plist DisplayResolutionEnabled -bool true
2. Скачиваем подходящую программу с сайта разработчика и устанавливаем ее.
3. Запускаем приложение (на примере SwitchResX) и выбираем подходящее для монитора разрешение с пометкой HiDPI.
4. Если нужного разрешения в формате HiDPI нет, придется добавить его вручную. Для этого мы и отключали защиту SIP.
5. Переходим в параметры приложения и открываем вкладку своего внешнего монитора.
6. Открывшем раздел и нажимаем “+”.
7. Включаем тип .
8. Вводим удвоенные показатели пикселей для своего монитора.
Например, для монитора с разрешением необходимо указать разрешение .
9. Нажимаем в строке меню.
10. Перезагружаем Mac.
Теперь в приложении можно выбрать добавленное разрешение с HiDPI. Можете сравнить картинку при увеличении масштаба.
Как обойтись без сторонних приложений
Держать сторонние приложения для активации всего одной фишки – не самая лучшая идея. Тем более, что обе описанные выше программы платные. Конечно, есть и бесплатные альтернативы, например, утилита RDM, но с ее помощью можно лишь изменить разрешение после того, как оно было добавлено в SwitchResX.
Есть способ обойтись без сторонних программ. Для этого придется немного повозиться в терминале. Всё как вы любите!
Внимание! Все описанные ниже действия вы делаете на свой страх и риск. Обязательно создайте резервную копию перед проведением описанных манипуляций.
1. Для начала активируем возможность использования режима HiDPI командой в Терминале:
sudo defaults write /Library/Preferences/com.apple.windowserver.plist DisplayResolutionEnabled -bool true
2. Идентифицируем свой дисплей при помощи команды:
ioreg -lw0 | grep IODisplayPrefsKey
3. Находим в полученном ответе идентификаторы производителя () и модели ().
Если вводите команду на MacBook с подключенным монитором, система выдаст информацию как о штатной матрице, так и о внешнем дисплее. Вам нужны данные из строки, в конце которой указано “AppleDisplay”, строка с отметкой “AppleBacklightDisplay” нам не нужна.
4. Переходим на сайт, который генерирует HiDPI настройки для любого монитора.
5. Вводим свои значения DisplayVendorID и DisplayProductID в соответствующие поля.
6. Ниже указываем желаемые параметры разрешения для своего монитора. Можете создать несколько параметров с разными разрешениями, включенной и отключенной опцией HiDPI.
Ненужные варианты разрешения можно удалить. Обратите внимание, что в самом низу страницы расположен калькулятор разрешения, который подскажет правильное количество пикселей при заданном соотношении сторон.
7. Когда все нужные варианты разрешения внесены, скачиваем сгенерированный файл настроек. Вкладку с сайтом при этом не закрываем, она нам еще понадобится.
8. В Терминале вводим команду:
sudo mount -uw /
Это необходимо, чтобы перемонтировать системный раздел в macOS Catalina с возможностью записи. Это еще одна защита данных в операционной системе Apple. Введенная команда будет действовать до первой перезагрузки, затем системный раздел снова будет доступен только для чтения.
9. В Finder переходим по пути , здесь нужно создать папку, чтобы получить правильный путь к файлу конфигурации. Он указан на сайте.
Если нужная папка (с вашим DisplayVendorID) существуют, пропускаем этот шаг. Если папки нет, создаём ее при помощи команды ““.
10. Остается лишь скопировать сохраненный файл конфигурации по нужному пути.
Для этого вводим такую команду:
sudo cp путь_к_загруженному_файлу_plist путь_к_созданной_папке
Вводить путь вручную необязательно. Достаточно ввести начало команды “sudo cp “, затем перетащить в окно Терминала файл *.plist и папку назначения. Пути при этом пропишутся автоматически.
11. После выполнения команды перезагружаем Mac.
Теперь система будет предлагать HiDPI разрешение для вашего монитора в стандартных настройках.
Источник: