目前我正在开发一个桌面应用程序,我需要从本地存储(桌面)打印图像(png文件)。
这很简单,当我按下按钮时,它将发送图像进行打印。看我的函数,它不工作。(对于校样,我用PDF打印机打印了一张图像,但当我打开图像的pdf时,PDF是空的)。我从工具箱中添加了一个PrintDocument1。
Imports System.Drawing
Imports System.Drawing.Printing
Imports System.Windows.Forms
Public Class Certificate
Private streamToPrint As StreamReader
Private ReadOnly pd As New PrintDocument()
Private Sub PrintCertificateButton_Click(sender As Object, e As EventArgs) Handles PrintCertificateButton.Click
Try
streamToPrint = New StreamReader("C:\Users\m.cerna\Desktop\screenshot.png")
Try
pd.Print()
Finally
streamToPrint.Close()
End Try
Catch ex As Exception
MessageBox.Show("An error has occurred trying to print" & vbCrLf & "Error code: ", ex.Message)
End Try
End Sub
End Class发布于 2020-06-30 01:53:51
我解决了这个问题!我改变了我的函数,我使用:
AddHandler PrintDocument1.PrintPage,AddressOf Me.PrintImage
我分享我的新函数:)我在:http://vbcity.com/forums/t/25494.aspx上找到了它
Private Sub PrintCertificateButton_Click(sender As Object, e As EventArgs) Handles PrintCertificateButton.Click
Try
AddHandler PrintDocument1.PrintPage, AddressOf Me.PrintImage
PrintDocument1.Print()
Catch ex As Exception
MsgBox(ex, MsgBoxStyle.Critical, "Error during Print")
End Try
End Sub
Private Sub PrintImage(ByVal sender As Object, ByVal ppea As PrintPageEventArgs)
ppea.Graphics.DrawImage(Image.FromFile("C:\Users\m.cerna\Desktop\screenshot.png"), ppea.Graphics.VisibleClipBounds)
ppea.HasMorePages = False
End Subhttps://stackoverflow.com/questions/62643656
复制相似问题