Win32BitBlt—ミラー(画像を水平方向に
質問
なのでこのままStretchBltできるミラー画像を水平や垂直に自身のnWidthSrc/DestとnHeightSrc/データベース。私はこの機能の性能のオーバーヘッド、StretchBlt.また、同じ技術をBitBltん。
必要があります。鏡画像など簡単なものBitBltはなく、失わせないアイテムのStretchBlt?まStretchBltに影響を与えないパフォーマンスのソースとデスティネーションズ"は同一者でもいいですか?
解決
のBitBltは、それがどのような方法で画像のサイズを変更しないであろう、問題の個々の画素にmathmatic操作(又は、XORなど)を実行します。それはStretchBltがためですまさにあり、かつ(操作のサイズを変更する他のグラフィックスに比べて)StretchBltは、ほとんどの場合、それはその性能を加速するグラフィックスカードを使用することができるようめちゃくちゃ速いです。
他のヒント
すべてのWin32関数は、おそらく非常に最適化しようとしている。
あなたはStretchBltは大きなパフォーマンスヒットになると思うのですか?
あなたがStretchBltを使用してアプリケーションをプロファイルがありますか?
あなたは自分をビットマップデータのすべてを逆転させ、あなたがもっとうまくできるかどうかを確認できることがStretchBltます。
ここであなたを助けるかもしれないリンクがあります:
http://www.codeguru.com/cpp /gm/bitmap/specialeffects/article.php/c1739する
ミラー画像だけのループによるピクセルを逆順です。などしたい場合は鏡の横方向だけを必要としなければならない。
- 拡大画像キャンバスダブルサイズ
- 開始の下部に画像や働き方のピクセルのミラーからのトップです。
- いステップ3は、左から右。
どうなるかはわからない言語使用が許可する操作のピクセルのビットが個々に使用GDI.
まさか