Дисплей Retina: как отображать изображения с исходным разрешением в пикселях в Finder и Preview

Это псевдовопрос, чтобы поделиться своим собственным трюком и сценарием ниже.

Дело в том, чтобы иметь возможность отображать изображение пиксель за пикселем на дисплеях Retina. Это в основном полезно для изображений с высоким разрешением и/или для разработчиков, работающих с версиями изображений HDPI.

Решение работает хорошо, только если в настройках OS X установлено соотношение сторон 2:1. Осторожно, для MacBook Pro конца 2016 года по умолчанию не установлено значение 2:1. Вы должны установить его на среднюю настройку, чтобы все было правильно.


person Max_B    schedule 15.12.2016    source источник


Ответы (1)


Finder : простой прием — дать имя, оканчивающееся на @2x (перед расширением): [email protected] . Затем при использовании функции Quick Look изображение становится пиксельным. Поскольку эта схема именования рекомендуется для изображений сетчатки, как обычные изображения, так и изображения HDPI отображаются с одинаковым размером, как и ожидалось, сетчатка более четкая.

Предварительный просмотр . В режиме предварительного просмотра разрешение изображения в DPI интерпретируется как обычное, если оно установлено на 72 dpi. Установив его на 144, вы получите правильное соотношение сторон экрана. Можно добиться того же эффекта при разрешении 72 dpi, изменив масштаб отображения на 50%, но настройка масштаба не привязывается к файлу изображения, в отличие от настройки DPI. Измените его через пункт меню Сервис->Размер.

Ниже приведен небольшой скрипт для автоматизации настройки разрешения 144 dpi из Finder.

tell application "Finder"
repeat with item_cour in selection as list
    if word 1 of (the kind of item_cour as text) is "Image" then
        set path_cour to POSIX path of (item_cour as text)
        do shell script "p_cour='" & path_cour & "';
        tags=$(xattr -px com.apple.metadata:_kMDItemUserTags \"$p_cour\");
        f_info=$(xattr -px com.apple.FinderInfo \"$p_cour\");
        sips -s dpiHeight 144 -s dpiWidth 144 \"$p_cour\";
        xattr -wx com.apple.FinderInfo '$f_info' \"$p_cour\";
        xattr -wx com.apple.metadata:_kMDItemUserTags \"$tags\" \"$p_cour\" "
        -- do shell script "convert \"" & path_cour & "\" -set units PixelsPerInch -density 144 \"" & path_cour & "\""
    end if
end repeat
end tell

Поскольку команда sips не сохраняет теги, скрипт включает 4 строки для получения и установки их обратно в файл после его изменения с помощью команды xattr.

Чтобы установить скрипт: откройте редактор скриптов, создайте новый документ, вставьте код и сохраните его в папку ~/Library/Scripts/Finder. Обязательно проверьте параметр Show the Script Menu в настройках редактора сценариев.

Чтобы использовать скрипт: выберите файл(ы) изображения в Finder и активируйте скрипт из меню.

person Max_B    schedule 15.12.2016