Macos 视网膜显示:如何在Finder和Preview中以本机像素分辨率显示图像

Macos 视网膜显示:如何在Finder和Preview中以本机像素分辨率显示图像,macos,finder,retina,Macos,Finder,Retina,这是一个伪问题,请在下面分享我自己的技巧和脚本 重点是能够在视网膜显示器上逐像素显示图像。这主要适用于高分辨率图像和/或处理HDPI版本图像的开发人员 只有在OSX首选项中将显示设置设置为2:1时,解决方案才能正常工作。请注意,2016年末MacBook Pro默认设置在默认情况下并没有设置为2:1。您应该将其设置为“中等”设置,以使其正确。Finder:简单的技巧是给出一个以@2x结尾的名称(在扩展名之前):my_image@2x.jpg。然后,当使用快速查看功能时,图像是像素级的。由于此命名

这是一个伪问题,请在下面分享我自己的技巧和脚本

重点是能够在视网膜显示器上逐像素显示图像。这主要适用于高分辨率图像和/或处理HDPI版本图像的开发人员


只有在OSX首选项中将显示设置设置为2:1时,解决方案才能正常工作。请注意,2016年末MacBook Pro默认设置在默认情况下并没有设置为2:1。您应该将其设置为“中等”设置,以使其正确。

Finder:简单的技巧是给出一个以
@2x
结尾的名称(在扩展名之前):
my_image@2x.jpg
。然后,当使用快速查看功能时,图像是像素级的。由于此命名方案推荐用于视网膜图像,正常图像和HDPI图像显示的大小与预期相同,视网膜更清晰

预览:在预览中,如果图像的DPI分辨率设置为72dpi,则图像的DPI分辨率将被解释为正常。通过将其设置为144,可以获得正确的显示比率。通过将显示比例更改为50%,可以在72dpi下实现相同的效果,但比例设置不会附着到图像文件,而DPI设置会附着到图像文件。通过工具->尺寸菜单项进行更改

下面是一个小applescript,用于从Finder自动设置144dpi

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文件夹中。 确保选中脚本编辑器首选项中的
显示脚本菜单
选项

要使用脚本:在Finder中选择图像文件并从菜单中激活脚本