- 179 名前:86 [2009/02/06(金) 10:57:15 ]
- またまたすみませんが・・・
数日前色々教えてもらって縮小はうまくいったのですが今度は拡大がうまくいきません>< 1440x1080を1980x1080に拡大 dwBuffer = new DWORD[2048*2048]; dwBufferにデータをぶち込み BITMAPINFO bi; ::ZeroMemory( &bi, sizeof( BITMAPINFO ) ); bi.bmiHeader.biSize = sizeof( BITMAPINFOHEADER ); bi.bmiHeader.biWidth = 1440; bi.bmiHeader.biHeight = 1080; bi.bmiHeader.biPlanes = 1; bi.bmiHeader.biBitCount = 32; bi.bmiHeader.biCompression = BI_RGB; DWORD *buf; HDC hdc = ::CreateCompatibleDC( NULL ); HBITMAP hb = ::CreateDIBSection( hdc, &bi, DIB_RGB_COLORS, (void**)&buf, NULL, 0 ); ::SelectObject( hdc, hb ); ::StretchDIBits( hdc, 0, 0, 1980, 1080, 0, 0, 1440, 1080, dwBuffer, &bi, DIB_RGB_COLORS, SRCCOPY ); bi.bmiHeader.biWidth = 1980; bi.bmiHeader.biHeight = 1080; ::GetDIBits( hdc, hb, 0, 1980, dwBuffer, &bi, DIB_RGB_COLORS ); 出力サイズの1280x720を1980x1080に変更しただけなんですが・・・ どうも出力先のサイズが1440で切られてるみたいです。。。 何処が間違ってますか?
|

|