It's a really bad idea to try to control a printer directly, especially with CrystallReports. You should think in terms of a document, and always try to print the whole document. If a user wants to print just part of the document, that user can choose to do it at the level of the print dialog, by selecting a range of pages. But they will be pages, not graphic elements of the document.
Don't try to make things more complex, convoluted or entangled than they can be:
Keep it that way:
http://en.wikipedia.org/wiki/KISS_principle[
^].
Don't create
accidental complexity:
http://en.wikipedia.org/wiki/Accidental_complexity[
^].
Separate concerns:
http://en.wikipedia.org/wiki/Separation_of_concerns[
^].
—SA