When I draw (using DrawString() and other Draw...() methods) directly
to the PrintDocument using the PrintDocument's PrintPageEventArgs e,
the print-out comes out nice and sharp. But when I direct my graphics
to memory first then using PrintDocument's PrintPageEventArgs
e.DrawImage(), I get the image printed with the right scale and
everything, but the characters and everything else is blurry, out of
focus and just generally very bad.
I adjust the units of the DrawString() and other Draw...() methods
when I paint to memory because, I believe, the smallest printer unit
is 1/100th of an inch while the memory's is 1/300th of an inch or
thereabouts. But that is neither here or there, I just wanted to
mention it to say that I am already aware of the difference in units.
At any rate, the picture is in the right size but the image is so darn
fuzzy. I tried painting the memory image to a form first before
sending it to the printer and it paints fuzzy on the form too.
I played with SmoothingMode, TextContrast and TextRenderingHint and
others, to no avail.
I searched for solutions on microsoft's site, also to no avail.
Does anyone know why I am getting such fuzzy images when I paint to
memory first?. Am I missing a trick or something? Your help is
greatly appreciated.
jake