私はMFCが初めてです。ここで、次の質問があります。大きなサイズの画像 (たとえば、2000*2000 のサイズ) を小さなサイズのウィンドウ (たとえば、640*480 のサイズ) に表示しています。ズームアウトしないと写真が完全に表示されないのも不思議ではありません。画像がウィンドウに収まる場合、ピクセルを失うことなく元の画像を保存できることはわかっていますが、現時点ではこれを行うことはできません。
CClientDC SHDC(this); //"this" is a CMDIChildWnd derived class
CDC memDC;
CRect rect;
GetClientRect(&rect);
memDC.CreateCompatibleDC(&SHDC);
CBitmap bm;
int uWidth = rect.Width();
int uHeight = rect.Height();
bm.CreateCompatibleBitmap(&SHDC, uWidth, uHeight);
CBitmap *pOld = memDC.SelectObject(&bm);
memDC.BitBlt(0, 0, uWidth, uHeight, &SHDC, 0, 0, SRCCOPY);
......
保存された画像にはクライアント領域のみが表示されますが、すべての画像を保存したいと考えています。誰でも私を助けることができますか?前もって感謝します。
西