2015-10-06 148 views
-2

我在Windows窗体上包含用于显示信息和2个PictureBox控件的标签。其中一个用于拍摄照片的公司徽标&。当我在打印机上打印它们或只是以PDF格式保存时,两张图像看起来都很模糊。我想提高图像的质量。所以即使变焦后它们也会显得清晰。 任何建议。提高PictureBox C中图像的清晰度#

+0

您的图片可能太小了。您可能需要两个版本,一个用于ca 72-102 dpi屏幕显示,另一个用于150-600 dpi打印。 – TaW

+0

任何人都可以告诉我在C#win表单中显示和打印公司徽标的最佳方式是什么?容器可能是任何东西。 目前我正在使用矢量格式图像(.svg,.eps等) –

回答

0

您可以设置此图形对象property

// g是Graphics的类型。

g.InterpolationMode = InterpolationMode.High; 
+0

尝试使用InterpolationMode,但没有效果。例如 - e.Graphics.InterpolationMode = InterpolationMode.High; –

+0

任何人都可以告诉我什么是最好的方式来显示和打印公司标志在C#赢得形式?容器可能是任何东西。 目前我正在使用矢量格式图像(.svg,.eps等) –

0

我不知道你正在使用的打印技术,其中,但如果你正在使用的打印形式,它不利于体面的图片或文字。因此,当您将form/PictureBox发送到打印对象时,它将失去质量。解决方案是使用PrintDocument。

分享您的代码获得更多帮助。

+0

我正在使用PrintDocument PrintDocument doc = new PrintDocument(); doc.PrintPage + = this.Doc_PrintPage; doc.Print(); private void Doc_PrintPage(object sender,PrintPageEventArgs e) { \t float x = 209,y = 8; \t Bitmap bmp = new Bitmap(this.panel2.Width,this.panel2.Height); \t this.panel2.DrawToBitmap(bmp,new Rectangle(0,0,this.panel2.Width + 2,this.panel2.Height + 2)); \t e.Graphics.DrawImage((Image)bmp,x,y); } –

+0

还有什么可以做的,我缺少代码,请建议..... –

0

您的打印机比您的显示器具有更好的分辨率。该位图不起作用。您将不得不直接在PrintPageEventArgs的e.Graphics上重新创建打印项目。

其他解决方法是在他的文章中解释的技术。

http://www.dahuatu.com/3vy2K5z5mr.html