(前回)Cocoaの日々: SimpleCap - ウィンドウキャプチャで下のウィンドウも対象にする(4) 複数CGImage の合成
前回までの実装では、複数のウィンドウをキャプチャする場合に、間に入ったウィンドウはキャプチャされない。例えばこんなケース。
1、2のウィンドウをキャプチャする場合、その間にある(右の)ウィンドウはキャプチャされず、次のようになる。
上図のように、右のウィンドウは映らない。
これは仕様とする。
前回までのアーキテクチャでも簡易的に撮れないことはないのだが、合成時に下のウィンドウの影が濃くなる副作用がある。以下は影が濃い例。
わかりずらいので拡大してみる。
通常の影。
濃くなっている影のケース。
これは合成時に下のウィンドウを結果的に2回描画することになり、影の部分は2度塗の効果が出てしまうため。
これを改善するにはアプローチを変えなければならないが、このケースで困ることはかなりレアなので今回は簡易的な方法(つまり間に入ったウィンドウはキャプチャされない)を取って、それを仕様とすることにした。
#忘れずにマニュアルに書いておく。