Johannes Meixner
Regarding margins: The margin settings in CUPS are only relevant for plain ASCII text input. For PostScript input the magrins cannot be changed easily and in particular they cannot be changed reliable. What is easy is to set magrins so that the PostScript content is simply clipped outside but this is not what you want. What you want is that the whole PostScript content is moved on the page. For PostScript input you must set the magrings correctly in the application program which produces the PostScript. Alternatively you can use the "psutils" (e.g. pstops) to move the content on the pages. Be warned that after "psutils" has changed the PostScript some options (in particular duplex) may no longer work. (CUPS sets the option but the PostScript printer ignores it). In particular the "psutils" create non DSC conforming PostScript.
I have a printer which prints PostScript off center without a margin adjustment, and what I have been doing since SuSE switched to using cups is to modify the ppd for my printer like so: --- lp.ppd.~1~ 2003-12-23 10:26:19.000000000 -0500 +++ lp.ppd 2004-08-24 10:01:22.000000000 -0400 [snip] @@ -1234,6 +1231,12 @@ *FoomaticRIPOptionSetting TonerDensity=5: "SET DENSITY=5" *CloseUI: *TonerDensity +*OpenUI *Margins/Page Margins/Offsets: PickOne +*DefaultMargins: Custom +*Margins Default/Driver Default: "" +*Margins Custom/Custom (set with 'alignmargins'): "<>setpagedevice" +*CloseUI: *Margins + *CloseGroup: Adjustment [end quote] The margin adjustments I determined by printing out the align.ps that is included with ghostscript in: /usr/share/ghostscript/7.07/lib/align.ps And making the calculations it suggests. I have always wondered whether this is the proper way to align ghostscript on the latest versions of SuSE -- is there a better way?