Bitmap stauchen/dehnen
-
Hallo Ich habe ein CBitmap-Objekt mit entsprechender Breite und Höhe. Wie kann ich die Bitmap um einen bestimmten Prozentsatz stauchen, bzw. dehnen?
Danke im voraus
-
schau Dir mal CDC::StretchBlt an:
CClientDc aDC(this); BITMAP bm; aBitmap->GetBitmap( &bm );//aBitmap sei mal ein CBitamp* CDC ImgMemDC;// Gerätekontext erzeugen, in den Bitmap geladen wird ImgMemDC.CreateCompatibleDC( &aDC ); CGdiObject* pOldObject = ImgMemDC.SelectObject( aBitmap ); aDC.SetStretchBltMode( COLORONCOLOR ); aDC.StretchBlt( m_rDestRect.left, m_rDestRect.top, m_rDestRect.right - m_rDestRect.left, m_rDestRect.bottom - m_rDestRect.top, &ImgMemDC, m_rSourceRect.left, m_rSourceRect.top, m_rSourceRect.right - m_rSourceRect.left, m_rSourceRect.bottom - m_rSourceRect.top, SRCCOPY ); ImgMemDC.SelectObject( pOldObject );
-
Hallo,
da nimst du dir den dreisats und rechndest dir das prozentual aus.(in Pixtel)
dan mit StretchBlt() ferendern.CBitmap bmp; CBitmap bild; bmp.LoadBitmap(IDB_BITMAP1); CDC SpeicherDC; SpeicherDC.CreateCompatibleDC(dcPrint); SpeicherDC.SelectObject( &bmp ); dcPrint->StretchBlt( 0, 0, 640, 200, &SpeicherDC, 0, 0, 100, 100, SRCCOPY );MFG TaccoGo