Microsoft KB Archive/195830

{|
 * width="100%"|

INFO: Blitting Between DCs for Different Devices Is Unsupported

 * }

Q195830

-

The information in this article applies to:


 * Microsoft Win32 Software Development Kit (SDK)
 * Microsoft Windows 2000 Advanced Server
 * Microsoft Windows 2000 Server
 * Microsoft Windows 2000 Professional

-

SUMMARY
Using a device-dependent blitting operation, such as BitBlt or StretchBlt, to transfer data from a DC supported by one device to a DC supported by another device is not supported. While blitting between different devices might work with some driver pairs, you cannot rely on it to work between all driver pairs, so you should avoid it. The most common problem scenario occurs when the code for displaying a memory bitmap uses StretchBlt to display the image to a printer DC.

To avoid this problem, convert the memory bitmap from its device-dependent form into a device-independent form by using the function GetDIBits. You can display The device-independent image to the second device by using either SetDIBits or StretchDIBits.

MORE INFORMATION
For more information on how to convert between device-dependent bitmaps (DDBs) and device-independent bitmaps (DIBs), see the following KB article: For additional information, please click the article number below to view the article in the Microsoft Knowledge Base:

"Q80080 HOWTO: Convert Between Device-Dependent Bitmaps and DIBs" Additional query words:

Keywords : kbBitmap kbGDI kbOSWin2000

Issue type : kbinfo

Technology : kbwin2000AdvServ kbwin2000AdvServSearch kbwin2000Serv kbwin2000ServSearch kbwin2000Search kbwin2000ProSearch kbwin2000Pro kbWin32SDKSearch kbAudDeveloper kbSDKSearch kbWinAdvServSearch kbWin32sSearch