Blank pages when printing Mozilla PostScript file with 2 pages/sheet on postscript printer

Helge Blischke H.Blischke at srz-berlin.de
Fri Oct 22 06:54:51 PDT 2004


The number-up processing is done by the pstops filter. Please post
an URL to your captured file so somebody (maybe me) can look into it.

Helge

Hartvig Ekner wrote:
> 
> Hi,
> 
> I runnung SuSE 9.1 (2.6.5 kernel) with the CUPS version bundled with SuSE:
> 
> [hje at hje-6 hje]$ rpm -qa | grep cups
> cups-drivers-stp-1.1.20-60
> cups-drivers-1.1.20-66.1
> cups-1.1.20-108.8
> cups-client-1.1.20-108.8
> cups-libs-1.1.20-108.8
> 
> against two printers, one Canon iR3300, one HP Color LaserJet 4600, both network printers accessed via LPD.
> Both are setup as generic Postscript printers. From the ir3300.ppd file in /etc/cpus/ppd:
> 
> *FormatVersion: "4.3"
> *FileVersion:   "1.1"
> *LanguageVersion: English
> *LanguageEncoding: ISOLatin1
> *PCFileName:    "POSTSCRI.PPD"
> *Manufacturer:  "Generic"
> *Product:       "(PostScript Printer)"
> *cupsVersion:   1.0
> *cupsManualCopies: True
> *cupsModelNumber:  2
> *cupsFilter:    "application/vnd.cups-postscript 0 foomatic-rip"
> *%pprRIP:        foomatic-rip other
> *ModelName:     "Generic PostScript Printer"
> *ShortNickName: "Generic P.S. Printer Postscript"
> *NickName:      "Generic PostScript Printer Foomatic/Postscript (recommended)"
> *PSVersion:     "(3010.000) 550"
> *PSVersion:     "(3010.000) 651"
> *PSVersion:     "(3010.000) 652"
> *PSVersion:     "(3010.000) 653"
> *PSVersion:     "(3010.000) 704"
> *PSVersion:     "(3010.000) 705"
> *PSVersion:     "(3010.000) 800"
> *LanguageLevel: "3"
> *ColorDevice:   True
> *DefaultColorSpace: RGB
> *FileSystem:    False
> *Throughput:    "1"
> *LandscapeOrientation: Plus90
> *TTRasterizer:  Type42
> 
> Everything works fine, except printing Mozilla output with the two-pages per page option.
> I have grabbed the Mozilla output (print to file), and I can ghostview it and print it out to
> both printers with one page per page without problems. If I print it out with two pages/page, I get
> blank output. Postscript output generated from other programs prints fine with two pages/page.
> 
> I have tried to process exactly the same failing Mozilla postscript file with "mpage -2", and then
> print it through CUPS with one-page/page setting in CUPS, and then it does print (with 2 pages/page).
> This makes me believe that the CUPS filter dealing with multiple pages/page scaling has a problem
> with Mozilla postscript input files.
> 
> To attempt to debug this, I have turned on the debug option in cups.conf and performed two
> prints - one with 1 page/page (prints fine) and one with 2 pages/page (blank page output). In both
> cases it runs the following filters: pswrite, pstops, foomatic-rip and backend/lpr. Which one is
> BTW handling the multiple pages/page output? I will spare the group of the entire log files for both
> runs, but the place where I can see a difference is here:
> 
> D [21/Oct/2004:16:25:20 +0200] [Job 13] Option: PreFilter=No --> Setting option
> D [21/Oct/2004:16:25:20 +0200] [Job 13] Found: %% FoomaticRIPOptionSetting: PreFilter=No
> D [21/Oct/2004:16:25:20 +0200] [Job 13] Option: PreFilter=No --> Setting option
> D [21/Oct/2004:16:25:20 +0200] [Job 13] Found: %%BeginFeature: *Resolution default
> D [21/Oct/2004:16:25:20 +0200] [Job 13] Option: Resolution=default --> Setting option
> D [21/Oct/2004:16:25:20 +0200] [Job 13] Found: %% FoomaticRIPOptionSetting: Resolution=default
> D [21/Oct/2004:16:25:20 +0200] [Job 13] Option: Resolution=default --> Setting option
> D [21/Oct/2004:16:25:20 +0200] [Job 13] Found: %%BeginFeature: *Duplex Notcapable
> D [21/Oct/2004:16:25:20 +0200] [Job 13] Option: Duplex=Notcapable --> Setting option
> D [21/Oct/2004:16:25:20 +0200] [Job 13] Found: %% FoomaticRIPOptionSetting: Duplex=Notcapable
> D [21/Oct/2004:16:25:20 +0200] [Job 13] Option: Duplex=Notcapable --> Setting option
> D [21/Oct/2004:16:25:20 +0200] [Job 13] Found: %%EndSetup
> D [21/Oct/2004:16:25:20 +0200] [Job 13]
> D [21/Oct/2004:16:25:20 +0200] [Job 13] -----------
> D [21/Oct/2004:16:25:20 +0200] [Job 13] New page:  1 1
> D [21/Oct/2004:16:25:20 +0200] [Job 13] Inserting option code into "PageSetup" section.
> D [21/Oct/2004:16:25:20 +0200] [Job 13] No page header or page header not DSC-conforming
> D [21/Oct/2004:16:25:20 +0200] [Job 13]
> D [21/Oct/2004:16:25:20 +0200] [Job 13] Found: %%BeginPageSetup
> D [21/Oct/2004:16:25:20 +0200] [Job 13] Found: %%EndPageSetup
> D [21/Oct/2004:16:25:20 +0200] [Job 13] End of page header
> D [21/Oct/2004:16:25:20 +0200] [Job 13] Stopping search for page header options
> D [21/Oct/2004:16:25:20 +0200] [Job 13] Found:
> D [21/Oct/2004:16:25:20 +0200] [Job 13] 0003FE000003FE000003FE000003FE000003FE000003FE000003FE000003FE00
> D [21/Oct/2004:16:25:20 +0200] [Job 13] --> Output goes directly to the renderer now.
> D [21/Oct/2004:16:25:20 +0200] [Job 13]
> D [21/Oct/2004:16:25:20 +0200] [Job 13]
> D [21/Oct/2004:16:25:20 +0200] [Job 13] Starting renderer
> D [21/Oct/2004:16:25:20 +0200] [Job 13] renderer PID kid4=7775
> D [21/Oct/2004:16:25:20 +0200] [Job 13] JCL: <job data>
> D [21/Oct/2004:16:25:20 +0200] [Job 13]
> D [21/Oct/2004:16:25:20 +0200] [Job 13] renderer command: level=0; printf "%%!\n%%%% %%%%\n"; if (( $level > 0 )); then if (( $level < 99 )$D [21/Oct/2004:16:25:20 +0200] [Job 13] 0 %%PageTrailer
> D [21/Oct/2004:16:25:20 +0200] [Job 13] 0 %%Trailer
> D [21/Oct/2004:16:25:20 +0200] [Job 13] Saw Trailer!
> D [21/Oct/2004:16:25:20 +0200] [Job 13] Saw EOF!
> D [21/Oct/2004:16:25:20 +0200] [Job 13]
> D [21/Oct/2004:16:25:20 +0200] [Job 13] Closing renderer
> D [21/Oct/2004:16:25:20 +0200] [Job 13] tail process done writing data to STDOUT
> D [21/Oct/2004:16:25:20 +0200] [Job 13] KID4 finished
> D [21/Oct/2004:16:25:20 +0200] [Job 13] KID3 exited with status 0
> 
> The log above was from the successful print (1 page/page). The same location in the failing print log
> looks like this:
> 
> D [21/Oct/2004:16:19:13 +0200] [Job 12] Found: %% FoomaticRIPOptionSetting: Resolution=default
> D [21/Oct/2004:16:19:13 +0200] [Job 12] Option: Resolution=default --> Setting option
> D [21/Oct/2004:16:19:13 +0200] [Job 12] Found: %%BeginFeature: *Duplex Notcapable
> D [21/Oct/2004:16:19:13 +0200] [Job 12] Option: Duplex=Notcapable --> Setting option
> D [21/Oct/2004:16:19:13 +0200] [Job 12] Found: %% FoomaticRIPOptionSetting: Duplex=Notcapable
> D [21/Oct/2004:16:19:13 +0200] [Job 12] Option: Duplex=Notcapable --> Setting option
> D [21/Oct/2004:16:19:13 +0200] [Job 12] Found: %%EndSetup
> D [21/Oct/2004:16:19:13 +0200] [Job 12]
> D [21/Oct/2004:16:19:13 +0200] [Job 12] -----------
> D [21/Oct/2004:16:19:13 +0200] [Job 12] New page:  1 1
> D [21/Oct/2004:16:19:13 +0200] [Job 12] Inserting option code into "PageSetup" section.
> D [21/Oct/2004:16:19:13 +0200] [Job 12] No page header or page header not DSC-conforming
> D [21/Oct/2004:16:19:13 +0200] [Job 12]
> D [21/Oct/2004:16:19:13 +0200] [Job 12] Found: %%BeginPageSetup
> D [21/Oct/2004:16:19:13 +0200] [Job 12] Found: %%EndPageSetup
> D [21/Oct/2004:16:19:13 +0200] [Job 12] End of page header
> D [21/Oct/2004:16:19:13 +0200] [Job 12] Stopping search for page header options
> D [21/Oct/2004:16:19:13 +0200] [Job 12] Found:
> D [21/Oct/2004:16:19:13 +0200] [Job 12] $X
> D [21/Oct/2004:16:19:13 +0200] [Job 12] --> Output goes directly to the renderer now.
> D [21/Oct/2004:16:19:13 +0200] [Job 12]
> D [21/Oct/2004:16:19:13 +0200] [Job 12]
> D [21/Oct/2004:16:19:13 +0200] [Job 12] Starting renderer
> D [21/Oct/2004:16:19:13 +0200] [Job 12] JCL: <job data>
> D [21/Oct/2004:16:19:13 +0200] [Job 12]
> D [21/Oct/2004:16:19:13 +0200] [Job 12] renderer PID kid4=7757
> D [21/Oct/2004:16:19:13 +0200] [Job 12] renderer command: level=0; printf "%%!\n%%%% %%%%\n"; if (( $level > 0 )); then if (( $level < 99 )$D [21/Oct/2004:16:19:13 +0200] [Job 12] 0 %%PageTrailer
> D [21/Oct/2004:16:19:13 +0200] [Job 12] 0 %%Trailer
> D [21/Oct/2004:16:19:13 +0200] [Job 12] Saw Trailer!
> D [21/Oct/2004:16:19:13 +0200] [Job 12] pw = 547.0, pl = 770.0
> D [21/Oct/2004:16:19:13 +0200] [Job 12] PageLeft = 24.0, PageRight = 571.0
> D [21/Oct/2004:16:19:13 +0200] [Job 12] PageTop = 818.0, PageBottom = 48.0
> D [21/Oct/2004:16:19:13 +0200] [Job 12] PageWidth = 595.0, PageLength = 842.0
> D [21/Oct/2004:16:19:13 +0200] [Job 12] Saw EOF!
> D [21/Oct/2004:16:19:13 +0200] [Job 12]
> D [21/Oct/2004:16:19:13 +0200] [Job 12] Closing renderer
> D [21/Oct/2004:16:19:13 +0200] [Job 12] tail process done writing data to STDOUT
> D [21/Oct/2004:16:19:13 +0200] [Job 12] KID4 finished
> D [21/Oct/2004:16:19:13 +0200] [Job 12] KID3 exited with status 0
> 
> Note the "Found: $X" - is this significant? Everything else looks similar in both logs.
> 
> Which filter is doing the scaling (pswrite, pstops or foomatic-rip?)
> Can I somehow capture the output after the scaling filter or run the filter manually
> to verify the contents with ghostview?
> 
> Any input on how I can debug this further would be appreciated!
> 
> Best regards,
> 
> Hartvig

-- 
Helge Blischke
Softwareentwicklung
SRZ Berlin | Firmengruppe besscom
http://www.srz.de
tel: +49 30 75301-360


H.Blischke at srz-berlin.de
H.Blischke at srz-berlin.com
H.Blischke at acm.org




More information about the cups mailing list