打印Windows窗体-眩光,但做得不是很好,字母在边缘处像素化。有谁知道提高最终质量的方法?System.Drawing.Printing.PrintDocumentDoc=newSystem.Drawing.Printing.PrintDocument();Doc.PrintPage+=newSystem.Drawing.Printing.PrintPageEventHandler(this.Doc_PrintPage123);Doc.DefaultPageSettings.Landscape=true;Doc.DefaultPageSettings.PrinterSettings.DefaultPageSettings.Landscape=true;Doc.DefaultPageSettings.PrinterSettings.Copies=2;Doc.PrinterSettings.Copies=2;文档打印();privatevoidDoc_PrintPage123(objectsender,System.Drawing.Printing.PrintPageEventArgs){Bitmapbitmap=newBitmap(AForm.Width,AForm.Height);AForm.DrawToBitmap(bitmap,newRectangle(0,0,bitmap.Width,bitmap.Height));e.Graphics.DrawImage(位图,0,0);}这个是正常的。打印机的分辨率比显示器低6倍。使用默认映射(1像素=0.01英寸),您将在打印机上获得与在屏幕上相同大小的位图。屏幕上的1个像素在打印机上变成6x6像素的斑点。是的,它看起来不太好。如果你把它画小6倍,你会得到清晰的图像。比邮票大一点。不要打印表格。通过使用e.Graphics来利用打印机分辨率。当然,工作量很大,像水晶报表这样的报表生成器很受欢迎。表单将以其显示的分辨率呈现为位图。模糊和像素化是由于您在打印时调整大小的低分辨率图像造成的。没有什么好的方法可以提高质量。您可以尝试调整图像大小并应用某种平滑模式,正如MamtaDalal所建议的那样,但这只会有助于像素化。如果你真的需要更高的质量,你必须使用其他机制来打印数据。使用某种报表设计器可能是最简单的方法。试试这个:e.Graphics.SmoothingMode=SmoothingMode.HighQuality;以上就是C#学习教程:打印WindowsForms分享的所有内容。如果对大家有用,需要进一步了解C#学习教程,希望大家多加关注——本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
