home *** CD-ROM | disk | FTP | other *** search
/ Nebula 1994 June / NEBULA_SE.ISO / Documents / FAQ / PostScript-faq / part1-4 < prev    next >
Encoding:
Text File  |  1993-08-27  |  43.2 KB  |  1,080 lines

  1. Newsgroups: comp.lang.postscript,comp.answers,news.answers
  2. Path: senator-bedfellow.mit.edu!bloom-beacon.mit.edu!spool.mu.edu!howland.reston.ans.net!europa.eng.gtefsd.com!uunet!brunix!doorknob!jgm
  3. From: jgm@cs.brown.edu (Jonathan Monsarrat)
  4. Subject: PostScript monthly FAQ v2.1 05-21-93 [01-04 of 11]
  5. Message-ID: <JGM.93Aug26102850@vegas.cs.brown.edu>
  6. Followup-To: poster
  7. Summary: Useful facts about the PostScript graphics programming language
  8. Sender: news@cs.brown.edu
  9. Supersedes: <JGM.93Apr16124153@vegas.cs.brown.edu>
  10. Reply-To: jgm@cs.brown.edu (PostScript FAQ comments address)
  11. Organization: Brown University Department of Computer Science
  12. Date: Thu, 26 Aug 1993 15:28:50 GMT
  13. Approved: news-answers-request@MIT.Edu
  14. Expires: Mon, 27 Sep 1993 00:00:00 GMT
  15. Lines: 1062
  16. Xref: senator-bedfellow.mit.edu comp.lang.postscript:20190 comp.answers:1745 news.answers:11810
  17.  
  18. Archive-name: postscript/faq/part1-4
  19. Last-modified: 1993/05/21
  20. Version: 2.1
  21.  
  22.                               -- PostScript -- 
  23.  
  24.                             Answers to Questions 
  25.  
  26.                     (the comp.lang.postscript FAQ v2.1) 
  27.  
  28.                                Jon Monsarrat 
  29.  
  30.                               jgm@cs.brown.edu 
  31.  
  32.  
  33.  
  34.  
  35.  
  36.  
  37.                      This FAQ is formatted as a digest. 
  38.  
  39.                 Most news readers can skip from one question 
  40.  
  41.                      to the next by pressing control-G. 
  42.  
  43.  
  44.     Changes since the last version are marked with a '|' in the table 
  45.     of contents and in the sections in the text-only format of the FAQ. 
  46.  
  47.     Now that there is Linux and BSD 386 UNIX IBM PC (and clone) users 
  48.     can run any of the X-windows and UNIX programs in the utilities 
  49.     section. See comp.os.linux. Also, there is now GhostScript for the 
  50.     Macintosh. 
  51.  
  52.     Section 12, Utilities, will be posted in comp.sources.postscript 
  53.     along with the global index from now on. 
  54.  
  55.     Please help fix the FAQ! All comments should be mailed to 
  56.     jgm@cs.brown.edu. My favorite way to receive a change suggestion is 
  57.     when it is accompanied by a section of the FAQ that is edited and 
  58.     mailed to me verbatim as an example. If you would like to 
  59.     contribute, please read the section ``about the FAQ'' first. Thank 
  60.     you! 
  61.  
  62.     Books and programs are referred to by name only. See the book
  63.     sections for book information, and the comp.sources.postscript FAQ
  64.     for a full list of all PostScript related programs. I have
  65.     archived a number of the small utilities in
  66.     wilma.cs.brown.edu:pub/postscript.  You can get the
  67.     comp.sources.postscript FAQ from
  68.     wilma.cs.brown.edu:pub/comp.sources.postscript.
  69.  
  70.     Related FAQs: comp.text, comp.text.tex, comp.fonts, comp.graphics, 
  71.     comp.mac.sys.apps, comp.sources.postscript. 
  72.  
  73.     Table of Contents 
  74.  
  75.  
  76.     This FAQ has 11 sections. It is available by anonymous ftp to 
  77.     wilma.cs.brown.edu:pub/comp.lang.postscript/FAQ.txt in ASCII, and 
  78.     there are also LaTeX, DVI, and PostScript formats. 
  79.  
  80.   
  81.        1 General Questions 
  82.           1.1 What is PostScript? 
  83.           1.2 How can I tell how many pages my document will have? 
  84.           1.3 How can I print just one page or a few pages from a big 
  85.           1.4 How can I print more than one page per sheet of paper? 
  86.           1.5 How can I edit a PostScript picture? 
  87.           1.6 How can I print PostScript on a non-PostScript printer? 
  88.           1.7 What other graphics languages are there? 
  89.        2 Printers 
  90.           2.1 How can I get my printer to talk back to me? 
  91.           2.2 Should I leave my printer on? 
  92.           2.3 How do I suppress the power-on start page? 
  93.           2.4 How do I make a downloaded font ``persistent''? 
  94.           2.5 How do I remove a persistent (``permanent'') downloaded font? 
  95.           2.6 How do I reset the printer without power-cycling? 
  96.           2.7 About saving files 
  97.           2.8 What's the control-D business? 
  98.           2.9 Why does the printer say ``still busy'' when my document is 
  99.           2.10 How should I set up my spoolers? 
  100.           2.11 What are PPD files? 
  101.           2.12 What's a timeout error? 
  102.        3 Formats and Conversions 
  103.           3.1 How can I convert PostScript to some other graphics format? 
  104.           3.2 How can I convert DVI to PostScript? 
  105.           3.3 How can I convert HP Laserjet language (PCL) to PostScript? 
  106.           3.4 How can I convert TeX PK format font to PostScript? 
  107.           3.5 How do I embed PostScript into troff? 
  108.           3.6 How do I embed PostScript into LaTeX or TeX? 
  109.           3.7 How can I convert an image to PostScript? 
  110.           3.8 How can I convert ASCII text to PostScript? 
  111.           3.9 How can I convert PostScript to ASCII? 
  112.           3.10 How do I convert between PFB, PFA, Mac, PFM, and AFM? 
  113.        4 Fonts 
  114.           4.1 What are .PFB and .PFA files? 
  115.           4.2 How can I convert a PostScript font to TeX's PK format? 
  116.           4.3 Why are Adobe fonts hidden? 
  117.           4.4 How do I get bitmap representations of Adobe fonts? 
  118.           4.5 What are some good ftp sites for fonts? 
  119.           4.6 How can I re-encode a font? 
  120.           4.7 What's the difference between a Type 1 and a Type 3 font? 
  121.           4.8 What vendors sell fonts for PostScript printers? 
  122.           4.9 What are ATM fonts? 
  123.           4.10 What are Multiple Master Fonts? 
  124.           4.11 Do I need a Level Two printer to use Multiple Master Fonts? 
  125.           4.12 What are Type 4 fonts? 
  126.           4.13 What are Type 5 fonts? 
  127.           4.14 Is there an editor for Type 1 Fonts? 
  128.        5 Books 
  129.           5.1 Books 
  130.           5.2 Publishers 
  131.        6 About Adobe 
  132.           6.1 How do I get in touch with Adobe? 
  133.           6.2 What can Adobe do for me? 
  134.        7 Programming in PostScript 
  135.           7.1 What is PostScript level 2? 
  136.           7.2 Should I learn level 2 PostScript? 
  137.           7.3 Where can I find examples of PostScript code? 
  138.           7.4 How do I get the physical size of a page? 
  139.           7.5 Why can't I do a pathforall after a charpath ? 
  140.           7.6 How do I center a string of text around a point? 
  141.           7.7 How can I concatenate two strings together? 
  142.           7.8 What do I do when I get stack overflow/underflow? 
  143.           7.9 How can I print in landscape mode? 
  144.        8 Computer-specific PostScript 
  145.           8.1 Sun Workstations 
  146.           8.2 IBM PC 
  147.           8.3 Apple Macintosh 
  148.        9 Encapsulated PostScript 
  149.           9.1 What is Encapsulated PostScript? 
  150.           9.2 What are EPSI and EPSF? 
  151.           9.3 How do I convert PostScript to EPS? 
  152.           9.4 How do I get the bounding box of a PostScript picture? 
  153.        10 About The Comp.Lang.PostScript FAQ (and Usenet Guide to 
  154.           10.1 The PostScript FAQ: What is it? 
  155.           10.2 How to get the FAQ files 
  156.           10.3 How to write a FAQ answer 
  157.           10.4 The FAQ can contain LaTeX and PostScript inserts 
  158.           10.5 Revising the FAQ 
  159.           10.6 How to submit new information 
  160.           10.7 How to add a program description to the FAQ index 
  161.           10.8 How to add a book description to the FAQ 
  162.           10.9 Questions that need answers 
  163.        11 About PostScript 2 
  164.           11.1 What printers support Level 2 PostScript? 
  165.           11.2 What is PostScript Level 2? 
  166.           11.3 [ Color Extensions ] 
  167.           11.4 [ Composite Font Extensions ] 
  168.           11.5 [ Display PostScript Extensions ] 
  169.           11.6 [ Overview of Level 2 Features ] 
  170.           11.7 Filters 
  171.           11.8 Binary Encoding 
  172.           11.9 Optimized graphics operators 
  173.           11.10 Optimized text operators 
  174.           11.11 Forms 
  175.           11.12 Patterns 
  176.           11.13 Images 
  177.           11.14 Composite Fonts 
  178.           11.15 New Color Spaces 
  179.           11.16 New screening/halftoning technology 
  180.           11.17 Improved printer support features 
  181.           11.18 Interpreter parameters 
  182.           11.19 Resources 
  183.           11.20 Dictionaries 
  184.           11.21 When did Level 2 products come available? 
  185.           11.22 Are Level 1 and Level 2 implementations compatible? 
  186.  
  187.  
  188. Subject: 1 General Questions 
  189.  
  190.  
  191. Subject: 1.1 What is PostScript? 
  192.  
  193.     PostScript is a page description programming language. 
  194.  
  195.     It is perhaps the most versatile and loved language for printers, 
  196.     being used in printers world-wide. It is capable of drawing to 
  197.     computer screens and any kind of drawing device. PostScript is 
  198.     interpreted, stack based and has latent typing. It somewhat 
  199.     resembles the computer language FORTH. 
  200.  
  201.     A number of programmers write PostScript programs directly for a 
  202.     variety of drawing applications. However, PostScript programs are 
  203.     usually documents meant to be printed that have been generated by a 
  204.     program written in some compiled language. 
  205.  
  206.  
  207. Subject: 1.2 How can I tell how many pages my document will have? 
  208.  
  209.     The easiest way to count pages is view your document on-line with a 
  210.     PostScript previewer. Some previewers like Ghostview and GSPreview 
  211.     count the pages for you. (See Section 12, ``PostScript Interpreters 
  212.     and Utilities''.) 
  213.  
  214.     If your document is generated by a program compliant with the 
  215.     Document Structuring Conventions, you should be able to just count 
  216.     the number of ``%%Page:'' comments imbedded in the document. 
  217.     With UNIX you can type 
  218.   
  219.   grep -c %%Page: document.ps
  220.   
  221.     to do this counting. (See Section 9, ``Encapsulated PostScript''.) 
  222.  
  223.     The only completely reliable way to count pages is to ask the 
  224.     printer after the job is printed. PostScript printers maintain a 
  225.     page counter that can be queried before and and after the job is 
  226.     printed, and the page count is a simple subtraction. This tends to 
  227.     require rather sophisticated spooling systems and a communications 
  228.     channel that is bidirectional. However, some printers allow you to 
  229.     submit jobs on one port, and issue queries on another. 
  230.  
  231.     Send this PostScript through a bidirectional I/O port and you'll 
  232.     get back the page count, nominally the total number of pages 
  233.     printed since manufacture: 
  234.  
  235.     statusdict begin pagecount == end flush 
  236.  
  237.     Experts using a level 2 printer can use the SerialOff.PS and 
  238.     SerialEHandlder.ps programs to communicate bidirectionally to the 
  239.     printer. 
  240.  
  241.  
  242. Subject: 1.3 How can I print just one page or a few pages from a big 
  243.     document? How can I print pages in reverse order? 
  244.  
  245.     Try using a host-specific program, like the UNIX command psrev, 
  246.     which is part of the TranScript suite of software from Adobe 
  247.     Systems. Or use the more general utilities Ghostview, psutils or 
  248.     psxlate. 
  249.  
  250.     There is no guarantee that a given PostScript document can be split 
  251.     in such a manner. The reason is that some programs which generate 
  252.     PostScript code don't conform to the Adobe Document Structuring 
  253.     Conventions (DSC). (See Section 9, ``Encapsulated PostScript''.) A 
  254.     notable example of this is Microsoft Word. 
  255.  
  256.  
  257. Subject: 1.4 How can I print more than one page per sheet of paper? 
  258.  
  259.     Use psnup or pstext or enscript. 
  260.  
  261.     These programs redefine the PostScript ``showpage'' command to do 
  262.     multiple PostScript pages per physical page. If one program doesn't 
  263.     work with a complex document, try out other ones. 
  264.  
  265.     Some PostScript programs can't work with these programs because 
  266.     they break the EPS conventions (See Section 9, ``Encapsulated 
  267.     PostScript''.). The reason is that some Postscript operators (such 
  268.     as initgraphics, the list is in the Red book) change the printer 
  269.     state so "violently", that software trying to do things like n-up 
  270.     will get confused. Theoretically, an EPS shouldn't have any of 
  271.     these operators, but it may not really be an EPS, or there may be a 
  272.     weird interaction between TeX, the EPS and the inclusion mechanism 
  273.     that breaks psnup. 
  274.  
  275.  
  276. Subject: 1.5 How can I edit a PostScript picture? 
  277.  
  278.     If you know the PostScript programming language, just use any text 
  279.     editor to edit the code directly. 
  280.  
  281.     If you want to do it visually, you can use Canvas on the Macintosh. 
  282.  
  283.  
  284. Subject: 1.6 How can I print PostScript on a non-PostScript printer? 
  285.  
  286.     You need a tool that converts to something that your printer knows 
  287.     how to print. Use Freedom of Press, GhostScript, pageview, TScript, 
  288.     or UltraScript PC. Or, use a printer cartridge if your printer 
  289.     manufacturer sells one. 
  290.  
  291.  
  292. Subject: 1.7 What other graphics languages are there? 
  293.  
  294.     HPGL is for pen plotters. PCL is for HP Laser printers (and 
  295.     compatibles). Both are by HP, and PCL5 is supposed to allow 
  296.     inclusion of HPGL commands, preceded by an appropriate escape code, 
  297.     however I have found this to give errors and abort even for simple 
  298.     HPGL code that plots fine on a plotter. 
  299.  
  300. Subject: 2 Printers 
  301.  
  302.  
  303. Subject: 2.1 How can I get my printer to talk back to me? 
  304.  
  305.     Experts using a level 2 printer can use the SerialOff.PS and 
  306.     SerialEHandlder.ps programs to communicate bidirectionally to the 
  307.     printer. 
  308.  
  309.     If you just need the error returns from the printer, you can spawn 
  310.     a 
  311.   
  312.   cat < port >> logfile&
  313.   
  314.     in your system startup. Then you will get a log of everything the 
  315.     printer says. This works on any serial-port connected printer. 
  316.  
  317.  
  318. Subject: 2.2 Should I leave my printer on? 
  319.  
  320.     The consensus seems to be that most computer equipment lasts longer 
  321.     if left on. This presents less thermal stress to the components. 
  322.  
  323.  
  324. Subject: 2.3 How do I suppress the power-on start page? 
  325.  
  326.     Disabling the start page is described in your printer's PostScript 
  327.     supplement. The most common sequence is ``serverdict begin 0 
  328.     exitserver statusdict begin false setdostartpage end''. 
  329.  
  330.  
  331. Subject: 2.4 How do I make a downloaded font ``persistent''? 
  332.  
  333.   
  334.   %!PS-Adobe-2.0 ExitServer
  335.   %%BeginExitServer: 0
  336.   serverdict begin 0 exitserver
  337.   %%EndExitServer
  338.   % Test for existence of font, abort if present.
  339.   % This won't work on a printer with a hard disk!
  340.   /str 32 string def
  341.   /Eurostile dup FontDirectory exch known
  342.   { str cvs print ( is already loaded!\n) print flush quit }
  343.   { (loading font ) print str cvs print (\n) print flush }
  344.   ifelse
  345.   %% Font follows...
  346.   
  347.     The part following ``%%EndExitServer'' is optional. If you use 
  348.     it, change Eurostile to the name of the font. The default PFA 
  349.     behavior is to use up additional VM for the new copy if another 
  350.     copy has already been downloaded. 
  351.  
  352.  
  353. Subject: 2.5 How do I remove a persistent (``permanent'') downloaded font? 
  354.  
  355.     In PostScript Level 2, you can use the undefinefont operator to 
  356.     remove fonts selectively. 
  357.  
  358.     The only reliable method in PostScript Level 1 is to restart the 
  359.     printer, for example with: 
  360.  
  361.   
  362.     serverdict begin 0 exitserver
  363.     systemdict /quit get exec
  364.   
  365.     Of course, the real solution is just to not download persistent 
  366.     fonts unless you really want them to persist indefinitely. If you 
  367.     want them only for one job, download them as part of the job. 
  368.  
  369.  
  370. Subject: 2.6 How do I reset the printer without power-cycling? 
  371.  
  372.     Most printers can be reset by issuing ``serverdict begin 0 
  373.     exitserver systemdict /quit get exec''. 
  374.  
  375.  
  376. Subject: 2.7 About saving files 
  377.  
  378.     Adobe recommends that driver writers do not put EOT (control-D) 
  379.     into files when saving to disk. Normally, the EOT is a part of the 
  380.     protocol for parallel and serial ports and never hits the 
  381.     PostScript interpreter. 
  382.  
  383.     Drivers that do embed EOD can create problems for devices that 
  384.     allow other communication methods (e.g. AppleTalk, Ethernet, and 
  385.     SCSI) where the EOT is not part of the communications protocol. It 
  386.     is useful to redefine EOT in these instances so that the 
  387.     interpreter does not generate an error. The recommended 
  388.     redefinition is: 
  389.  
  390.   
  391.                    (\004) cvn {} def
  392.   
  393.     This should convert any stand-alone embedded EOTs into a null 
  394.     procedure. 
  395.  
  396.  
  397. Subject: 2.8 What's the control-D business? 
  398.  
  399.     PostScript printers communicating over serial lines use control-D 
  400.     as an end of job indicator. The host computer should then wait for 
  401.     the printer to send a control-D back to indicate that the job has 
  402.     finished. Managing the serial protocol between host and printer 
  403.     should be done by some form of print service, but if you're unsure 
  404.     whether your print service is doing it, it's an idea to send one 
  405.     yourself. 
  406.  
  407.     PC type computers frequently do not have any kind of printer 
  408.     manager and applications end up sending control-D characters to the 
  409.     printer, sometimes before and after a job. PC applications 
  410.     frequently embed a control-D as the first character in the print 
  411.     file, presumably to flush out any other jobs, and thereby breaking 
  412.     the Adobe Document Structuring Conventions. 
  413.  
  414.     If you want to prevent applications from doing this, you could use 
  415.     a spooler which would look at the end of every outgoing file and 
  416.     drop the control-D on the end if there happened to be one. 
  417.  
  418.     If you want a spooler, check out lprps. 
  419.  
  420.  
  421. Subject: 2.9 Why does the printer say ``still busy'' when my document is 
  422.     done printing? 
  423.  
  424.     Sometimes when you finish a print job, the printer ``Ready'' light 
  425.     keeps flashing for a minute or so. Somehow, the printer has 
  426.     received some character(s) after the control-D which was sent 
  427.     immediately after the PostScript file. The most common is that a 
  428.     newline has been inserted after the control-D. The printer took 
  429.     these character(s) to be another program, and eventually timed-out 
  430.     while waiting for the rest of it. This can happen because of the 
  431.     host not waiting for the printer to finish. 
  432.  
  433.  
  434. Subject: 2.10 How should I set up my spoolers? 
  435.  
  436.     Since PostScript usually is prefixed with ``%!'', it's easy to 
  437.     educate your spooler to autoselect between passing raw PostScript 
  438.     through to the printer or doing an ``ASCII-to-PostScript'' 
  439.     conversion first. There are many packages that will do this, 
  440.     including Transcript and psxlate. 
  441.  
  442.     Unfortunately, many PostScript applications generate PostScript 
  443.     without a proper ``%!'' magic cookie. 
  444.  
  445.     The spooler should be responsible for transmitting the ``job 
  446.     termination code'' (a control-D on serially-connected printers) to 
  447.     the printer, not the application. Do yourself a favor and disable 
  448.     (or filter out) control-Ds in your applications and generate them 
  449.     in the spooler. This will be far more reliable in the face of 
  450.     arbitrary input. 
  451.  
  452.  
  453. Subject: 2.11 What are PPD files? 
  454.  
  455.     Adobe Postscript Printer Description (PPD) files describe how to 
  456.     use the special features for a specific Postscript printer. They 
  457.     are suppose to be human-readable, but they are really only readable 
  458.     by PostScript gurus. It is the responsibility of the printer 
  459.     manufacturer to supply PPD files. However, the Adobe mail server 
  460.     has many of them. (see the Section 6, ``About Adobe'') 
  461.  
  462.  
  463. Subject: 2.12 What's a timeout error? 
  464.  
  465.     Paul Balyoz has this to say about timeout errors: 
  466.  
  467.     A timeout error means the the printer has decided to abort the 
  468.     print job because one of its internal timers ran out. There are 
  469.     three standard timers configured in a PostScript printer. These are 
  470.     documented in appendix D of the Red Book*, but here's more detail: 
  471.  
  472.  
  473.  
  474.     job timeout 
  475.       The maximum time a single print job is allowed to run, in 
  476.       seconds. If it doesn't finish in this amount of time, it is 
  477.       aborted, and the current page has a "timeout" error printed on 
  478.       it. The rest of the job is thrown away, like with most PostScript 
  479.       errors. 
  480.  
  481.  
  482.     manual feed timeout 
  483.       The amount of time the printer will wait for someone to 
  484.       manual-feed a sheet of paper (or envelope) before giving up and 
  485.       aborting the print job, in seconds. 
  486.  
  487.  
  488.     wait timeout 
  489.       The amount of time the printer will wait after it stops receiving 
  490.       a flow of PostScript from the host before aborting the print job, 
  491.       in seconds. The idea here is, "if the print job is still running 
  492.       even though we haven't seen any new data for a long time, then 
  493.       there may be a problem like an infinite- loop, so let's stop the 
  494.       job." 
  495.  
  496.     We have two HP Laserjet III printers with the PostScript cards 
  497.     installed (Level 1 PostScript). This printer has an 8 ppm print 
  498.     engine with moderately slow PostScript (in my opinion). 
  499.  
  500.     For a long time we have had problems with large print jobs timing 
  501.     out. Documents longer than about 9 pages would never come out 
  502.     without some kind of timeout error every time. Single page graphics 
  503.     such as screen snapshots would even fail from time to time! I knew 
  504.     it wasn't a hardware failure, because both of our printers would do 
  505.     it all the time. Calls to HP technical 
  506.  
  507.     flow-control and tried direct-connecting the printer, no 
  508.     improvement. 
  509.  
  510.     The actual solution was to change the timeout values to: 
  511.  
  512.     0 60 0 
  513.  
  514.     In other words, no job timeout, and no wait timeout. The concept of 
  515.     these timeouts makes no sense when you realize that a single 
  516.     ordinary job could take a long time to print. I have a 1-page 
  517.     graphic that takes >5 minutes of thinking time once it is sent to 
  518.     the printer! If the printer is working and there's nothing wrong 
  519.     with the job, why should it be aborted? 
  520.  
  521.     The wait timeout makes even less sense than the job timeout. 
  522.     PostScript is a programming language, for goodness sake. A legal 
  523.     print job that takes 10 seconds to send to the printer at 9600 baud 
  524.     could generate 100 pages or more of full-page output, if it needed 
  525.     too. That's going to take some time to print, but it took very 
  526.     little time to transfer. Why require the computer to "keep sending 
  527.     stuff", just so the job can complete? 
  528.  
  529.     And of course the reverse. Hugely complex drawings that compute for 
  530.     a long time in the printer before ejecting even the first page. An 
  531.     example of this would be a poster-sized drawing that's being 
  532.     printed on ordinary paper, so that you can cut and paste with 
  533.     scissors and tape to put it together. The usual way of doing this 
  534.     is drawing the ENTIRE poster on each page of paper, and letting the 
  535.     clipping algorithm remove the parts that won't fit on the page. 
  536.     Then just reposition the origin for each page to get a different 
  537.     portion of the big drawing on each page. 
  538.  
  539.     Faster PostScript print systems would help here, but only up to a 
  540.     point. People usually want any size printout to work on their 
  541.     printer, even if it has to take a long time. We have one faculty 
  542.     person here who regularly prints things overnight, because it takes 
  543.     about 4-6 hours (!) to print his whole document (10 - 20 pages). 
  544.  
  545.     All of these timeouts can be configured in the printer by talking 
  546.     to it directly. There are two ways to change parameters: just for 
  547.     the current print job, and as the default for all future print 
  548.     jobs. The default settings stay set in the printer even during 
  549.     power off; the printer usually has some kind of non-volatile memory 
  550.     (probably RAM memory with a battery for power). Please see the Red 
  551.     Book for details on changing these parameters (look for 
  552.     "setjobtimeout" and "setdefaulttimeouts"). 
  553.  
  554. Subject: 3 Formats and Conversions 
  555.  
  556.     This section describes formats that can be converted to and from 
  557.     PostScript, and how to convert them. Encapsulated PostScript and 
  558.     Fonts have their own sections. 
  559.  
  560.  
  561. Subject: 3.1 How can I convert PostScript to some other graphics format? 
  562.  
  563.     Since PostScript is not just a picture-description language, but in 
  564.     fact a complete programming language, you will need a complete 
  565.     PostScript interpreter to convert or display a PostScript graphic. 
  566.     See the comp.sources.postscript FAQ for an index of all PostScript 
  567.     related programs. 
  568.  
  569.     Try using GhostScript. 
  570.  
  571.  
  572. Subject: 3.2 How can I convert DVI to PostScript? 
  573.  
  574.     Use dvips. 
  575.  
  576.  
  577. Subject: 3.3 How can I convert HP Laserjet language (PCL) to PostScript? 
  578.  
  579.     Use lj2ps for simple PCL. Alternatively, another lj2ps, from 
  580.     psroff3.0, is a little more complete. 
  581.  
  582.     hp2pbm can convert all of PCL4 (up to and including rasters, 
  583.     downloaded fonts and macros) into PostScript, G3 and any other 
  584.     PBM-supposed format. 
  585.  
  586.  
  587. Subject: 3.4 How can I convert TeX PK format font to PostScript? 
  588.  
  589.     Psroff3.0 contains programs that can convert TeX PK format or HP 
  590.     SFP format fonts into PostScript bitmap fonts along with 
  591.     rearranging encoding, etc. While bitmap bfonts scale poorly, this 
  592.     is sometimes of use in special circumstances. 
  593.  
  594.  
  595. Subject: 3.5 How do I embed PostScript into troff? 
  596.  
  597.     Most troffs can be ``coerced'' into including PostScript figures. 
  598.     The best approach is a configuration that takes EPS PostScript and 
  599.     can automatically scale it, or tell troff how big the picture is. 
  600.     Groff and DWB 3 have this built in. 
  601.  
  602.     psfig is an add-on EPS inclusion handler that can add this 
  603.     capability to other versions of troff, provided that a compatible 
  604.     PostScript driver is used (Psroff 3.0 for ditroff or CAT troff, 
  605.     Transcript for ditroff). See the comp.text FAQ for more detail. 
  606.  
  607.  
  608. Subject: 3.6 How do I embed PostScript into LaTeX or TeX? 
  609.  
  610.     You should use an add-on program for seamless PostScript inclusion. 
  611.  
  612.     Use psfig. 
  613.  
  614.     If your LaTeX is simple, but your PostScript is fancy, try using 
  615.     LameTeX. 
  616.  
  617.     If you need a good compromise, use pstricks. 
  618.  
  619.     See the comp.text.tex FAQ. 
  620.  
  621.  
  622. Subject: 3.7 How can I convert an image to PostScript? 
  623.  
  624.     First determine what format your images are in. PBMPLUS will have 
  625.     converters for most image formats. 
  626.  
  627.     To convert an image to PostScript in X windows, you can display the 
  628.     image on the screen, and grab it with xv, which can save the image 
  629.     in a PostScript file. 
  630.  
  631.     A more general alternative in X windows would be to use the PPM, 
  632.     PGM and PBM utilities in the X11R4 and X11R5 distributions. 
  633.  
  634.  
  635. Subject: 3.8 How can I convert ASCII text to PostScript? 
  636.  
  637.     Unless your printer is smart about raw ASCII, you can't just send 
  638.     the ASCII to a PostScript printer, because the printer will attempt 
  639.     to interpret your ASCII file as PostScript code. You need a program 
  640.     which will wrap some PostScript code around your ASCII file. 
  641.  
  642.     Try any of the following programs: asciiprint.ps, ato2pps, cz, 
  643.     ETSR, i2ps, lpp, lwf, POSTPRN, printer, psf, psfx80, PSR, ps2txt, 
  644.     pstext, swtext, text2ps, TranScript, spike.ps, enscript, nenscript, 
  645.     a2ps, asc2ps, ascii2ps, crossword.ps, double.ps, landscape.ps, 
  646.     numbered.ps, portrait.ps, or wide.ps. 
  647.  
  648.     If you want to make something fancy, why not use a word processor? 
  649.     Most of them can ``include'' ASCII directly from a file and produce 
  650.     PostScript. 
  651.  
  652.  
  653. Subject: 3.9 How can I convert PostScript to ASCII? 
  654.  
  655.     In general, when you say ``I want to convert PostScript to ASCII'' 
  656.     what you really mean is ``I want to convert MacWrite (which makes 
  657.     PostScript output) to ASCII'' or ``I want to convert somebody's TeX 
  658.     document (which I have in PostScript) to ASCII''. 
  659.  
  660.     Unfortunately, programs like these (if they're smart) do a lot of 
  661.     fancy stuff like kerning, which means that where they would 
  662.     normally execute the postscript command for 
  663.  
  664.   
  665.       ``print water fountain''
  666.   
  667.     instead they execute the postscript command for 
  668.  
  669.   
  670.       ``print wat''      (move a little to get the spacing *just* right)
  671.       ``print er''       (move a little to get the spacing *just* right)
  672.       ``print foun''     (move a little to get the spacing *just* right)
  673.       ``print tain''     (move a little to get the spacing *just* right)
  674.   
  675.     So if I write a program to look through a PostScript file for 
  676.     strings, like ps2ascii.pl, It can't tell where the words really 
  677.     end. Here my program would see 4 strings 
  678.  
  679.   
  680.   ``wat'' ``er'' ``foun'' ``tain''
  681.   
  682.     And it doesn't see any difference between the spacing between 
  683.     ``found'' and ``tain'' (not a word break) and the spacing between 
  684.     ``er'' and ``foun'' (a real word break). 
  685.  
  686.     The problem is that PostScript for text formatting is usually 
  687.     produced machine generated by a text formatter. A PostScript 
  688.     generator like dvips might have a special command like ``boop'' 
  689.     that differentiates between a real world break and a fake one. But 
  690.     every text formatter that generates PostScript has their own name 
  691.     for the ``boop'' command. 
  692.  
  693.     So you really want a ``PostScript to ASCII converter for dvips 
  694.     output''. 
  695.  
  696.     The only general solution I can see would be to redefine the show 
  697.     operator to print out the currentpoint for every letter being 
  698.     printed, like gs2asc, and then make up an ASCII page based on this 
  699.     by sticking ASCII characters where they go in a two-dimensional 
  700.     array. That would convert PostScript to ASCII ``formatted''. 
  701.  
  702.     But even that wouldn't solve the problem, because special bitmap 
  703.     fonts and and standard fonts like Symbol don't always print a ``P'' 
  704.     when you say the letter ``P''. Sometimes they print the greek Pi 
  705.     symbol or a chess piece or a ZapfDingBat. 
  706.  
  707.     Use ps2a, ps2ascii, ps2txt, ps2ascii.ps or ps2ascii.pl. 
  708.  
  709.  
  710. Subject: 3.10 How do I convert between PFB, PFA, Mac, PFM, and AFM? 
  711.  
  712.     Write or call Y and Y Software, listed in the fonts section as a 
  713.     vendor. 
  714.  
  715.  
  716. Subject: 4 Fonts 
  717.  
  718.     This section answers questions about fonts as they pertain to 
  719.     PostScript. See the comp.fonts FAQ for more information about 
  720.     fonts. 
  721.  
  722.  
  723. Subject: 4.1 What are .PFB and .PFA files? 
  724.  
  725.     ``PFB'' stands for Printer Font Binary, and is a binary format in 
  726.     which Adobe Type 1 font programs are usually distributed for IBM PC 
  727.     and compatibles. Many application programs support fonts in this 
  728.     format, and refer to them as ``downloadable''. The Macintosh uses a 
  729.     different binary storage format than does the PC. 
  730.  
  731.     PFB files are encrypted and have a header, and as a result, cannot 
  732.     be sent directly to a PostScript printer. Application programs like 
  733.     dvips which use fonts in this format unencrypt the font before 
  734.     sending it to the printer. If you would like to use a font which is 
  735.     in PFB format, it is necessary to unencrypt it first to make a PFA 
  736.     file. Adobe Systems supply a font downloader for PC's which turns 
  737.     the PFB format into PFA format on the fly as it's being downloaded. 
  738.  
  739.     ``PFA'' stands for Printer Font ASCII, which is the unencrypted 
  740.     version of a PFB file. In PFB, the data is stored as-is. In a PFA, 
  741.     it's stored as ``ascii hex''--meaning each byte of data is turned 
  742.     into two ascii characters representing the hex value. 
  743.  
  744.     Once you have the PFA file, just send it to the printer ahead of 
  745.     your file, and use the font like any other. There are several 
  746.     programs which can do the conversion from PFB to PFA for you. Try 
  747.     t1utils. 
  748.  
  749.  
  750. Subject: 4.2 How can I convert a PostScript font to TeX's PK format? 
  751.  
  752.     Use ps2pk or try out the GNU font utilities in fontutils. 
  753.  
  754.  
  755. Subject: 4.3 Why are Adobe fonts hidden? 
  756.  
  757.     In PostScript level 1, Adobe's fonts were hidden because they 
  758.     didn't want people pirating copies instead of paying for them. 
  759.     That's why you can't do a pathforall on a charpath. 
  760.  
  761.     PostScript Level Two has removed the restriction, in the words of 
  762.     the new Red Book, ``for most fonts''. There will still be some 
  763.     vendors who will want to restrict access. Japanese font vendors, 
  764.     for example, are concerned about piracy -- given the work that goes 
  765.     into an 8,000-character Kanji font. 
  766.  
  767.  
  768. Subject: 4.4 How do I get bitmap representations of Adobe fonts? 
  769.  
  770.     On the IBM PC, use the Font Foundry program included with the font. 
  771.     If you don't have it, contact Adobe for an upgrade. 
  772.  
  773.  
  774. Subject: 4.5 What are some good ftp sites for fonts? 
  775.  
  776.   
  777.   ftp.cs.umb.edu
  778.   sumex-aim.stanford.edu
  779.   archive.umich.edu
  780.   ftp.cica.indiana.edu    /pub/pc/win3/fonts
  781.   colonsay.dcs.ed.ac.uk   /pub/postscript/fonts
  782.   
  783.   
  784.   For the NeXT platform, fonts are available on the NeXT-FTP-archives,
  785.           sonata.cc.purdue.edu :/pub/next/graphics/fonts
  786.           fiasko.rz-berlin.mpg.de :/pub/next/fonts
  787.   
  788.     For Macintosh, look in sumex-aim.stanford.edu, 
  789.     mac.archive.umich.edu, and ftp.cs.umb.edu (192.12.26.23), in 
  790.     pub/tex/ps-screenfonts.tar.Z. 
  791.  
  792.     Color PostScript samples and many other PostScript programs are 
  793.     available from irisa.irisa.fr. 
  794.  
  795.  
  796. Subject: 4.6 How can I re-encode a font? 
  797.  
  798.     See ddev.ps for an example for code that does this. You can find it 
  799.     by ftp to wilma.cs.brown.edu:pub/postscript/ddev.ps. 
  800.  
  801.  
  802. Subject: 4.7 What's the difference between a Type 1 and a Type 3 font? 
  803.  
  804.     The Type 1 font format is a compact way of describing a font 
  805.     outline using a well-defined language that can be quickly 
  806.     interpreted. The language contains operations to provide the 
  807.     rasterizer with additional information about a character, known as 
  808.     hints. The hints are additional information which describes how to 
  809.     adjust the representation of the character to make it look good 
  810.     when the font size is small compared to the device resolution. The 
  811.     Type 1 font format is defined in the book ``The Adobe Type 1 Font 
  812.     Format'', also known as the black book, for the colors on its 
  813.     cover. 
  814.  
  815.     The Type 1 font format has nothing to do with TrueType, which is 
  816.     another font format defined by Apple. The Type 1 font format has 
  817.     been around quite a while, and is used on a wide variety of 
  818.     platforms to obtain scalable fonts. 
  819.  
  820.     Most clone interpreters will not have Adobe's proprietary rendering 
  821.     technology which interprets font hints to improve the appearance of 
  822.     fonts shown at small sizes on low-resolution devices. The 
  823.     exceptions (PowerPage and UltraScript) have their own hint 
  824.     interpreters. 
  825.  
  826.     The Type 3 font format is a way of packaging up PostScript 
  827.     descriptions of characters into a font, so that the PostScript 
  828.     interpreter can rasterize them. 
  829.  
  830.     It is easier to create a Type 3 font program by hand than to create 
  831.     the corresponding Type 1 font program. Type 3 font programs have 
  832.     access to the entire PostScript language to do their imaging, 
  833.     including the 'image' operator. They can be used for bitmapped 
  834.     fonts, although that is certainly not a requirement. The Type 3 
  835.     font format contains no provisions for 'hinting', and as such Type 
  836.     3 font programs cannot be of as high a quality at low resolutions 
  837.     as the corresponding Type 1 font program. 
  838.  
  839.     Both formats are scalable formats, and both can be run on any 
  840.     PostScript interpreter. However, because of the requirement that a 
  841.     Type 3 font program have a full PostScript interpreter around, Type 
  842.     3 font programs cannot be understood by the Adobe Type Manager. 
  843.     Only Type 1 font programs can. 
  844.  
  845.     Why bother making a font that's just made up of bitmaps? Once a 
  846.     character from a font has been rendered, the bitmap will be saved 
  847.     in a cache, and another instance of the same character at the same 
  848.     size and orientation can be quickly drawn without recalculation. 
  849.  
  850.     Because of Adobe Type Manager's wide availability on a large number 
  851.     of platforms (PC, Mac, and Unix), the Type 1 font format makes an 
  852.     excellent cross-platform scalable font standard. 
  853.  
  854.  
  855. Subject: 4.8 What vendors sell fonts for PostScript printers? 
  856.  
  857.     PostScript font vendors are many and varied. Here is a partial 
  858.     list. 
  859.  
  860.  
  861.  
  862.     Adobe Systems 
  863.       sells a variety of fonts. With the huge number of third-party 
  864.       Type 1 vendors, in recent years Adobe have specialized in 
  865.       creating their own ``Adobe Originals'' -- high-quality fonts, 
  866.       some of which are their renditions of classic faces (Adobe 
  867.       Garamond) and some of their own devising (Stone, Utopia, ...). 
  868.       Adobe Systems, 1585 Charleston Road, Mountain View, CA 94039. 
  869.       (415) 961-4400 
  870.  
  871.  
  872.     AGFA Compugraphic, 
  873.       90 Industrial Way, Wilmington, Massachusetts 01887. (508) 
  874.       658-5600. 
  875.  
  876.  
  877.     Bear Rock Technologies 
  878.       specializes in bar code fonts. 4140 Mother Lode Drive, Suite 100, 
  879.       Shingle Springs California 95682. 
  880.  
  881.  
  882.     Bitstream, 
  883.       Athenaeum House, Cambridge, MA 02142. (617) 497-6222. 
  884.  
  885.  
  886.     Casady and Greene, 
  887.       22734 Portola Drive, Salinas, CA 93908. (408) 484-9228. 
  888.  
  889.  
  890.     Ecological Linguistics, 
  891.       specializes in non-Roman alphabets. Ecological Linguistics, P. O. 
  892.       Box 15156, Washington D. C. 20003. 
  893.  
  894.  
  895.     Emigre Graphics 
  896.       4475 ``D'' Street / Sacramento CA 95819 (800) 944 9021 ] Over 70 
  897.       faces, all PostScript Type 1 ATM compatible, including the 
  898.       omnipresent Modula and infamous Template Gothic. Almost all faces 
  899.       are ``must haves'' for graphic designers. Call for free catalog. 
  900.  
  901.  
  902.     Image Club, 
  903.       # 5 1902 11th St Southeast, Calgary, Alberta T2G 2G2, Canada. 
  904.       (403) 262-8008. 
  905.  
  906.  
  907.     Lanston 
  908.       specializes in display faces. 
  909.  
  910.  
  911.     Letraset 
  912.       specializes in fancy kinds of script fonts, Letraset, 40 
  913.       Eisenhower Drive, Paramus, New Jersey 07652. (201) 845-6100 
  914.  
  915.  
  916.     Linguists Software 
  917.       specializes in non-Roman alphabets (Farsi, Greek, Hangul, Kanji, 
  918.       etc.) Linguists Software, P. O. Box 580, Edmonds, Washington 
  919.       98020-0580. (206) 775-1130. 
  920.  
  921.  
  922.     Monotype, 
  923.       53 West Jackson Boulevard, Suite 504, Chicago, IL 60604. 
  924.  
  925.  
  926.     Page Studio Graphics, 
  927.       Chandler, Arizona, specialize in symbols fonts such as Mac icons, 
  928.       keyboards, and others, Page Studio Graphics, 3175 North Price 
  929.       Road, # 1050, Chandler, Arizona 85224. (602) 839-2763. 
  930.  
  931.  
  932.     RightBrain Software, 
  933.       Palo Alto, CA (415 326-2974) carry the Adobe Type library for the 
  934.       NeXT platform. If you're working on NeXT, getting fonts in the 
  935.       correct form with all the ancillary information and downloaders 
  936.       and such is important. You can convert a Mac font to NeXT (PFA) 
  937.       format, but the NeXT demands an AFM file as well, and many Mac/PC 
  938.       font vendors omit AFM files because Mac/PC apps don't use them. 
  939.       For Adobe fonts for the NeXT, save yourself a lot of hassle by 
  940.       getting the fonts from RightBrain -- they often have sales. 
  941.  
  942.  
  943.     The Font Company 
  944.  
  945.  
  946.     TreacyFaces 
  947.  
  948.  
  949.     URW 
  950.       supplies high-quality fonts at low prices. They are also the 
  951.       creators of the top of the line font creation and editing 
  952.       software called Ikarus. URW, 4 Manchester Street, Nashua, New 
  953.       Hampshire 03060. (603) 882-7445. 
  954.  
  955.  
  956.     Y and Y Software 
  957.       , 106 Indian Hill, Carlisle Massachusetts 10741 USA. (508) 
  958.       371-3286. Sells a Font Metric Manipulation Package for DOS with 
  959.       lots of interesting utilities. 
  960.  
  961.     Many more font vendors exist. Look in magazines and other sources. 
  962.     Check the Usenet newsgroup comp.fonts. Look in U & lc, published by 
  963.     ITC, for long lists of vendors. 
  964.  
  965.  
  966. Subject: 4.9 What are ATM fonts? 
  967.  
  968.     There has been a rash of misunderstanding about the nature of Type 
  969.     1 fonts and what people call ATM fonts. ATM fonts are Adobe Type 1 
  970.     fonts. ATM stands for Adobe Type Manager -- a utility to render 
  971.     smooth characters on Macintosh and PC screens, from font outlines 
  972.     (Type 1 fonts) instead of using bitmap fonts. In one sense, there's 
  973.     no such thing as an ``ATM font'' -- ATM interprets Type 1 fonts, so 
  974.     there's no need to create a new name. A correctly constructed Type 
  975.     1 font can be interpreted by ATM. 
  976.  
  977.  
  978. Subject: 4.10 What are Multiple Master Fonts? 
  979.  
  980.     Multiple Master Fonts are an extension to the Adobe font format. 
  981.     providing the ability to interpolate smoothly between several 
  982.     ``design axes'' from a single font. Design axes can include weight, 
  983.     size, and even some whacko notions like serif to sans serif. 
  984.     Adobes' first Multiple Master Font was Myriad -- a two-axis font 
  985.     with WEIGHT (light to black) on one axis, and WIDTH (condensed to 
  986.     expanded) along the other axis. In the case of Myriad, there are 
  987.     four ``polar'' designs at the ``corners'' of the design space. The 
  988.     four designs are light condensed, black condensed, light expanded, 
  989.     and black expanded. 
  990.  
  991.     Given polar designs, you can set up a ``weight vector'' which 
  992.     interpolates to any point within the design space to produce a 
  993.     unique font for a specific purpose. So you can get a ``more or less 
  994.     condensed, somewhat black face''. 
  995.  
  996.  
  997. Subject: 4.11 Do I need a Level Two printer to use Multiple Master Fonts? 
  998.  
  999.     No -- Multiple Master Fonts can be used on any PostScript printer. 
  1000.     Multiple Master Fonts need a new PostScript operator known as 
  1001.     makeblendedfont. The current crop of Multiple Master Fonts supply 
  1002.     an emulation of this operator so the printer doesn't need this 
  1003.     operator. 
  1004.  
  1005.     A short tutorial on Multiple Master Fonts and makeblendedfont 
  1006.     appears in PostScript by Example, by Henry McGilton and Mary 
  1007.     Campione, published by Addison-Wesley. 
  1008.  
  1009.  
  1010. Subject: 4.12 What are Type 4 fonts? 
  1011.  
  1012.     Type 4 fonts are actually Type 3 fonts which contains a Type 1 
  1013.     font. They're stored on hard disk in a special way to save space 
  1014.     when they're loaded into printer RAM by findfont. Your interpreter 
  1015.     must have the extra PostScript operator CCrun to handle Type 4 
  1016.     fonts. They are usually used for Kanji (Japanese) characters. 
  1017.  
  1018.  
  1019. Subject: 4.13 What are Type 5 fonts? 
  1020.  
  1021.     Type 5 fonts are actually Type 1 fonts, but stored in printer ROM 
  1022.     in a special compressed format. They're also known as CROM fonts 
  1023.     (for Compressed ROM fonts). The contents of the CharStrings entries 
  1024.     in Type 5 will probably be different from Type 1. 
  1025.  
  1026.  
  1027. Subject: 4.14 Is there an editor for Type 1 Fonts? 
  1028.  
  1029.     Fontographer for the Macintosh is available from Altsys 
  1030.     Corporation, 269 West Renner Road, Richardson, Texas 75080 USA. 
  1031.     (214) 680-2060. 
  1032.  
  1033.     Ikarus-M is availble for the Macintosh from URW, Harksheider 
  1034.     Strasse 102, 2000 Hamburg 65, GERMANY. (040) 60 60 50 Or URW 
  1035.     Software and Type, 4 Manchester Street, Nashua, New Hampshire 
  1036.     03060. (800) 229-8791 in USA. (603) 882-7445 otherwise. 
  1037.  
  1038.     Acknowledgments 
  1039.  
  1040.  
  1041.     This FAQ was compiled based heavily on the contributions of and 
  1042.     with the help of Henry McGilton, Dick Dunn, Howard Gayle, Carl 
  1043.     Orthlieb, Ed Garay, Robert Lerche, Bruno Hall, Tom Epperly, and 
  1044.     Chris Lewis. 
  1045.  
  1046.     Also thanks to contributors Paul Balyoz, Karl Berry, Jerry Black, 
  1047.     Charles Cashion, Jim DeLaHunt, Leonard Hamey, Chris Herborth, Steve 
  1048.     Kinzler, Bill Lee, Timo Lehtinen, Carl Lydick, Otto Makela, Bill 
  1049.     Pringle, Tony Valsamidis, and Jamie Zawinski. 
  1050.  
  1051.     Special thanks to Ken Porter, who originally compiled and organized 
  1052.     this FAQ. 
  1053.  
  1054.   
  1055.   
  1056.   Ver  Date     Reason
  1057.   ----------------------------------------------------------------
  1058.   1.00 12-18-90 Creation by Ken Porter
  1059.   1.06  5-29-91 expanded on EPS explanation, general updates
  1060.   2.00 10-25-92 Brought up to date and expanded, by Jon Monsarrat
  1061.   2.1   5-21-93 Revised because of new comp.sources.postscript group.
  1062.   
  1063.   
  1064.     This FAQ is copyright (C) 1993 by Jonathan Monsarrat. Permission is 
  1065.     granted to freely edit and distribute as long as this copyright 
  1066.     notice is included. 
  1067.  
  1068.     This document was written with the LaTeX language and formatted by 
  1069.     LameTeX, the PostScript hacker's LaTeX. 
  1070.  
  1071.   
  1072. %! Jon Monsarrat   jgm@cs.brown.edu     moderator, comp.sources.postscript %!
  1073. (LcHdBidZi_hdQ6[PaVa1b4c6F"J4b/>$O<)(di_zk{:UFfUg;ABF)(2n>]Eh:u?<)(P"M#R(:$T<)
  1074. ([gXfSZ]f"dZbeZeb^fH;`?dR=ZS7)(K P!U!: H<)(9l9cCf:o?$)(7W4]6`:X;=)(U"W#_%:"R-)
  1075. (A 5"<&Y%K"F"M,M,S)i3e.M5F_PZR9>lP-)(wBxEuEs7x;uBq:q<q>hFh7o:=Nj<)(Z#]#b#:$R-)
  1076. (m+m+k3S!R+d,;"^<)(GFP"RamZf;TAP{X{fd<{C7)(4840N2:6N=)([ Z#^&:!c<)(<%?$C$:#8<)
  1077. (D!J"L#:!B<)/a{def}def/M{exch}a/S{repeat}a/Q{{40 add}if}a 18{{}forall/R M a/x 2
  1078. /y 3/z 5 3{R M mod 1 eq a}S x Q M y Q moveto 57 sub{3{y Q M x Q M 6 2 roll}S
  1079. curveto}S z{fill}{stroke}ifelse}S showpage
  1080.