MacBook Pro 内置屏幕有办法一键切换横竖屏吗?另外带刘海的 MacBook Pro 屏幕旋转 90 度后会有大黑边,切换到其它分辨率可以去掉,但是系统提示会影响性能,感觉屏幕还变模糊了 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
drymonfidelia
V2EX    MacBook Pro

MacBook Pro 内置屏幕有办法一键切换横竖屏吗?另外带刘海的 MacBook Pro 屏幕旋转 90 度后会有大黑边,切换到其它分辨率可以去掉,但是系统提示会影响性能,感觉屏幕还变模糊了

  •  
  •   drymonfidelia 2024 年 12 月 19 日 1835 次点击
    这是一个创建于 396 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我平常工作都是竖着用 Mac 写代码(反正是公司的电脑,坏了不用我出钱修,随便用),这样多一块竖屏屏幕 但是每次切换到竖屏都要按 Option 键打开设置隐藏选项,改旋转改分辨率,非常麻烦

    另外带刘海的 MacBook Pro 屏幕旋转 90 度后会有大黑边,切换到其它分辨率可以去掉,但是系统提示会影响性能,感觉屏幕还变模糊了,不知道是不是比例的问题,有 V 友知道吗?

    4 条回复    2024-12-19 18:53:20 +08:00
    element90
        1
    element90  
       2024 年 12 月 19 日   1
    macos 一键切换横竖屏(分辨率、刷新率...)需要安装一些工具和编写脚本,我这里可以提供。
    你需要先安装 homebrew , 然后使用以下命令进行安装和使用
    ```bash
    # 安装
    brew tap jakehilborn/jakehilborn && brew install displayplacer
    # 查看
    displayplacer list
    ```
    以我得为例,我有两个显示器(内置+外置),所以最后会显示这样一段配置命令:

    displayplacer "id:CD734E9A-7030-FBE1-D6EB-D493D1CCC796 res:1680x1050 color_depth:4 enabled:true scaling:on origin:(0,0) degree:0" "id:0E89A38C-1F87-6851-6F11-2497A1657713 res:2560x1440 hz:59 color_depth:8 enabled:true scaling:off origin:(1680,0) degree:0"

    一般第一个("CD734E9A-7030-FBE1-D6EB-D493D1CCC796")就是内置的显示器配置,而"0E89A38C-1F87-6851-6F11-2497A1657713",则是第二个外置显示屏。

    你可以通过 mac 的显示器偏好手动调整你的显示器设置,然后执行 displayplacer list 命令后,复制其配置信息,将其封装成 bash 脚本:
    ```bash
    funcion screen_vertical() {
    # 垂直的配置,以我得为例,我将外置显示器垂直 90 度 -> degree:90
    displayplacer "id:CD734E9A-7030-FBE1-D6EB-D493D1CCC796 res:1680x1050 color_depth:4 enabled:true scaling:on origin:(0,0) degree:0" "id:0E89A38C-1F87-6851-6F11-2497A1657713 res:2560x1440 hz:59 color_depth:8 enabled:true scaling:off origin:(1680,0) degree:90"
    }

    function screen_horizontal() {
    # 默认/横向的配置,第一次执行 displayplacer list 时显示的配置,或者你可以再次调整出正常配置后执行 displayplacer list 再看一遍 -> degree:0
    displayplacer "id:CD734E9A-7030-FBE1-D6EB-D493D1CCC796 res:1680x1050 color_depth:4 enabled:true scaling:on origin:(0,0) degree:0" "id:0E89A38C-1F87-6851-6F11-2497A1657713 res:2560x1440 hz:59 color_depth:8 enabled:true scaling:off origin:(1680,0) degree:0"
    }
    ```

    把上述 bash 放到~/.zshrc(zsh shell) 或者~/.bashrc(bash shell) , 一般现在 macos 用的是 zsh shell, 这样你开机之后就可以直接再终端直接使用 screen_vertical 和 screen_horizontal 切换显示器(垂直/横向)配置。

    做到这里也只是完成终端/脚本切换。

    可以通过自定义快捷键触发脚本,我这里使用的是 Alfred (想象大部分 mac 用户都会安装它)

    打开 Alfred 的配置,点开 Workflows ,在左侧面板最下方点击 "+" 号,添加一个自定义的 workflow (添加时问你创建的模板,选择 Blank Workflow 即可),然后基本上填写 name 然后点击 create 即可。

    右击空白处点 Triggers->Hotkey ,创建一个 hotkey 触发方式,里面设置自己想触发的组合快捷键
    继续右击空白处点 Actions->Run Script ,在 Script 处追加一行命令,比如 screen_vertical 或者 screen_horizontal 然后保存

    然后再用鼠标将面板上的两个组件连接在一切,这就完成了一个快捷键切换配置,你可以同样的方式再添加一个 workflow ,来完成不同快捷键切换不同配置(横竖屏)
    element90
        2
    element90  
       2024 年 12 月 19 日
    但是你的内置屏幕旋转后大黑边问题,我不太了解,我觉得是分辨率设置不到位,所以才会留黑边。
    另外就是,内置屏幕旋转之后你怎么使用?难道将 macbook 像一本书一样竖着放去看屏幕使用?有点奇葩
    whusnoopy
        3
    whusnoopy  
       2024 年 12 月 19 日   1
    我用 Better Display 这个 App 来管理多个显示器,看了下是支持对内部显示器做旋转的,只是不确定能否有一个快捷键实现的方式 https://github.com/waydabber/BetterDisplay#readme
    drymonfidelia
        4
    drymonfidelia  
    OP
       2024 年 12 月 19 日
    @element90 是的,像书一样用 macbook
    黑边是因为旋转后刘海那一整条都不会显示且不计算进屏幕分辨率了,屏幕的比例变了
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5657 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 33ms UTC 07:27 PVG 15:27 LAX 23:27 JFK 02:27
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86