[comp.lang.postscript] putting 'watermark' on each page?

jim@nature.berkeley.edu (07/03/89)

xxx

I am setting up a Macintosh instructional facility with Appleshare
file server and printer server software, a laser printer,
and no charge for using the facility.

I would like that each printed page to contain the following legend
printed in half-tone:

"For academic use only: CNR Computer Facility"

printed at the very bottom of each page, to discourage
students from using our Laserwriter as a substitute for
a Xerox machine.

How can we do this with the Apple print server software?

Jim Bradley, CNR Computer Facility, UC Berkeley

roy@phri.UUCP (Roy Smith) (07/03/89)

In <25965@agate.BERKELEY.EDU> jim@nature.berkeley.edu () writes:
> I would like that each printed page to contain the following legend
> printed in half-tone:
> "For academic use only: CNR Computer Facility"

	I'll let you fill in the details, but the basic idea is to redefine
showpage to print what you want in the corner and then call the real showpage.
Have this code run outside the normal job loop using the exitserver operator.
Download this code to your printer periodically (say, every 30 minutes).

	The problem with this is that people will eventually discover that if
they turn off the printer and reboot it, they will have, at least until the
next time the code is downloaded, the original showpage.  Once people learn
that, they will just power-cycle the printer whenever they don't want the
"watermark" to show up.
-- 
Roy Smith, Public Health Research Institute
455 First Avenue, New York, NY 10016
{allegra,philabs,cmcl2,rutgers,hombre}!phri!roy -or- roy@alanine.phri.nyu.edu
"The connector is the network"

afoiani@nmsu.EDU (Anthony Foiani) (07/03/89)

I am not sure it would work, but how about modifying your LaserPrep
files?  Supposedly, someone hacked at it to limit copies, pages/copy,
etc. 

It should be possible to modify the LaserPrep file to automatically
set your "watermark showpage" whenever the LaserPrep file is sent
(i.e. after every reboot).

I am not sure of the advisability of this measure, it is just a
thought/suggestion.  :)

Hope this helped,
--
tony foiani  (afoiani@nmsu.edu)         "And remember...don't lose your
             (mcsajf@nmsuvm1.bitnet)     head..." -The Kurgan, HIGHLANDER

jdu@cbnewsd.ATT.COM (john.d.unruh) (07/03/89)

Not being an expert on the Mac, I do have an idea that might get around this
problem.  I believe when the Mac tries to print to the laserwriter, it first
checks to see if the laserprep file has been downloaded.  If not, it will 
download the laserprep file.  If somehow the laserprep file could be fixed up
so that it printed the required legend on each page, then you would be OK as
long as you have control of the laserprep file.  This could be accomplished
by putting a hard disk on each Mac with the application and the laserprep file,
or putting it onto all of the application floppy disks.  Of course, if someone
learned how it was done, they could change the laserprep and then power cycle
the printer.  If that Mac were the next to print, then the "watermark" would
disappear.

I don't know how you would do this, but you might be able to use some other
machine as a print server on appletalk and connect the printer to it.  Then
all the printing would pass through that machine and you would have some more
control of what was in the printer.  You might be able to accomplish this with
a cheapie PC with an appletalk card and the printer on a serial port.  You might
also be able to do it with a Mac the same way.  

John Unruh

roy@phri.UUCP (Roy Smith) (07/03/89)

In <AFOIANI.89Jul2221759@dante.nmsu.EDU> afoiani@nmsu.EDU (Anthony Foiani):
> I am not sure it would work, but how about modifying your LaserPrep files?
> Supposedly, someone hacked at it to limit copies, pages/copy, etc. 

	I guess it all depends on how devious you expect your users to be,
and how much effort you expect them to put into getting around the
watermark.  I think there are programs which don't use LaserPrep.  One
could, for example, generate their own postscript and then use something
like SendPS to download it.
-- 
Roy Smith, Public Health Research Institute
455 First Avenue, New York, NY 10016
{allegra,philabs,cmcl2,rutgers,hombre}!phri!roy -or- roy@alanine.phri.nyu.edu
"The connector is the network"

wasilko@netcom.UUCP (Jeff Wasilko) (07/22/89)

I'm not really sure about the best way to do the implementation for this, but
here is some PostScript that will print something similar to what you need. I use this from within MS Word (formatted as PostScript style and placed in the 
header) to print messages such as DRAFT, CONFIDENTIAL etc.

Good luck with this.

Jeff Wasilko 
------------

Article 18124 (61 more) in comp.sys.mac:
From: mjohnson@Apple.COM (Mark B. Johnson)
Subject: Re: Postscript fragment needed
Message-ID: <31665@apple.Apple.COM>
Date: 25 May 89 22:41:17 GMT
References: <13222@dartvax.Dartmouth.EDU> <17431@usc.edu>
Organization: Apple Computer Inc, Cupertino, CA
Lines: 31
 
In article <17431@usc.edu> minkus@lesath.usc.edu (Bob Minkus) writes:
>In article <13222@dartvax.Dartmouth.EDU> jonathan@eleazar.dartmouth.edu (Jonath
an Altman) writes:
>>various bits of postscript in MSWord documents to do nice things
>>like borders around pages, etc.  One nice tip that was given was how
>>to print the word "draft" in a 5% gray on entire pages.  I saw the
>>tip on how to do this and said "that'd be neat" but didn't save the
>>postscript fragment.  Now I have a need to distribute a draft of a
 
This works nicely.  Put it as the first thing in a header which appears on
on every page.  Be sure to set the style to PostScript...
 
% fonts
/t/Times-BoldItalic findfont 96 scalefont def
 
% 15 0 {exch pop} setscreen
 
150 500 translate       % position on page
 
.9 setgray
2 0 moveto
t setfont (Draft) show
 
 
 
Mark B. Johnson                                            AppleLink: mjohnson
Developer Technical Support                         domain: mjohnson@Apple.com
Apple Computer, Inc.         UUCP:  {amdahl,decwrl,sun,unisoft}!apple!mjohnson
 
"You gave your life to become the person you are right now.  Was it worth it?"
                                                         - Richard Bach, _One_

 I use this fragment of code (I didnt write it.... but it works...)
 
gsave
initmatrix 72 dup scale
/Helvetica-Bold findfont 1 scalefont setfont
(DRAFT) dup
stringwidth pop
4.5 5.5 translate
60 rotate 2 div neg 0 moveto
.95 setgray
show
grestore
 
You can put any characther string in the place of the word draft...(i find
that "confidential" is another good word to use...), and then put this
into the header of the document.  Make sure that you format the text as
hidden and of style Postscript (from the PS glossary).
 
Hope that helps....
 
-Keith
 
===============================================================================
Keith O. Elliston                        |  Usenet:  uunet!rob!elliston
Senior Information Scientist             |  Arpanet: rob!elliston@uunet.uu.net
Merck Sharp & Dohme Res. Lab.            |  Bitnet:  elliston%rob.uucp@psuvax1
Rahway, NJ  07065  U.S.A.                |   -or-    elliston@biovax
===============================================================================
Disclaimer:  I can have no OFFICIAL comments about anything........
===============================================================================