4

クロムトレースパネルを使用してパフォーマンスプロファイリングを実行すると、特にスクロールで、多くの画像のサイズ変更が見つかりました。

フロントエンドからすべての(私が思うに)画像のサイズ変更を削除し、テスト目的でdomを簡略化して、この時点ではほとんど静的な画像要素にしました。

私にはいくつかの理論があります:

  1. すべての画像は内部でサイズ変更/リサンプリングされます
    • クロム源を見ると、すべてが「NativeImageSkia::resizedBitmap」を呼び出しているという証拠が見つかりました。
  2. RetinaディスプレイMacを使用すると、画像がサンプリングされます
    • これは、トレーサーのsrc_pixelsの4倍の「dst_pixels」サイズを確認することでバックアップされます。

誰かが上記のいずれかを確認または拒否できますか?

また:

サイズ変更されている画像を追跡することは可能ですか?

ここに画像の説明を入力してください

4

1 に答える 1

7

Google の何人かと協力した結果、これは実際には、Retina MacBook Pro での高 PPI モニターの処理に関連する Webkit のバグであると判断しました。

非 Retina ディスプレイ (同じ Mac、外部モニター) では、「イメージ デコード」イベントのみが表示されます。同じコンテンツ、同じ Mac を Retina ディスプレイにレンダリングすると、「画像のデコード」イベントと「画像のサイズ変更」イベントの両方があることがわかります。

24 および 25.0.1329.0 でテスト済み

非 Retina ディスプレイ Retina ディスプレイ

また、現在、Chrome のランタイム インストルメンテーションからサイズ変更されている画像を見つけることはできません。

于 2012-11-20T00:09:19.190 に答える