- ベストアンサー
スクリーンの画像をメモリに読み込みたい
今、スクリーンに表示されている画像をそのままメモリに読み込んで ピクセル毎に演算処理をするようなプログラムを書きたいのですが どうすればいいでしょうか。 できれば、なるべく高速な方法がいいです。 ちなみにVC++2005です。 宜しくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
★アドバイス ・『GetDC(NULL)』として画面全体のデバイス・コンテキストを取得します。 その後に取得したデバイス・コンテキストからメモリ・デバイス・コンテキストを作成します。 あとはご自由に演算して下さい。 ・以上。
その他の回答 (1)
- MrBan
- ベストアンサー率53% (331/615)
回答No.2
> できれば、なるべく高速な方法がいいです。 GetPixelとかすると異常に遅くなりますので、 メモリにブロック転送してメモリ操作することをお勧めします。
質問者
お礼
無事にできました。ありがとうございました。
質問者
補足
お早い回答ありがとうございます。 そうですね、1つ1つ取得すると遅くなりそうなので 一度に転送したいのですがその方法がわかりません。
お礼
すみません、CreateDIBSectionを使用したら無事にできました。 ありがとうございました。
補足
迅速な解答ありがとうございます。 CreateCompatibleDCでメモリデバイスコンテキストは作成できました。 恐らく、画面全体のdcからメモリdcにbitbltか何かを使ってコピーするということでしょうか。 そうだとすると、メモリdcにコピーしたあと、どこに画像情報が含まれているのかわからないのですが。