macOS开启HiDPI外接2K显示器(解决字体发虚问题)

1.前言:

购置了一台2K显示器,但通过HDMI直接连接时的显示效果让人难以接受,因此我们需要启用苹果系统的HiDPI模式,以实现更完美的显示效果。

那么,为什么要启用HiDPI模式呢?2K显示器的分辨率为2560*1440,如果使用默认设置,显示器上的文字会显得特别小。我尝试过使用最新版的SwitchResX来强制将分辨率设置为1080P,但实际效果并不理想。虽然大小适应了,但字体看起来模糊。在查阅了许多资料后,我总结出了这篇文章中介绍的最简单的启用HiDPI模式的方法。希望这篇文章对你有帮助。

2.解决办法:

2.1 打开系统HiDPI (通过终端运行)

要启用系统的HiDPI,可通过在终端中运行以下命令:

sudo defaults write /Library/Preferences/com.apple.windowserver DisplayResolutionEnabled -bool YES

如果使用4K或更高分辨率的显示器,macOS通常原生支持HiDPI,您只需下载RDM即可。如果无法启用或找不到适当的分辨率,可以考虑使用配置文件。

2.2 禁用SIP (适用于macOS 10.11及以上版本)

从macOS 10.11 El Capitan开始,系统默认启用System Integrity Protection(SIP),以防止系统文件被修改。由于配置文件需要放在系统文件夹中,因此需要禁用SIP。

  • 开机或重启后,在听到开机声音后按住Command + R组合键,进入macOS恢复模式。
  • 在屏幕上方的菜单中选择 Utlities > Terminal 以打开终端。
  • 输入并执行以下命令:
    csrutil disable
    
  • 然后重新启动系统,继续下一步。

在完成所有设置后,出于安全考虑,建议重新启用SIP。按照以上步骤进入恢复模式,输入并执行 csrutil enable

值得一提的是,最初我完成了这一步后直接使用SwitchResX的设置方法来强制开启1080P分辨率,但效果并不理想。尽管调整了显示大小,但所有显示都显得模糊不清。因此,我提供以下设置方法。

2.3 获得显示器信息

获得显示器信息有很多种方法,在这里用最简单的,我们分别需要获得显示器的 VendorID 和 ProductID (制造商ID 和 产品ID),在终端运行:
ioreg -lw0 | grep IODisplayPrefsKey | grep -o '/[^/]\+"$'
输出大概是这样的:

> ioreg -lw0 | grep IODisplayPrefsKey | grep -o '/[^/]\+"$'
/AppleBacklightDisplay-610-a029"
/AppleDisplay-10ac-d0ff"

第一条AppleBacklightDisplay-610-a029是MBP的内置显示屏。
第二条是外接显示器。如果你合上屏幕,这样只会输出正在使用的外接显示器。
着重在第二条,/AppleDisplay-10ac-d0ff" 这里的10acd0ff是两个十六进制数。第一个为VendorID,第二个为ProductID。电脑不同,显示的数值不同,这里的数值是我的电脑为例。

2.4 生成配置文件夹

2.4.1 简单方法

①生成配置文件
这一步的配置如果自己输入比较复杂,建议直接采用一键生成的方式进行配置,参考大神的制作。
具体按下图设置,分辨率你直接按下图填入即可,两个ID需要根据你的实际情况进行填写。

在这里插入图片描述

点击生成之后就已经生成了配置文件了。
②创建配置文件夹
这一步简单,直接创建一个空白文件夹,重命名DisplayVendorID-xxx这里的xxx就是你上一步的VendorID。
③将①中的配置文件复制到②中的文件夹中
④将③中的文件夹拷贝到以下路径的文件夹中

# OS X 10.11及以上
DIR=/System/Library/Displays/Contents/Resources/Overrides
# OS X 10.10及以下
DIR=/System/Library/Displays/Overrides

到这里为止,准备工作就基本完成了。
如果这里的一键生成配置ok的话,直接跳到2.5即可。
如果这里的一键生成配置失效的话,就只能用2.4.2的复杂方法进行手动配置。

2.4.2 复杂方法

其实也不复杂,按照如下图所示,直接建立一个空白文档,将代码复制进去即可。
在这里插入图片描述

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict><key>DisplayVendorID</key><integer>xxxx</integer>           <key>DisplayProductID</key><integer>xxxx</integer>           <key>scale-resolutions</key><array><data>AAAHgAAABDgAAAABACAAAA==</data>    <!-- 1920x1080 --><data>AAAPAAAACHAAAAABACAAAA==</data><data>AAAPAAAACHAAAAABACAAAA==</data>    <!-- 3840x2160 --><data>AAAeAAAAEOAAAAABACAAAA==</data></array>
</dict>
</plist>

文件配置完成之后就按照2.4.1中的②③④操作即可。

2.5 使用RDM进行切换

重启系统打开RDM,这就可以进行切换了。
如图:
在这里插入图片描述

3 最后总结

这个方法是我自己尝试过不仅能够调节分辨率,而且也不会出现字体发飘的现象,而且应该是比较安全的一个方法。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/690901.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

IDEA连接database数据库

文章目录 一、连接数据库1、连接mysql2、连接参数配置3、配置驱动从maven仓库下载&#xff1a;要求联网将提前下载好的jar放到本地目录 4、完成 二、执行sql1、选择要操作的数据库2、执行sql 三、问题1、可能因为时区问题连接不上 一、连接数据库 1、连接mysql 2、连接参数配置…

【AI数字人-论文】AD-NeRF论文

文章目录 NeRFAD-NeRF模型NeRF体渲染个体NeRF表示背景和姿态编辑 loss 参考 NeRF 将一个连续的场景表示为一个输入为5D向量的函数&#xff0c;这个函数为NeRF函数&#xff0c;它的输入由一个空间点的3D位置 x ( x , y , z ) \mathbf{x} \left( x, y, z \right) x(x,y,z)和它…

Android S - 添加按键,上报键值为0

仅作记录 展锐8581模块 device/sprd/mpool/module/keylayout/gpio-keys.kl#仿照下面的形式&#xff0c;新增一行 key 68 F10 WAKE key 114 VOLUME_DOWN WAKE key 115 VOLUME_UP WAKE key 116 POWER WAKE key 212 CAM…

【前端素材】几款实用的后台管理系统html模板(附带源码)

一、需求分析 后台管理系统是一种用于管理网站、应用程序或系统的工具&#xff0c;它通常作为一个独立的后台界面存在&#xff0c;供管理员或特定用户使用。下面详细分析后台管理系统的定义和功能&#xff1a; 1. 定义 后台管理系统是一个用于管理和控制网站、应用程序或系统…

湖南建研工程质量检测系统/Scripts/admintool文件上传漏洞

免责声明&#xff1a;文章来源互联网收集整理&#xff0c;请勿利用文章内的相关技术从事非法测试&#xff0c;由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失&#xff0c;均由使用者本人负责&#xff0c;所产生的一切不良后果与文章作者无关。该…

了解c++智能指针的使用案例和场景

c智能指针是一种封装了原始指针的类对象&#xff0c;可以实现自动管理内存的功能&#xff0c;避免手动new和delete造成的内存泄漏或重复释放等问题。 c智能指针有三种类型&#xff0c;分别是&#xff1a; std::unique_ptr&#xff1a;独占式智能指针&#xff0c;表示对内存的唯…

YAPI接口自动鉴权功能部署详解

安装准备 以下操作&#xff0c;默认要求自己部署过yapi&#xff0c;最好是部署过yapi二次开发环境。 无论是选择在线安装或者是本地安装&#xff0c;都需要安装client工具。 1、yapi-cli&#xff1a;npm install yapi-cli –g&#xff0c; 2、安装后将文件夹nodejs/node_gl…

Chapter 8 - 16. Congestion Management in TCP Storage Networks

Active Queue Management As previously mentioned, dropping or marking schemes for packets that are waiting in a queue can significantly influence TCP’s behavior on the end devices. These schemes are called Active Queue Management (AQM). 如前所述,针对在队…

推荐一个内网穿透工具,支持Windows桌面、Linux、Arm平台客户端

神卓互联是一款常用的内网穿透工具&#xff0c;它可以将本地服务器映射到公网上&#xff0c;并提供域名或子域名给外部访问。神卓互联具有简单易用、高速稳定的特点&#xff0c;支持Windows桌面版、Linux版、Arm版客户端&#xff0c;以及硬件等。 神卓互联内网穿透技术简介 企…

【C++航海王:追寻罗杰的编程之路】vector

目录 1 -> vector的介绍及使用 1.1 -> vector的介绍 1.2 -> vector的使用 1.2.1 -> vector的介绍 1.2.2 -> vector iterator的使用 1.2.3 -> vector空间增长问题 1.2.4 -> vector的增删查改 1.2.5 -> vector迭代器失效问题 2 -> vector的深…

uniapp登录逻辑

1.登录页面实现 <template><view class"box"><view class"boxTop"><view class"title">欢迎登录</view><view class"topic">还没有账号&#xff0c;<span clickgetRegister>立即注册</…

已解决:IDEA中@Autowired自动注入MyBatis Mapper报红警告的几种解决方法

今天在使用 IDEA 使用 MyBatis 的时候遇到了这种情况&#xff1a; 可以看到 userMapper 下有个红色的波浪警告&#xff0c;虽然代码没有任何问题&#xff0c;能正常运行&#xff0c;但是这个红色警告在这里杵着确实让人很窝心。 于是我在网上找了找&#xff0c;最终明白了原因…

[杂记]mmdetection3.x中的数据流与基本流程详解(数据集读取, 数据增强, 训练)

之前跑了一下mmdetection 3.x自带的一些算法, 但是具体的代码细节总是看了就忘, 所以想做一些笔记, 方便初学者参考. 其实比较不能忍的是, 官网的文档还是空的… 这次想写其中的数据流是如何运作的, 包括从读取数据集的样本与真值, 到数据增强, 再到模型的forward当中. 0. MMDe…

AcuAutomate:一款基于Acunetix的大规模自动化渗透测试与漏洞扫描工具

关于AcuAutomate AcuAutomate是一款基于Acunetix的大规模自动化渗透测试与漏洞扫描工具&#xff0c;该工具旨在辅助研究人员执行大规模的渗透测试任务。 在大规模的安全测试活动中&#xff0c;AcuAutomate可以帮助我们同时启动或停止多个Acunetix扫描任务。除此之外&#xff…

docker的底层原理五: 控制组

概述&#xff1a;Docker 的控制组&#xff08;Control groups&#xff0c;简称 cgroups&#xff09;是 Linux 内核的一个功能&#xff0c;用于限制、控制和审计进程组所使用的物理资源。在 Docker 中&#xff0c;cgroups 用于确保容器只能使用分配给它们的资源&#xff0c;从而…

你知道Web框架有哪些吗?

Bootstrap Bootstrap 是由Twitter团队推出的开源前端框架&#xff0c;以HTML、CSS和JavaScript为基础&#xff0c;提供了一系列可复用的UI组件和强大的响应式布局系统。它易于上手&#xff0c;有助于开发者快速构建简洁、一致且移动友好的网站。 Foundation Foundation 同样是…

【鸿蒙系统学习笔记】状态管理

一、介绍 资料来自官网&#xff1a;文档中心 在声明式UI编程框架中&#xff0c;UI是程序状态的运行结果&#xff0c;用户构建了一个UI模型&#xff0c;其中应用的运行时的状态是参数。当参数改变时&#xff0c;UI作为返回结果&#xff0c;也将进行对应的改变。这些运行时的状…

【工作记录】基于docker+mysql部署单机版nacos2.0.4@20240219

Nacos介绍 Nacos 是阿里巴巴开源的一款集服务发现、配置管理和服务元数据管理于一身的中间件&#xff0c;主要用于构建云原生应用和微服务架构。Nacos 提供了一站式的解决方案&#xff0c;使得开发者能够更容易地实现服务治理和服务间的协作。 以下是 Nacos 主要功能特点&…

[AudioRecorder]iPhone苹果通话录音汉化破解版-使用巨魔安装-ios17绕道目前还不支持

首先你必须有巨魔才能使用&#xff01;&#xff01; 不会安装的&#xff0c;还没安装的移步这里&#xff0c;ios17 以上目前装不了&#xff0c;别看了&#xff1a;永久签名 | 网址分类目录 | 路灯iOS导航-苹果签名实用知识网址导航-各种iOS技巧-后厂村路灯 视频教程 【Audio…

头歌:共享单车之数据分析

第1关 统计共享单车每天的平均使用时间 package com.educoder.bigData.sharedbicycle;import java.io.IOException; import java.text.ParseException; import java.util.Collection; import java.util.Date; import java.util.HashMap; import java.util.Locale; import java…