【发布时间】:2019-05-10 07:25:11
【问题描述】:
我创建了一个 SDL2 应用程序,它支持高 DPI 并在手动运行编译后的二进制文件时正确显示。
我创建了一个.app 结构(Info.plist、Contents/... 等...),其中包含已编译的二进制文件。应用程序本身启动并运行良好,但问题是尽管将NSHighResolutionCapable 添加到我的Info.plist 中,但窗口的 DPI 较低,与在没有应用程序结构的情况下启动已编译二进制文件时的 DPI 形成对比。 Get Info 菜单将Open in Low Resolution 选项显示为打勾并显示为灰色,我没有碰过这个选项。
除非 macOS 应用程序包需要进一步的步骤,否则我可以确认二进制文件本身没有任何问题,因为它在手动运行时以高 DPI 运行。
以下是我的Info.plist 的 sn-p,我已编辑
为了可读性,一大堆不相关的键。
[...]
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>1.0.0</string>
<key>CFBundleVersion</key>
<string>1.0.0</string>
<key>NSHighResolutionCapable</key>
<true/>
为了在高 DPI 下运行,我需要进行哪些更改?
【问题讨论】:
-
您是否只是尝试添加
NSHighResolutionCapable键,在没有它的情况下运行您的包?您是否尝试过重置 Launch Services DB(请参阅这些答案:stackoverflow.com/questions/20426140/…)或使用新用户帐户? -
@TheNextman 是的,就是这样!感谢您的提示。
标签: c macos cocoa installation sdl