由于现代 macOS 设备默认选择使用缩放的 HiDPI 分辨率,因此位图图像在屏幕上变得模糊。有没有办法将位图逐个像素地渲染为显示屏的真正本机物理像素?是否有任何 CoreGraphics、OpenGL 或金属 API 可以在不改变屏幕显示模式的情况下实现这一点?
如果您正在考虑那些convertXXXXToBacking
和朋友,请停止。这是为您解释。MacBook Pro 中的典型 13 现在具有原生 2560x1600 像素分辨率。全新 macOS 安装后,推荐的默认屏幕分辨率为 1440x900。用户可以通过系统偏好设置将其更改为 1680x1050。在 1440x900 或 1680x1050 的情况下,backingScaleFactor 正好是 2。典型的渲染路线会首先将任何东西渲染到非物理的 2880x1800 或 3360x2100 分辨率,然后 OS/GPU 使用未知方法进行最终重采样。