Printer driver problem abt. StretchBlt and output

Hello,

I’m developing a Printer Driver using Unidrv. When I debug the code in
WinDbg, I see that DrvStretchBlt is called which stretches the Image
bit-stream to the width and height specified in the sizlbitmap structure. I
print this image to a file instead of a port.
When I check the file I get only a part of the image, say like till 0x1000
where as the image size is 0x1634. I don’t know why is this happening.
Also, if I have to change the stretching factor, then how do I do it ? Or in
which function should I do it ?

Adi


Bought a New Cellphone?
http://adfarm.mediaplex.com/ad/ck/4686-26272-10936-318?ck=Sell Sell your old
one for a Great Price in eBay!

adi bhapse wrote:

I’m developing a Printer Driver using Unidrv. When I debug the code in
WinDbg, I see that DrvStretchBlt is called which stretches the Image
bit-stream to the width and height specified in the sizlbitmap
structure. I print this image to a file instead of a port.
When I check the file I get only a part of the image, say like till
0x1000 where as the image size is 0x1634. I don’t know why is this
happening.

What, exactly, are you copying to the file? The source bitmap? Are you
actually doing the stretch operation? Perhaps you should post the exact
parameters passed to your DrvStretchBlt routine, along with what you
expected to find in the file, and what you actually found. There isn’t
enough information here to tell you what you are doing wrong.

Also, if I have to change the stretching factor, then how do I do it ?
Or in which function should I do it ?

I’m not sure what that means. You are handed a source rectangle and a
destination rectangle. It’s up to your driver to decide how to do the
stretch.


Tim Roberts, xxxxx@probo.com
Providenza & Boekelheide, Inc.