C言語ですでに画面に表示されている内容を指定した角度で回転したいですが、
可能でしょうか。
推測ですが、恐らく、いったん、どっかに存在する表示バッファを自分のメモリに読み込み、
回転してから、画像として再表示するだろうと思いますが、
具体的なやり方分からず、教えてください。
もしも、もっと簡単なやり方があれば、合わせて教えてください。
開発環境:
windows 7 64 bit
visual studio 2010
VC++
画面に表示されている内容を指定した角度で回転
Re: 画面に表示されている内容を指定した角度で回転
使用しているライブラリなどあれば書いていただいた方が良いと思います。
これだけだと返答は難しいです。
Dxライブラリであれば
GetDrawScreenGraphで描画内容を取り込んで、DrawRotaGraphなどで描画してやればいいのではないでしょうか?
これだけだと返答は難しいです。
Dxライブラリであれば
GetDrawScreenGraphで描画内容を取り込んで、DrawRotaGraphなどで描画してやればいいのではないでしょうか?
Re: 画面に表示されている内容を指定した角度で回転
GetDesktopWindow関数で画面全体のウィンドウハンドルが取得でき、
そこにGetDCを使うことでデバイスコンテキストが取れるので、画面に表示されている内容を取得できます。
デバイスコンテクストの描画内容をBMP(に近い)形式に変換するには、このサイトの方法が使えます。
http://www13.plala.or.jp/kymats/study/M ... b_ddb.html
画像回転のアルゴリズムは、ここに紹介されています。
http://homepage2.nifty.com/tsugu/sotuke ... .html#0016
BMPファイルに保存したいなら、そのまま書き込んでください。
ウィンドウに表示したいなら、SetDIBitsToDevice関数でBMP(に近い)形式のデータを直接デバイスコンテキストに描画できます。
jpegファイルやpngファイルに保存したいなら、それぞれlibjpegやlibpngを使えばいいでしょう。
libjpegの使い方 http://www.syuhitu.org/other/jpeg/jpeg.html
libpngの使い方 http://dencha.ojaru.jp/programs_07/pg_graphic_10a2.html
そこにGetDCを使うことでデバイスコンテキストが取れるので、画面に表示されている内容を取得できます。
デバイスコンテクストの描画内容をBMP(に近い)形式に変換するには、このサイトの方法が使えます。
http://www13.plala.or.jp/kymats/study/M ... b_ddb.html
画像回転のアルゴリズムは、ここに紹介されています。
http://homepage2.nifty.com/tsugu/sotuke ... .html#0016
BMPファイルに保存したいなら、そのまま書き込んでください。
ウィンドウに表示したいなら、SetDIBitsToDevice関数でBMP(に近い)形式のデータを直接デバイスコンテキストに描画できます。
jpegファイルやpngファイルに保存したいなら、それぞれlibjpegやlibpngを使えばいいでしょう。
libjpegの使い方 http://www.syuhitu.org/other/jpeg/jpeg.html
libpngの使い方 http://dencha.ojaru.jp/programs_07/pg_graphic_10a2.html
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)
Re: 画面に表示されている内容を指定した角度で回転
沖 滉均 様 usao 様
情報有難うございます。
いい勉強になりました。
/////////////////////////////////////////////
みけCAT 様
お返答で私の問題を見事に解決できました。
素晴らしいです。
それに画像の回転に関する情報までご提供くださって
本当にありがとうございました。
情報有難うございます。
いい勉強になりました。
/////////////////////////////////////////////
みけCAT 様
お返答で私の問題を見事に解決できました。
素晴らしいです。
それに画像の回転に関する情報までご提供くださって
本当にありがとうございました。