2009-07-27 9 views
4

Gibt es eine einfache Möglichkeit, eine Postscript-Seite auf eine neue physische Seite zu zwingen, ohne eine leere Seite einzufügen?Duplex Postscript - Neue Seite erzwingen

z.B. Sagen, dass ich ein PS-Dokument mit 10 Postscript-Seiten, die in verschiedene Dokumentenbündel drucken muss:

1 - Physikalische Seite 1 Front Side

2 - Physikalische Seite 1 Rückseiten

3 - Physikalische Seite 2

4 - Physikalische Page 3 Front Side

5 - Physikalische Page 3 Rückseiten

6 - Physikalische Seite 4 Front Side

7 - Physikalische Page 5

8 - Physikalische Seite 6 Front Side

9 - Physikalische Page 7 Front Side

10 - Physikalische Page 7 Rückseiten

ich kann Stellen Sie die gesamte Datei auf Duplex und fügen Sie Dummy-Seiten nach den Seiten 3, 6, 7 und 8 ein, aber ich möchte das vermeiden, da unsere Drucker pro Impression und nicht pro Seite kosten.

Ich hoffe, es gibt eine einfache PS-Syntax, die "Force to Frontpage" entspricht.

Antwort

4

Versuchen Sie, Duplex auszuschalten und sofort wieder an der Stelle, an der Sie sonst eine leere Seite einfügen würden.

<< /Duplex false >> setpagedevice 
<< /Duplex true >> setpagedevice 

setpagedevice ruft implizit erasepage und initgraphics (es so verwendet nach den betreffenden showpage), aber die Postscript Language Reference Manual sagt:

Auf Geräteaktivierung, ein Duplex-Gerät immer die erste Seite druckt auf ein neues Blatt Medium; Bei Deaktivierung liefert es automatisch das letzte Medium, wenn es nur auf einer Seite gedruckt wurde.

Also, wenn das funktioniert, sollte es speichern showpage aber immer noch die Seiten korrekt auswerfen.

0

Dies ist vielleicht weit hergeholt, aber Sie können showpage Verhalten ändern und dann programmieren, was Sie wollen. Diese

% before the first -showpage- 

/pageCount 0 def 

% redefinition of 'showpage' 
/showpage 
{ 
    showpage 
    /pageCount pageCount 1 add def 

    % add page checking here, and whatever logic you want 
    % just call another showpage to create an empty one 
} 
bind def 
% 'bind' keeps old showpage unaltered, avoiding recursion 

ist eine Option, wenn Duplex-Deaktivierung nicht möglich ist, wie dreamlax hat in seiner Antwort gezeigt.