R – How to process an image in .NET for a full-page print with a quality like Windows Photo Gallery does it

image processingprintdocumentprintingwindowsphotogallery

I'm writing a printing routing in C#, using the .NET PrintDocument class, handling the OnPrintPage event.

I've managed to maximize the margins and print the Image in landscape mode, but it simply does not look as good as when I print the same image file from Windows Photo Gallery (formerly Windows Picture and Fax Viewer), the default image preview program in Windows Vista.

I noticed an option there for selecting "Sharpen Image for Printing", but what does that do?

I've thought about printing copies of the image from Windows Photo Gallery first, then sending the sheets through the printer a second time to print the custom overlays I need, but it's hard to make it line up every time, since the printer sucks the sheet in without the kind of precision I need… so I really need to do ALL the drawing commands within C#, including the image.

Does anyone know how to perform pre-processing on the bitmap so that it prints as nicely as Windows Photo Gallery does it? Are there any simple print drivers that can intercept Photo Gallery printing output as a standard image file (bmp, png, etc.) that can be read by the .NET Image class? I'm all for creativity here.

Best Answer

Paint.Net uses the Windows Picture and Fax Viewer for its printing and it was previously open source.

A quick Google for "Paint.Net source" seems to turn it up, albeit in earlier incarnations before they closed it again. I'd look at their source and see how they invoke the dialog

Related Topic