🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.lang.postscript
Article #7920

Re: LaserWriter II fonts -- HELP

#7920
From: Michael Fryd
Date: Thu, 02 Feb 1989 22:27
78 lines
3263 bytes
The Linotype series of PostScript imagesetters were the first commercially
available PostScript printer with a hard disk.

The primary extensions to PostScript were:
 - a disk file name could be given to the 'file' operator (previously
   only things like %stdin and %stdout could be used)

 - the operator 'filenameforall' was added which allows the user to provide
   a filename containing wildcards, and a procedure, and the procedure
   will be executed once for each matching filename.

 - the 'findfont' operator was modifed to look on the disk for fonts
   if the requested font was not found in FontDirectory.

 - the addition of various maintenance operators such as 'initializedisk'
   and 'deletefile'
 
Fonts may be placed on the disk simply by placing them in a file named
font/FONTNAME.

The LaserWriter II NTX has an external SCSI connector to which you can connect
a hard disk.  This external disk acts just like the internal disk in a
Linotype, VT600, or ColorScript 100.

The format of these disks is not Macintosh readable.  The disk must
be formatted by the PostScript printer.  The contents of the disk can only be
read or written via PostScript commands.  

The primary purpose of the disk is to hold downloadable fonts, and as
overflow for the font cache and internal display list.	Although the disk
does not provide unlimited virtual memory; prologs and other routines may be 
stored on the disk and called into memory with a single PostScript command.

The easiest way to test for the existence of a disk is to test to see if
the filenameforall operator is defined.

The following short piece of PostScript is what the Macintosh LaserWriter 5.2
driver uses for determining what fonts are available on a PostScript printer.

It sends a list of fonts back to to the host, one per line, followed by a
line containing just  '*'.  The fonts are NOT listed in alphabetical order.
This code will work on PostScript printers with or without a hard disk.




save
/scratch 100 string def 
FontDirectory{pop = flush}forall 
systemdict/filenameforall known
    {(fonts/*){dup length 6 sub 6 exch getinterval = flush}
        scratch filenameforall
    }
    if
(*) = flush 
restore





and since someone asked. . .

"Real World PostScript"
Edited by Stephen F. Roth
ISBN 0-201-06663-7
Published by Addison-Wesley
first printing: October 1988




Michael Fryd               Contributing author, Real World PostScript
MEFCO, Inc.                AppleLink: MEFCO
2401 Coulter Road          AT&T: (412) 751-5557
McKeesport, PA 15131       ARPA: Michael.Fryd@cs.cmu.edu
-- 
Technical Details
Message-ID: <4177@pt.cs.cmu.edu>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!utstat!jarvis.csri.toronto.edu!mailrus!ames!ncar!boulder!sunybcs!bingvaxu!leah!rpi!batcomputer!cornell!rochester!pt.cs.cmu.edu!g.gp.cs.cmu.edu!fryd
References: <771@draken.nada.kth.se> <2198@scolex.sco.COM> <784@draken.nada.kth.se>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!utstat!jarvis.csri.toronto.edu!mailrus!ames!ncar!boulder!sunybcs!bingvaxu!leah!rpi!batcomputer!cornell!rochester!pt.cs.cmu.edu!g.gp.cs.cmu.edu!fryd
From: fryd@g.gp.cs.cmu.edu (Michael Fryd)
Newsgroups: comp.lang.postscript
Subject: Re: LaserWriter II fonts -- HELP
Summary: PS Hard disk info - Real World PostScript info
Keywords: PostScript, LaserWriter, Hard disk
Message-ID: <4177@pt.cs.cmu.edu>
Date: 2 Feb 89 22:27:35 GMT
References: <771@draken.nada.kth.se> <2198@scolex.sco.COM> <784@draken.nada.kth.se>
Organization: Carnegie-Mellon University, CS/RI
Lines: 77