no. to print a second page, you set e.hasmorepages to true at the end of the PrintDocument_PrintPage event. this causes the PrintDocument_PrintPage event to run again after exiting. so for your second page your coordinates start at 0 again.

obviously you need to setup some method for checking which page you're currently printing (within the PrintDocument_PrintPage event) + print the correct lines + text for that page