harunoharuno回答ポイント 250ptウォッチ

VC++6でJPGを描画する処理をつくりました。

①のように直接画面に描画する場合、正常に描画できるのですが、
②のように裏画面(cdcSubDC)に描画して最終的にメインの画面にBitBltしようとすると、
うまくいきません。
裏画面に描画する方法で間違えているところなどあるのでしょうが、いまいち解りません。
間違いを教えてくれ問題解決に導いてくれたかたに500ポイント差し上げます。
救いの手をよろしくお願いします。



CDC* cdcMainDC=wndIcon->GetDC();
   ・
   ・
  (省略)
   ・
   ・
ipi->Render(cdcMainDC->m_hDC,0,0,csz.cx,csz.cy,0,hit,wid,-hit,NULL);//描画します。


CDC cdcSubDC; //裏画面用CDC
cdcSubDC.CreateCompatibleDC(cdcMainDC);
CBitmap GraphicMap;

ipi->get_Width(&wid);//イメージのサイズを取得します。
ipi->get_Height(&hit);
CSize csz(wid,hit);
GraphicMap.CreateCompatibleBitmap(pDC ,wid,hit);//キャンバス準備
cdcSubDC.SelectObject(GraphicMap); //裏画面との関連付け
cdcSubDC.HIMETRICtoDP(&csz);
ipi->Render(pDC->m_hDC,0,0,csz.cx,csz.cy,0,hit,wid,-hit,NULL);//描画します。

ipi->Release();//イメージを解放します。
ist->Release();//ストリームを解放します。
GlobalFree(hgb);//読み込み用バッファを解放します。
cdcSubDC.SelectObject(oldBMP);

※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。
ログインして回答する

ベストアンサー

その他の回答

この質問へのコメント

コメントはありません

この質問への反応(ブックマークコメント)

質問の情報

登録日時
2007-01-29 16:13:30
終了日時
2007-01-29 21:19:57
回答条件
回答にURL必須 1人10回まで

この質問のカテゴリ

この質問に含まれるキーワード

VC++175PDC13BitBlt9jpg462IST14ストリーム65バッファ63CX28キャンバス64

人気の質問

メニュー

PC版