2012-03-30 4 views
2

私は特定のウィンドウのライブビューを取得する方法を見つけようとしています。同じように、Mission ControlとExposéでは、現在のところ他のウィンドウで隠されているウィンドウのライブビューが表示されます(これはHyperdockでも行われますので、プライベートAPIではないことは間違いありません)。objective-cのウィンドウのライブスクリーンショットを取得

機能とは何ですか?それでドキュメントはどこにありますか?

答えて

1

Quartz Window Services APIが必要です。基本的には、関心のあるウィンドウでウィンドウリストを作成し、CGWindowListCreateImageを使用してウィンドウの内容を取得したいとします。

+1

イメージは静的ですが、ライブではないため、ポーリングするか、画面更新コールバックを使用してトリッキーを行う必要があります(ウィンドウの一部が目に見えて変わった場合は、 )。 –

+0

ライブアップデート用のAPIはありますか? –

+0

@ジョナサン:窓の中に何かが描かれたときにいつも通知を受けることを意味するなら、私は気づいていない。 HyperDockはそれをしません。 Quartz Display Servicesからスクリーン更新コールバックを得ることができますが、ウィンドウの隠れた部分が再描画されてもキャッチしないAFAIKは得られます。 – Chuck

関連する問題