Matching Printer "Page Break" in PictureBox

I manually produce a report in my program using either Printer.Print or MyPictureBox.Print statements depending on the user's choice of whether he/she wants to print or preview the report. I would like to be able to produce pages in the picturebox that exactly match what is printed on the printer, in other words the same number of lines of print in both. I can't simply count the lines that go to the printer and use that in the picturebox processing because I don't do the printer logic unless the user requests Print. I only use one size font so I assumed I could come up with code that would work by useing the relationship between the Printer.ScaleHeight and the factor I get when I divide Printer.TextHeight("test") by MyPictureBox.Textheight("test") but I couldn't get it to work. Can someone help?
LVL 53
Martin LissOlder than dirtAsked:
Who is Participating?

Improve company productivity with a Business Account.Sign Up

x
 
mcriderConnect With a Mentor Commented:
Try something like this:

Picture1.Height = Printer.Height
Picture1.Width = Printer.Width
Set Picture1.Font = Printer.Font

Then as you're printing look at the CurrentY Property.  If it's going to print in the footer margin you specify, you need to move to a new page...


Cheers!®©
0
 
Martin LissOlder than dirtAuthor Commented:
Comment accepted as answer
0
 
Martin LissOlder than dirtAuthor Commented:
It's not the whole answer, but it's the only one I've gotten.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.