I have no trouble changing between Landscape and Portriat modes before a print job. What I can not do is switch on a page by page basis without calling ENDDOC. I have tried every trick I can think of. I use MM_ANSIOTROPIC mapping modes and call the API directly for printing. No MFC classes are used except for CPrintDialog to get a printer display context.