VB.NET文本框在转换为位图图像时出现模糊

时间:2017-12-20 20:37:41

标签: vb.net pdf bitmap pdfsharp

我的应用程序充当文本模板,文本框供用户填写。一旦完成,他们就可以使用PDFsharp将文档“打印”为PDF。这是通过使用以下代码将文本框所在的面板转换为位图图像来完成的;

                ConditionReportConfig.PG1.Panel2.DrawToBitmap(Bitmap, New Rectangle(0, 0, Bitmap.Width, Bitmap.Height))
                frm_MsgPrint.lbl_Page.Text = "Page: 1" : frm_MsgPrint.lbl_Page.Refresh()
                frm_MsgPrint.PictureBox1.Image = Bitmap
                frm_MsgPrint.PictureBox1.Refresh()
                BXImage = Bitmap
                GFX.ScaleTransform(0.82)
                GFX.DrawImage(BXImage, 25, 0)
                GFX.Dispose()
                CDR1 = Nothing

不幸的是,当PDF弹出图像时,整个图像,文本框中的文本更加模糊。它们并不模糊到你无法阅读的程度,但它们确实让你的文字阅读文字非常紧张。

我尝试过添加各种设置,例如;

                Dim Bitmap2 = New Bitmap(894, 1367)
                Using G As Graphics = Graphics.FromImage(Bitmap2)
                    G.InterpolationMode = Drawing2D.InterpolationMode.Bicubic
                    G.DrawImage(Bitmap, 0, 0, 120, 150)
                End Using

我甚至尝试更改字体,大小,甚至将位图保存为TIFF,PNG,它仍然显得模糊。我会更改打印方法,但是要打印面板的整个要点。不仅如此,面板还包含图像,因此我不能只在PDF上打印文本。

编辑: 我已经尝试过更改一些插值设置,它稍微清晰一点,但仍然会对你的眼睛造成压力。 下面是Bitmap图像的片段作为TIFF。注意文本框中的文本是如何“模糊”的,但旁边的垂直文本是完美的。难道真的没办法让文本框内容像垂直文本一样清晰吗?

模糊图像,水晶般清晰的垂直文字:

Blurry image with crystal clear vertical text

1 个答案:

答案 0 :(得分:0)

从您的位图创建XImage并设置

image.Interpolate = false;

该图片。这是Adobe Reader不要使图像平滑的提示。

同时检查ClearType在将图像添加到PDF之前不会使图像模糊。