据我所知,网络浏览器以 96 PPI 显示图像。
至少在我的 Mac 上,使用屏幕捕获应用程序创建的屏幕截图是 144 PPI。
因此,如果我在 Mac 上创建了屏幕截图,并且想要将其上传到某个地方,以便人们能够以与我在 Mac 上看到的相同的尺寸看到它,我需要将其大小调整为 66.6%:
[旁白] 为什么是 66.6?我的计算如下:(96 / 144) * 100 = 66.6... 请注意,我的数学一点也不好。
magick original.png -resize 66.6% resize66dot6.png
[旁白] 这里我使用 ImageMagick。在 Mac 上安装 ImageMagick 最简单的方法是
brew install imagemagick
但事实上resize66dot6.png
,如果在网络浏览器(至少在 Safari 中)打开,它比应该的要大。
并且为了使屏幕截图以正确的大小显示在网络浏览器中,出于某种原因,我似乎需要将其大小调整为 50% 或非常接近的大小:
magick original.png -resize 50.0% resize50.png
从上到下:、、、original.png
以及实际的 UI 元素:resize66dot6.png
resize50.png
为什么会这样?
“网络浏览器以 96 PPI 显示图像”并非如此。这是不言而喻的,因为您可以轻松找到对角线长度为 15 英寸或24 英寸的 1920x1080 像素显示器。
除非样式或 html 元素另有指示,否则浏览器会显示 100% 像素大小。
但更基本的答案是:Retina 会撒谎,因为它会涉及像素尺寸。Retina 显示器可能“设置为 1080p”(例如),但设备实际上可能会创建并向显示器传递 1.5-4 倍的像素(具体取决于屏幕)。这会导致这些屏幕上的字体等更清晰,但也会带来一些混乱。
确定目标像素尺寸并使用它。Retina 的 wiki 页面有各种 Apple 产品的像素尺寸表。它不是标准化的,每年都会有所变化,每个产品都会有所变化。
就网页而言,使用“Retina”的 Apple 浏览器会在您的服务器上查找与文件名加上 @2x 匹配的图像。例如,请参阅https://stackoverflow.com/questions/9299807