🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.lang.postscript
Article #4251

Re: copypage on duplex printers

#4251
From: David Gelphman
Date: Sun, 16 Dec 1990 09:14
85 lines
4580 bytes
In article <1736@chinacat.Unicom.COM> woody@chinacat.Unicom.COM (Woody Baker @ Eagle Signal) writes:

>On a single page printer, you can image a page, do a copypage, and then
>go back and erase a portion of the page, change the data and do another
>copypage etc.  This makes for very fast generation of repetitive things
>like flyers or newsletters that are mailed to diffrent individuals.
>Unfortunatly, the duplex implementation does (currently) not work in
>an analogous manner.  If you print a double sided newsletter, say, and
>then want to change some data on one of the pages, you have to re-image
>the entire document.  What should happen, is that you should be able to
>make either the front or back side the currently active side, so that
>you could select side 1, change data just like you can on a single
>sided page, and then using copypage, kick another copy of the page
>out.  As more and more duplexing printers (I know of on that is
>currently in the works) come out, unless this is changed, they will
>be crippled, and virtually useless.

    To the contrary, I believe that the current implementation of
copypage on duplex devices is the one most useful for almost every use
of duplex printing. In addition it is exactly as it should be in order 
to follow the normal semantics of the PostScript language. An example
is probably appropriate.
   Consider a page description which calls showpage 4 times and is printed
on a simplex printer. I get four sheets of paper, each of which has marks
on one side of the paper:

sheet number	1	2	3	4
page image	A	B	C	D

Now imagine printing the same document on a printer which is printing
on both sides of the paper:

sheet number    1-side1	1-side2	2-side1	2-side2
page image      A       B       C       D

This is what one would expect when printing duplex and indeed that
is what you get on a PostScript printer which supports duplex printing.

Now what happens if you use 'copypage'. The effect of 'copypage'
is to allow marks on a given 'page' to be copied to the next page
instead of starting with no marks on the next page. Here the meaning
of the word 'page' is exactly as it is in the previous case, e.g.
it means the next page image which may be on a different physical
sheet (simplex printing) or the same sheet (duplex printing). Here is what
I get if instead of calling showpage in the above example I call
copypage imaging each page.

On a simplex printer:

sheet number	1	2	3	4
page image      A       A'	A''	A'''

Where A' is a page image which contains all of A and whatever
marks I place before the next copypage. A'' is a page image
which contains all of A' and whatever marks I place before the
next copypage, and so on.

Now if I am printing to a duplex printer, I would hope that the results
are consistent with what I obtained in the example above. I would expect:

sheet number	1-side1	1-side2	2-side1	2-side2
page image	A	A'	A''	A'''

Indeed that is what I get on a duplexing PostScript printer when using
copypage as described above.

I believe this is the behavior that most PostScript programmers expect and
is appropriate given the semantics of the PostScript language. It may not
allow copypage to achieve some special purposes; however, I believe it
is the correct implementation.

General comment: In many cases, copypage is used by PostScript programmers
to enable forms printing at high speed. One of the problems with copypage
is that it copies ALL of the graphics from the previous page image
which is typically NOT what a forms programmer wants. We have tried
to address this shortcoming with a new mechanism in PostScript level 2
which allows for 'forms' to be created and imaged with the benefit of
caching when possible. A form is similar to a font with one character
but it can contain color information and still be cached (unlike fonts).

I hope this clarifies things a bit.

David Gelphman
Adobe Systems Incorporated
Developer Technical Support
Technical Details
Message-ID: <9184@adobe.UUCP>
Path: arc1-ca.pugleaf.net!utzoo!censor!geac!torsqnt!news-server.csri.toronto.edu!cs.utexas.edu!usc!elroy.jpl.nasa.gov!decwrl!adobe!gelphman
References: <1019@quiddity.queensu.CA> <1734@chinacat.Unicom.COM> <1990Dec6.134809.213@panix.uucp> <1736@chinacat.Unicom.COM>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!censor!geac!torsqnt!news-server.csri.toronto.edu!cs.utexas.edu!usc!elroy.jpl.nasa.gov!decwrl!adobe!gelphman
From: gelphman@adobe.COM (David Gelphman)
Newsgroups: comp.lang.postscript
Subject: Re: copypage on duplex printers
Message-ID: <9184@adobe.UUCP>
Date: 16 Dec 90 09:14:31 GMT
References: <1019@quiddity.queensu.CA> <1734@chinacat.Unicom.COM> <1990Dec6.134809.213@panix.uucp> <1736@chinacat.Unicom.COM>
Reply-To: gelphman@adobe.UUCP (David Gelphman)
Organization: Adobe Systems Incorporated, Mountain View
Lines: 85