Вот. Заглянул сейчас в доку по setOrientation():
On Windows, this option can be changed while printing and will take effect from the next call to newPage().
On Mac OS X, changing the orientation during a print job has no effect.
Т.е. действительно в общем случае метод не работает во время набивки printing job. Видимо самым правильным будет, при обработке страницы со сменённой ориентацией, перезапускать job и промежутке менять ориентацию.