桌面版Adobe AIR/Flex在视网膜屏幕上的表现(非iOS)

3

如图所示,我的AIR应用程序使用AIR SDK 3.7(Flex4.5)编译,在Mac OSX上的Retina显示屏上看起来像素化。我搜索了一些资料,但无法找到任何改善这种情况的方法。

您可以比较菜单上的字体和应用程序中的字体。


也许可以尝试查看这个链接:http://help.adobe.com/en_US/flex/mobileapps/WS19f279b149e7481c682e5a9412cf5976c17-8000.html。它适用于移动项目,但是您也有可能在桌面项目中使用它。 - Pete TNT
问题可能是您的Flex SDK仅支持高达320 dpi的密度,因此会缩放您的内容以适应屏幕。Apache Flex 3.10 SDK增加了对440 dpi的支持。(抱歉,我刚刚重新检查了一下。MacBook大约有220 dpi,所以这可能没有太大帮助) - T. Richter
如果我没记错的话,AIR将所有桌面显示器都报告为单个DPI(我相信是72)。AIR以此为基础渲染应用程序,然后进行相应的缩放。我相信这就是现在发生的情况。 - Josh
你找到解决方案了吗? - Pier
@Pier,我没有找到解决方法,我已经不再参与这个项目了。主要问题是我没有视网膜显示器来进行测试和尝试不同的黑客技巧以及最新的AIR版本。 - simion314
将<requestedDisplayResolution>high</requestedDisplayResolution>放置在<initialWindow>标签内。来源:https://dev59.com/MWvXa4cB1Zd3GeqPImNa - csomakk
2个回答

2

为了帮助那些遇到困难的人们...

你需要将其作为包含运行时的应用程序进行发布。

然后右键点击你的应用程序并显示包内容。

打开 plist 文件并在 </dict> 之前添加以下内容:

<key>NSHighResolutionCapable</key>
<true/>

保存并打开终端

输入touch并将你的应用程序拖到终端上,然后按回车键。

最后右键点击你的应用程序并选择"获取信息"。确保"低分辨率下打开"处于关闭状态。


我意识到这个问题已经存在一段时间了,但是我尝试在 macOS Monetery 12.0.1 上为一个 Adobe Air 应用程序(嵌入了运行时,Harman 的 Air 33)使用此解决方案,但对我来说并没有起作用。 - FlashV8

2

 <initialWindow>

放置

<requestedDisplayResolution>high</requestedDisplayResolution>

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接