【问题标题】:HTML5 Canvas - Performance difference between portrait and landscape on retina displayHTML5 Canvas - 视网膜显示器上纵向和横向之间的性能差异
【发布时间】:2012-07-23 23:27:38
【问题描述】:

我们正在使用缩放技术来提高我们的画布网络应用在视网膜显示屏上的分辨率。基本上,这里描述的技术:

http://zsprawl.com/iOS/2012/03/html5-canvas-and-retina-displays/

但是,我们注意到在横向模式与纵向模式下运行时性能存在显着差异。我已经设置了一个 jsFiddle 测试应用程序来演示这一点。如果您查看嵌入式版本,您会注意到差异:

http://jsfiddle.net/SaJ69/embedded/result/

(删除 /embedded/result/ 会将您带到原始小提琴。我只能有一个包含 2 个链接的帖子)

如果您在 iPad3 上查看此内容时在纵向和横向之间切换(您需要在切换之间刷新浏览器窗口),您会发现纵向模式比横向模式更不稳定。在我自己的网络服务器上运行它(而不是通过 jsFiddle),结果更加明显。

我尝试做一些帧速率指标,但它们只是测量我们进行绘图调用的次数,而不是浏览器实际更新的次数。

有人对此有任何见解吗?这是与硬件相关的问题吗?理论上,我们执行相同的绘制调用并填充相同数量的像素,对吗?

-克里斯

【问题讨论】:

    标签: html web-applications canvas retina-display ipad-3


    【解决方案1】:

    我也遇到了横向与纵向的相同问题。这也发生在 iPhone 4、4s 和 5 - Anywhere Retina 和双密度画布上。我唯一的解决方法是在 Apple 解决问题之前不要使用双密度技巧。

    但是,如果你决定使用 Retina,你可以检测设备的方向并调整画布的大小以仅在横向中实现双倍密度...

    【讨论】:

      【解决方案2】:

      似乎一种可行的解决方法是将画布宽度固定为 1023,使双密度画布的宽度为 2046 像素;由 Arima 发现并在此处解释: http://www.scirra.com/forum/retina-ios-performance-problem-fix-please-test_topic58742.html

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-05-27
        • 2014-02-07
        • 2012-09-11
        • 1970-01-01
        • 1970-01-01
        • 2011-06-13
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多