diff options
author | Philipp Lohmann <pl@openoffice.org> | 2009-09-10 14:34:56 +0000 |
---|---|---|
committer | Philipp Lohmann <pl@openoffice.org> | 2009-09-10 14:34:56 +0000 |
commit | 25f26445ab686fbbb064e620ebee39950a7fdc43 (patch) | |
tree | f1aa1957bb657f1d9aa9efd9b357bd2309340056 /vcl/source/gdi/print3.cxx | |
parent | a2224ea9eb1e05f1317f6ea3529f1653d00bd2b9 (diff) |
#i104932# take page offset into account in N-Up printing
Diffstat (limited to 'vcl/source/gdi/print3.cxx')
-rw-r--r-- | vcl/source/gdi/print3.cxx | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/vcl/source/gdi/print3.cxx b/vcl/source/gdi/print3.cxx index 56da675f0030..c08abea15c7f 100644 --- a/vcl/source/gdi/print3.cxx +++ b/vcl/source/gdi/print3.cxx @@ -776,7 +776,8 @@ PrinterController::PageSize PrinterController::getFilteredPageFile( int i_nFilte mpImplData->mbLastPage = sal_False; Size aPaperSize( mpImplData->getRealPaperSize( mpImplData->maMultiPage.aPaperSize ) ); - // multi page area: paper size minus margins + one time spacing right and down + + // multi page area: page size minus margins + one time spacing right and down // the added spacing is so each subpage can be calculated including its spacing Size aMPArea( aPaperSize ); aMPArea.Width() -= rMPS.nLeftMargin + rMPS.nRightMargin; @@ -858,10 +859,11 @@ PrinterController::PageSize PrinterController::getFilteredPageFile( int i_nFilte } o_rMtf.WindStart(); + // subsequent getPageFile calls have changed the paper, reset it to current value mpImplData->mpPrinter->SetMapMode( MapMode( MAP_100TH_MM ) ); mpImplData->mpPrinter->SetPaperSizeUser( aPaperSize, ! mpImplData->isFixedPageSize() ); - return PrinterController::PageSize( aPaperSize ); + return PrinterController::PageSize( aPaperSize, true ); } int PrinterController::getFilteredPageCount() |