[gs-bugs] [Bug 690667] New: Changing PageSize during n-up
processing by BeginPage/EndPage generates wrong output
bugs.ghostscript.com-bugzilla-daemon at ghostscript.com
bugs.ghostscript.com-bugzilla-daemon at ghostscript.com
Wed Jul 29 07:21:01 PDT 2009
http://bugs.ghostscript.com/show_bug.cgi?id=690667
Summary: Changing PageSize during n-up processing by
BeginPage/EndPage generates wrong output
Product: Ghostscript
Version: HEAD
Platform: All
OS/Version: All
Status: NEW
Severity: normal
Priority: P4
Component: PS Interpreter
AssignedTo: support at artifex.com
ReportedBy: masaki.ushizaka at artifex.com
QAContact: gs-bugs at ghostscript.com
Changing PageSize with setpagedevice causes calling of EndPage procedure with reason code 2 (device
deactivation). Current Ghostscript seems to have a problem with this handling.
I created a PS job which first set A4 paper size, setup watermark and 4-up (2x2) BeginPage/EndPage
procedures. Then print 3 simple (sub)pages, after that changes paper size to Letter, and quit. This job
should create a A4 size output, but gs generated a Letter size output with garbage in it.
I confirmed this with r9906 trunk, on both WinXPPro SP3 + VS2008 and MacOSX 10.5.7 + Xcode 3.1.2.
I see three issues here.
1. Gs outputs a Letter size, where it should be a A4 size. And for a raster device, previous 3 subpages
rendered in A4 size seems just dumped into Letter size memory, making a garbage in image.
2. The forth calling of EndPage, which was caused by PageSize change, seems like executed after
changed paper size to Letter, where it should be done with A4 size. At least from raster output it looks
like so, but the currentpagedevice says PageSize is still A4. And, for this EndPage execution, the matrix
is initialized to device default one, where is should keep A4 (sub)page context.
3. For fifth calling of BeginPage and EndPage, which is a first call with Letter size device activation, the
operand (page count) is 3, where is should be 0.
Reproducing procedure comes in next comment.
------- You are receiving this mail because: -------
You are the QA contact for the bug, or are watching the QA contact.
More information about the gs-bugs
mailing list