Advertisement

11.21.2007 at 11:40AM PST, ID: 22976312
[x]
Attachment Details

printpage event apparently not firing

Asked by zane_o in Microsoft Visual Basic.Net, .NET Framework 2.0

Tags: printpage

I am trying to programatically print a code generated image.  The graphics is populated and I can save the .bmp to disk and it is correct.  However, when I send it to the printer, I get a blank page.  Apparently this is occurning because the printpage event is not firing.
I say that the event is not firing because when I place        
objBitmap.Save("c:\testing.bmp")
in the Sub pd_PrintPage it does not happen.Start Free Trial
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
Private objBitmap As New Bitmap(765, 800)
 
    Private Sub butPrint_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles butPrint.Click
        Try
            Dim objGraphics As Graphics
            Dim objFont As New Font("Arial", 12, FontStyle.Regular)
            objGraphics = Graphics.FromImage(objBitmap)
            objGraphics.DrawImage(objBitmap, 0, 0)
            objGraphics.DrawString(str1.ToString, objFont, Brushes.Black, 50, 50)
            objGraphics.DrawString(str2.ToString, objFont, Brushes.Black, 90, 100)
            objGraphics.DrawString(str3.ToString, objFont, Brushes.Black, 90, 240)
            Dim objPoint As Drawing.Point
            objPoint.X = "90"
            objPoint.Y = "200"
            objGraphics.DrawImageUnscaled(image1, objPoint)
            objGraphics.Save()
            Dim objDoc As New PrintDocument
            objDoc.PrinterSettings.PrinterName = prnName
            AddHandler objDoc.PrintPage, AddressOf Me.pd_PrintPage
            objDoc.Print()
            lblStatus.Text = "Printing Complete"
        Catch ex As Exception
            lblStatus.Text = ex.Message
        End Try
 
    End Sub
 
    Private Sub pd_PrintPage(ByVal sender As Object, ByVal ev As PrintPageEventArgs) _
        Handles objDoc.PrintPage
 
        ' Draw a picture.
        ev.Graphics.DrawImage(objBitmap, _
        ev.Graphics.VisibleClipBounds)
 
        ' Indicate that this is the last page to print.
        ev.HasMorePages = False
    End Sub
[+][-]11.21.2007 at 11:47AM PST, ID: 20330503

View this solution now by starting your 7-day free trial. Setting up your free trial is quick, easy, and secure. We will return you to this solution, unlocked, when you're done.

 

About this solution

Zones: Microsoft Visual Basic.Net, .NET Framework 2.0
Tags: printpage
Sign Up Now!
Solution Provided By: PaulHews
Participating Experts: 1
Solution Grade: A
 
 
[+][-]11.21.2007 at 12:25PM PST, ID: 20330727

At Experts Exchange, members can ask their questions to thousands of technology professionals, also known as Experts. Experts compete and collaborate to answer those questions by leaving comments like this one.

Start your 7-day free trial to view this Expert Comment or ask the Experts your question.

 
[+][-]11.21.2007 at 01:48PM PST, ID: 20331231

Often, when Experts are collaborating with members who have asked questions, they will request additional information about the problem. Askers respond with an author comment like this one.

Start your 7-day free trial to view this Author Comment or ask the Experts your question.

 
[+][-]11.21.2007 at 02:12PM PST, ID: 20331384

Often, when Experts are collaborating with members who have asked questions, they will request additional information about the problem. Askers respond with an author comment like this one.

Start your 7-day free trial to view this Author Comment or ask the Experts your question.

 
 
Loading Advertisement...
20080716-EE-VQP-32 / EE_QW_2_20070628