BUG: StretchBlt() Does Not Perform Palette Translations
Article ID: 111729
Article Last Modified on 3/7/2005
APPLIES TO
- Microsoft Windows Software Development Kit 3.1
This article was previously published under Q111729
3.10
WINDOWS
kbprg kbbuglist
SYMPTOMS
Normally, the StretchBlt() function performs a palette translation when the destination and source bitmaps do not contain the same color format or palette. When the destination rectangle is the exact size of the source rectangle (no stretching is performed), the palette translation is not performed.
CAUSE
When the destination and source rectangles are the same size, no stretching
is performed and BitBlt() is called to perform a straight copy of the source to the destination. BitBlt() does not perform the palette
translation that StretchBlt() does.
RESOLUTION
You can force StretchBlt() to not call BitBlt() by changing one of the destination rectangle coordinates by one unit. Then, the palette
translation will be performed.
STATUS
Microsoft has confirmed that this is a bug in the Microsoft products that are listed at the beginning of this article.
MORE INFORMATION
This problem does not occur in Windows NT version 3.1.
Additional query words: buglist3.10 3.10
Keywords: kbbug kbpending KB111729