[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


           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