간혹 StretchDIBits 함수를 사용하여 비트맵을 축소하여 보여주고 싶은 경우가 있을 수가 있는데, 이 경우에는 조심해야 할 사항이 있다. 비트맵을 원본 크기보다 작은 크기로 출력하고자 할 경우, 출력된 영상이 전체적으로 검정색 계열로 지저분하게 출력될 수 있기 때문이다. 이런 경우 비트맵 늘이기 모드를 변경해주어야 깔끔한 영상 출력이 가능하다. Windows에서는 비트맵 늘이기 모드를 지정할 수 있는 SetStretchBltMode 함수를 제공한다.
int SetStretchBltMode( HDC hdc, int iStretchMode );
SetStretchBltMode 함수의 두 번째 인자가 늘이기 모드를 지정하는 역할을 한다. 일반적인 사진과 같은 비트맵을 늘여서 화면에 출력하고자 할 경우에는 이 모드 값을 COLORONCOLOR으로 지정해주어야 깔끔한 영상 출력이 가능하다. 예를 들어, 640×480 크기의 비트맵 영상이 있을 경우, 이 영상의 가로, 세로 크기를 1/2만큼 축소하여 화면에 출력하고 싶다면 아래와 같이 코드를 작성할 수 있다. 아래 코드에서 hdc, lpBits, lpBitsInfo는 이미 적절하게 지정되어 있다고 가정한다.
::SetStretchBltMode(hdc, COLORONCOLOR); ::StretchDIBits(hdc, // hdc 0, // XDest 0, // YDest 480 / 2, // nDestWidth 640 / 2, // nDestHeight 0, // XSrc 0, // YSrc 480, // nSrcWidth 640, // nSrcHeight lpBits, // lpBits lpBitsInfo, // lpBitsInfo DIB_RGB_COLORS, // wUsage SRCCOPY); // dwROP