2014-11-04 58 views
0

我遇到了使用我的Safari NPAPI插件支持视网膜屏幕的问题。Safari NPAPI插件和视网膜支持

我正在使用基于CoreGraphics的插件,由于某种原因,我使用的窗口返回的backingScaleFactor在视网膜屏幕上是1而不是2。

我试图寻找一些配置参数没有运气。

我可以使它工作的唯一方法是创建NSWindow的子类并重写backingScaleFactor以返回2.但是,我找不到从插件本身检测视网膜屏幕的方法。

有什么想法?

回答

0

不幸的是,可能没有办法。您无法获取您正在使用的NSWindow,因此无法确定您正在使用哪个监视器。如果Safari没有给你你需要的东西,那可能没有选择。

0

但是,我找不到从插件本身检测视网膜屏幕的方法。

您可以使用NPNVcontentsScaleFactor来查询此信息,并在其更改时获取更新。

+0

查询NPNVcontentsScaleFactor让我始终使用Safari 1。我正在使用以下内容: “boost :: shared_ptr npapihost = FB :: ptr_cast (m_host); double contentsScaleFactor = 1.0; npapihost-> GetValue(NPNVcontentsScaleFactor,&contentsScaleFactor); 有什么想法? – Samir 2014-11-06 14:45:12