views:

44

answers:

1

I'm writing an application that does a lot of batch printing, but each print is taking several seconds to complete. I've tracked it down to the getter of property PageSettings.PrintableArea in System.Drawing.Printing - each call to that takes over one seconds to finish!

Can anyone shed any light onto why this is, and also how it can be improved?

+1  A: 

If you look at the code for PrintableArea (in Reflector) it does a lot of native calls out to the printer driver.

From my experience when printing from .Net is slow it has to do with the printer driver. Set up a dummy printer with a generic printerdriver, or with the HP4 driver, and see if that's quicker.

If so, try a different version of the printer driver you are using today.

Mikael Svenson