VB.net - 打印图片框

时间:2017-10-20 10:01:44

标签: vb.net printing picturebox

所以我在一个图片框中画了一幅画。我在BMP中绘制然后使用以下代码将BMP加载到图片框中:

   PcbNetwerk.BackgroundImage = bmpNO

然后我尝试使用以下代码进行打印:

Dim WithEvents PrintDoc As New PrintDocument()

Private Sub PrintDocument1_PrintPage(ByVal sender As System.Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles PrintDoc.PrintPage

    e.Graphics.DrawImage(PcbNetwerk.Image, 0, 0)

End Sub

Private Sub BtnPrintNetwerk_Click(sender As Object, e As EventArgs) Handles BtnPrintNetwerk.Click

    If PrintDialog1.ShowDialog = DialogResult.OK Then
        PrintDocument1.Print()
    End If

End Sub

但它只会导致空白打印。另外,当我选择纸质打印机时,我最终只得到一个空的PDF文件。我现在一直在寻找一个解决方案,但是我找到的所有内容都会返回到相同类型的代码,我得到相同的结果(空白页面,在某些情况下我的程序甚至会崩溃)。我要打印的尺寸是A3横向格式。

1 个答案:

答案 0 :(得分:1)

所以picturebox1.image导致了一个empy文件。解决我创建的这个问题:

Public Netwerkoverzicht As Image

在我的公共类中。

然后我将我在其中一个sub中生成的bmp文件保存到我公开制作的图像中,并使用以下代码将NetckNetwerk.image替换为Netwerkwerkoverzicht

Dim WithEvents PrintDoc As New PrintDocument() 

Private Sub PrintDocument1_PrintPage(ByVal sender As System.Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles PrintDoc.PrintPage

e.Graphics.DrawImage(Netwerkoverzicht, 0, 0)

End Sub 
相关问题