Re: TransparentBlt() limitation?

From: Feng Yuan [MSFT] (fyuan_at_online.microsoft.com)
Date: 03/08/04


Date: Mon, 8 Mar 2004 14:18:34 -0800

Transparency is a tricking issue. Most likely it's not supported by printer
drivers. So GDI has to break it down to transparent and opaque areas and
only sending down the opaque ones.

For your problem, it's possible that GDI fails to allocate the memory needed
for the break down. The memory buffer may be needed in device resolution
which may be huge.

Solution:
1) Break large bitmap into bands.
2) Implement your own TrasnparentBlt for printing path.
3) Change to use raster operation. But this may not work on Postscript
printers.

--
Feng Yuan (www.fengyuan.com)
This posting is provided "AS IS" with no warranties, and confers no rights.


Relevant Pages

  • Re: Grphics: How to draw an image transparent
    ... shows how to draw an image with transparency using the ColorMatrix ... Answer those GDI+ questions with the GDI+ FAQ ...
    (microsoft.public.dotnet.languages.csharp)
  • Re: LinearGradient Color in Window Forms (VB.NET) and Transparency
    ... This is a known problem with the Windows Forms transparency model. ... GDI+ FAQ for details on how to create truly transparent controls. ... the Background color of the form to be drawn smoothly under the labels. ...
    (microsoft.public.dotnet.framework.drawing)
  • Re: Alpha in ARGB
    ... The alpha channel is a measure of transparency. ... The colour depth of an ARGB image in GDI+ is 32 bits, 8 each for red, green ... GDI+ images consider 0 as fully transparent and 255 as fully opaque. ...
    (microsoft.public.dotnet.framework.windowsforms)
  • Re: TransparencyKey is not working when using background images
    ... Answer those GDI+ questions with the GDI+ FAQ ... > I created a windows form with a certain image with a white area in order ... > When I changed the are color to black and changed the Transparency Key to ...
    (microsoft.public.dotnet.framework.windowsforms)