home *** CD-ROM | disk | FTP | other *** search
/ Nebula / nebula.bin / Documents / FAQ / NeXT / FAQ.printing < prev    next >
Text File  |  1993-01-27  |  15KB  |  442 lines

  1. NeXT-FAQ.printing: Questions about printing on the NeXT
  2.  
  3.  
  4. *** Subject: H1. What are some other sources of toner cartridges for the NeXT laser printer?
  5.  
  6. The toner cartridge is a standard EP-S cartridge, the
  7. same that fits the HP LaserJet III and other printers. 
  8.  
  9.  
  10. *** Subject: H2. What alternative printers (laser or otherwise) may be used with the NeXT?
  11.  
  12. Adding supported postscript printers is rather simple:  
  13.  
  14.     1. Get a serial cable (e.g., Macintosh to LaserWriter Plus), but
  15.     check whether that works with your printer 
  16.     (see below for HP-printers)!
  17.     2. Configure using Print Manager
  18.     3. Configure printer communication according to manufacturer's 
  19.     recommendations. (9600 baud software flow control).
  20.  
  21. If you plan to connect an HP LaserJet (II, IIP, III, etc.)
  22. you need to make a special cable in order for the NeXT 040
  23. and HP to get the hardware handshaking correct.  This is
  24. true for whatever version of the OS you are running. 
  25.  
  26. NeXT 68040 to HP LaserJet III Cable (not a Null-modem cable):
  27.  
  28.     Mini-Din       HP DB-25
  29.  
  30.     1   (DTR)      nc 
  31.     2   (DCD)      4  (RTS)    
  32.     3   (TXD)      3  (RXD)
  33.     4   (GND)      7  (GND)
  34.     5   (RXD)      2  (TXD)
  35.     6   (RTS)      5  (CTS)
  36.     7   (RTXC)        nc         
  37.     8   (CTS)      20 (DTR)
  38.  
  39.   
  40. You may want to use hardware flow control for reliability
  41. (ie /dev/ttyfa).
  42.  
  43. A sample printcap entry needs to be loaded into the
  44. netinfo database. You can use either "niload printcap . <
  45. myprintcap", or use NetInfoManager to change the br and
  46. lp properties of your LaserJet. Using the default baud
  47. rate  and /dev/ttya will also work, for most print jobs. 
  48.  
  49. LaserJet_III: \
  50.     :note=LaserJet_III:ty=HP LaserJet III PostScript: \
  51.     :sd=/usr/spool/NeXT/LaserJet_III:lp=/dev/ttyfa: \
  52.     :lf=/usr/adm/lpd-errs:af=/usr/adm/lp.acct:br=19200:rw:fc#0000374: \
  53.     :fs#0000003:xc#0:xs#0040040:mx#0:sf:sb:if=/usr/lib/transcript/psif: \
  54.     :of=/usr/lib/transcript/psof:gf=/usr/lib/transcript/psgf: \
  55.     :nf=/usr/lib/transcript/psnf:tf=/usr/lib/transcript/pstf: \
  56.     :rf=/usr/lib/transcript/psrf:vf=/usr/lib/transcript/psvf: \
  57.     :cf=/usr/lib/transcript/pscf:df=/usr/lib/transcript/psdf:
  58.  
  59. HP printer configuration:
  60.  
  61.     auto cont = off        (doesn't matter)
  62.     I/O = serial        
  63.     serial=rs-232        (for LJ III only)
  64.     baud rate = 19200    (or whatever baud rate you have 
  65.                 in ni database/printcap)
  66.     robust xon = on        (doesn't matter)
  67.     dtr polarity = hi
  68.     startpage = off        (doesn't matter)
  69.     language=english
  70.     ret = med        (you choose for LJ III only)    
  71.  
  72. Note that if you modify the printcap this way you cannot
  73. reconfigure this particular printer entry with
  74. PrintManager.
  75.  
  76. If you have problems with other printers, check the cable
  77. pinouts in the printer's manual against the one
  78. recommended in the zs man-page!   Refer to Chapter 13 in
  79. Network and System Administration.
  80.  
  81. If you are using NeXTstep 2.0 and you use remote non-next
  82. printers, there is a bug that can be simply corrected by
  83. doing "dwrite system PrinterResolution 1" for each user
  84. trying to access non-next printers on the network. This
  85. not a problem in NeXTstep 2.1.  
  86.  
  87.  
  88. *** Subject: H3. What fonts can I use on my NeXT?
  89.  
  90. Properly packaged Type 1 or 3 PostScript fonts will work
  91. on the NeXT, certain conversions may be necessary to get
  92. them to work.  Freeware and shareware fonts are available
  93. on sonata.cc.purdue.edu.  There are utilities on the
  94. NeXT to download fonts into postscript printers.
  95.  
  96. Purdue (nova and sonata) have freeware and shareware
  97. Type 1 and 3 fonts in pub/next/graphics/fonts in files
  98. Fonts-1.0-free.tar.Z and Fonts-2.0-sw.tar.Z. Each
  99. file unpacks into it's own directory.  Within each
  100. directory is a ReadMe.rtf and a Makefile.  See the
  101. ReadMe.rtf for more font descriptions and installation
  102. instructions.  (You may also find comments in the
  103. Makefile of interest.)  These packages were prepared by
  104. Doug Brenner <dbrenner@umaxc.weeg.uiowa.edu>.
  105.  
  106. The same directory contains fonts Shalom (Hebrew and
  107. Yiddish in Old Style, Stick and Script typefaces, by
  108. Jonathan Brecher, shareware) and CyrillicGothic (san
  109. serif, by Jay Sekora).  These were packaged by Jacob Gore
  110. <jacob@gore.com> to work with the Installer
  111. application.
  112.  
  113. The archive maintaners know the organization is screwy,
  114. some of the fonts are buggy, and that there are more fonts
  115. "out there" -- and welcome suggestions to make things
  116. better.  Suggestions and comments about the Purdue NeXT
  117. Archives should be addressed to:
  118.  
  119.     archive-management@cc.purdue.edu
  120.  
  121. and should have a meaningful Subject because they get a
  122. lot of mail! Submission of new fonts is welcome, too, of
  123. course.
  124.  
  125. Fonts may be purchased from Adobe (800-USA-FONTS) or
  126. from The Font Hotline, a new division of RightBrain
  127. Software.
  128.  
  129. For more information:
  130.  
  131.     RightBrain/The Font Hotline
  132.     Vox: (415) 326-2974
  133.     Vox: 800-472-7246
  134.  
  135.  
  136. *** Subject: H4. How can I save my WriteNow [or other printable] documents to a postscript file?
  137.  
  138. It's easy.  Just select PRINT from the main WriteNow menu,
  139. then select SAVE from the resulting print panel. 
  140.  
  141.  
  142. *** Subject: H5. How can I print only the even or odd pages of a document?  I wish print on both sides by feeding the paper through twice.
  143.  
  144. We must recommend against re-using laser printed paper
  145. in your printers.  The reason is that the toner which is
  146. used is not very robust, in that when heated again (which
  147. happens when you print) it can come off the other side of
  148. the paper.  This causes a mess to accumulate in your
  149. printer, and probably some pretty rude things to happen. 
  150.  
  151. Now to address the even/odd stuff, essentially you need
  152. to write a postscript filter which extracts every other
  153. page.  So you would save your WriteNow document to
  154. postscript file, run the filters, and then print the two
  155. documents with lpr.  There is no packaged filter on the
  156. NeXT to do this.  Corey Satten
  157. <corey@cac.washington.edu> wrote  a toolkit to deal
  158. with this issue.  It is on ftphost.cac.washington.edu
  159. ps-* in the local/bin-next{1.0,2.0} directories. 
  160.  
  161.  
  162. *** Subject: H6. What can I do to prevent my NeXT printer from running all the time?
  163.  
  164. The NeXT 400dpi printer powers up every time you boot up
  165. when the print daemon is started
  166. (/usr/lib/NextPrinter/npd in /etc/rc).  Apart from not
  167. running the daemon at boot time (commenting it out and
  168. having to run it by hand later), you can add the following
  169. lines to /etc/rc.local: 
  170.  
  171.     if [ -f /usr/etc/nppower ]; then
  172.         sleep 3
  173.         /usr/etc/nppower off
  174.         (echo 'powering off NeXTprinter')        >/dev/console
  175.     fi
  176.  
  177. Once you queue a print job the printer daemon will
  178. automatically power up the NeXT printer for you.  The
  179. printer daemon will not automatically power off the
  180. machine after a print job, you will need to turn off the
  181. printer by typing /usr/etc/nppower off. 
  182.  
  183.  
  184. *** Subject: H7. How do I get banner pages on my printer output?
  185.  
  186. There is a sample banner prologue file in
  187. /usr/lib/NextPrinter that is  sent to the printer before
  188. or after the print job depending on what printer
  189. attributes are set in NetInfo.  Sounds gross, but it
  190. isn't. Start up NetInfo on your printer machine.  Go to the
  191. printer directory, and open up your local printer by
  192. double clicking it. Select the append property from
  193. Directory menu.  Replace the name with BannerAfter (or
  194. BannerBefore if you want the banner page printed first). 
  195. The select the New Value option, and put in the name of the
  196. banner prologue file.  If you do not wish to do fancy
  197. customization of the file, simply put the path to the NeXT
  198. sample banner file: /usr/lib/NextPrinter/banner.pro
  199. Save out the netinfo modifications. 
  200.  
  201.  
  202. *** Subject: H8. How do I get [la]TeX files to print correctly on non-NeXT printers?
  203.  
  204. If you are printing to a non-NeXT printer from NeXT TeX
  205. using dvips, make sure you specify the correct
  206. resolution (300 dpi, usually), either on the command
  207. line with -D300, or in the /usr/lib/tex/config.ps file
  208. with a line that looks like 
  209.  
  210.     D 300
  211.  
  212. If you are printing from within TeXView, you will have to
  213. choose CustomResolution and enter the correct number
  214. (300, usually) because of the way DefaultResolution
  215. defaults to 0. 
  216.  
  217.  *** Subject: H9. What if I have a PostScript font has not been ported to the NeXT?
  218.  
  219. Many PostScript fonts port to the NeXT with little
  220. effort.
  221.  
  222. The easiest case is a font generated by Fontographer
  223. version 3.2 or above (a comment near the top of the file
  224. should say which program generated the font).  This
  225. version of Fontographer can generate fonts "for the
  226. NeXT".  This means that no hacking of the font is needed,
  227. but you may need to make some adjustments to make it appear
  228. in your font panel.  Suppose you were porting the font
  229. family Shalom, which consists of three faces: Old Style,
  230. Stick and Script.  Here is the procedure to follow: 
  231.  
  232.     1.  In a working folder of yours, create folders called:
  233.  
  234.         Shalom-OldStyle.font
  235.         Shalom-Script.font
  236.         Shalom-Stick.font
  237.  
  238.     Note that the font family name is to the left of the hyphen
  239.     ("-"), and the typeface name is to the right and with no
  240.     spaces in it.
  241.  
  242.     2.  Copy the outline font file for each typeface from
  243.     wherever it is into its folder, and give it the name of the
  244.     folder minus the ".font". For example, if you are doing
  245.     this in a Terminal window: 
  246.  
  247.         cp /Floppy/ShalomOldStyle.NeXT Shalom-OldStyle.font/Shalom-OldStyle
  248.         cp /Floppy/ShalomScript.NeXT   Shalom-Script.font/Shalom-Script
  249.         cp /Floppy/ShalomStick.NeXT    Shalom-Stick.font/Shalom-Stick
  250.  
  251.     If you are working in Workspace Manager's File Viewer,
  252.     double-click on the big fat F icon to open the font
  253.     directory as a folder, then you'll be able to rename files
  254.     in it. 
  255.  
  256.     3.  Do the same thing with the font metric files, but make
  257.     the suffix ".afm": 
  258.  
  259.         cp /Floppy/ShalomOldStyle.AFM Shalom-OldStyle.font/Shalom-OldStyle.afm
  260.         cp /Floppy/ShalomScript.AFM   Shalom-Script.font/Shalom-Script.afm
  261.         cp /Floppy/ShalomStick.AFM    Shalom-Stick.font/Shalom-Stick.afm
  262.  
  263.     4.  If there is a "read me" file with the font, or any other
  264.     documentation, copy it into the .font folder too.  For
  265.     example, each of the Shalom font folders contains files
  266.     ReadMe, CheatSheet.wn and Sample.wn specific to the
  267.     typeface.
  268.  
  269.     5.  Edit the outline and font metric files to make them fit
  270.     the NeXT AppKit's Font Panel, which is what most NextStep
  271.     applications use to let you choose your font.
  272.  
  273.     a.  Editing the outline file, e.g.,
  274.     Shalom-OldStyle.font/Shalom-OldStyle:
  275.  
  276.     The original used "ShalomOldStyle" as the font's name,
  277.     full name, and family name.  We want the name to be
  278.     "Shalom-OldStyle", the full name "Shalom Old Style",
  279.     and family name just "Shalom". 
  280.  
  281.     First, find the lines:
  282.  
  283.         /FullName (ShalomOldStyle) readonly def
  284.         /FamilyName (ShalomOldStyle) readonly def
  285.  
  286.     and change them to
  287.  
  288.         /FullName (Shalom Old Style) readonly def
  289.         /FamilyName (Shalom) readonly def
  290.  
  291.     Then, replace all remaining occurrences of the string
  292.     "ShalomOldStyle" with "Shalom-OldStyle".
  293.  
  294.     b.  Editing the AFM file, e.g.,
  295.     Shalom-OldStyle.font/Shalom-OldStyle.afm.
  296.  
  297.     Find the lines:
  298.  
  299.         FullName ShalomOldStyle
  300.         FamilyName ShalomOldStyle
  301.  
  302.     and change them to
  303.  
  304.         FullName Shalom Old Style
  305.         FamilyName Shalom
  306.  
  307.     Replace all remaining occurrences of the string
  308.     "ShalomOldStyle" with "Shalom-OldStyle".
  309.  
  310.     Repeat this procedure for the remaining typefaces.
  311.  
  312.     6.  You now have a font family ready to be installed.  If the
  313.     font family is to be used by your account only, place it in
  314.     ~/Library/Fonts (creating it if necessary): 
  315.  
  316.     mkdirs ~/Library/Fonts
  317.     mv Shalom-*.font ~/Library/Fonts
  318.     buildafmdir ~/Library/Fonts
  319.  
  320.     If everybody on your system should have access to this font family,
  321.     place it (as superuser) in /LocalLibary/Fonts:
  322.  
  323.     su
  324.     mkdirs /LocalLibrary/Fonts
  325.     mv Shalom-*.font /LocalLibrary/Fonts
  326.     buildafmdir /LocalLibrary/Fonts
  327.     exit
  328.  
  329. That's all you need to do for fonts generated by
  330. Fontographer version 3.2 or above.  This will work with
  331. all applications that use AppKit's FontPanel. 
  332. FrameMaker does not, so other changes may need to be done
  333. to keep FrameMaker happy [does anybody have something to
  334. add here?].
  335.  
  336.  Fonts generated by Fontographer version 3.1 or below
  337. don't work in Display PostScript as they are, because
  338. they use a memory management trick that screws
  339. everything up in a multitasking environment like DPS.
  340. However, there is a simple, though kludgy, way to make
  341. them work. 
  342.  
  343. The problematic trick uses a dictionary with a name like
  344. "Fog3.1" ("Casa1" in Casady & Green's fonts) in which
  345. most of the font resides. The problem is that
  346. Fontographer puts that whole dictionary into
  347. dictionary 'userdict' and expects it to stay there.  DPS,
  348. however, clears out 'userdict' between tasks,
  349. including the task that loads the font and the task that
  350. uses it.  This makes the font useless on the screen, and
  351. printable only by prepending the outline font file to the
  352. file you want to print and sending the result to print in
  353. one task.
  354.  
  355. The fix is to move the troublesome dictionary from
  356. 'userdict' into the font dictionary itself (unlike
  357. 'userdict', the font dictionary does stick around
  358. between tasks).
  359.  
  360. Perform the following changes in the outline font file
  361. (the font CyrillicGothic is used as the example): 
  362.  
  363.     1.  Find the line "%%EndProlog".  It will be followed by the
  364.     line like this: 
  365.  
  366.          /$CyrillicGothic 23 dict def $CyrillicGothic begin
  367.  
  368.     Write down the number before 'dict' (in this case, 23).  You will
  369.     need it in the following step.  Delete the dict definition, making
  370.     the line look like this:
  371.  
  372.         $CyrillicGothic begin
  373.  
  374.     2.  Go back to the beginning of the file.  near the top of the
  375.     font program, find the following lines:  
  376.  
  377.         userdict/Fog3.1 known{{currentfile(   )readstring
  378.             {(%%%)eq{exit}if}{pop exit}ifelse}loop}if
  379.         userdict begin/Fog3.1 45 dict def Fog3.1 begin
  380.  
  381.     and replace them with these:
  382.  
  383.          /$CyrillicGothic 24 dict def
  384.         $CyrillicGothic begin/Fog3.1 45 dict def Fog3.1 begin
  385.  
  386.     The number before 'dict' (in this case, 24) is one greater than the
  387.     number you wrote down in the previous step.
  388.  
  389.     3.  Find the line that defines procedure BuildChar:
  390.  
  391.          /BuildChar{Fog3.1/BuildChar get exec}def
  392.  
  393.     and change it as follows:
  394.  
  395.           /BuildChar{1 index begin Fog3.1/BuildChar get exec end}def
  396.  
  397.     4.  Go to the end of the file.  The last line looks like this:
  398.  
  399.         /CyrillicGothic findfont/EFN get Fog3.1 begin{RF}forall end
  400.  
  401.     Delete it (or comment it out by placing one or more "%" in the
  402.      beginning of it).
  403.  
  404. The AFM file requires one adjustment.  Change the line
  405.  
  406.     EncodingScheme AppleStandard
  407.  
  408. to
  409.  
  410.     EncodingScheme AdobeStandardEncoding
  411.  
  412. This concludes conversion of a font generated by
  413. Fontographer version 3.1 or lower to work on the NeXT.  You
  414. may still need to make the changes described for version
  415. 3.2 and above, to make the font fit the NeXT font panel. 
  416.  
  417.  
  418. *** Subject: H10. What color printers (laser or otherwise) may be used with the NeXT?
  419.  
  420. The NeXT/Canon color printer, of course!
  421.  
  422. [heinz.in-berlin.de]:
  423.  
  424. With Dots Color, the HP DeskJet 500C can print in color
  425. *today*, under  NeXTStep 2.1, and it costs significantly
  426. less than $1000 (in Germany at  least). 
  427.  
  428. You can get more information from
  429.  
  430.     d'ART Software GmbH
  431.     Virchowstr. 17-19
  432.     W-2000 Hamburg 50
  433.     Germany
  434.     (+49 40) 380 23 - 0
  435.     (+49 40) 380 23 - 290 fax
  436.     software@dart.de
  437.  
  438.  
  439. ---
  440. Editor:
  441. Nathan Janette nathan@laplace.csb.yale.edu
  442.