[comp.fonts] 1st word on Output Devices and conversions

edwards@dogie.edu ( Mark Edwards) (02/06/89)

(I know I have sent this to multiple groups. The purpose is for the 
 widest possbile exposure. )

Many times I have read articles from various people on the Usenet 
requesting information on availability of different computer related
things/information (for example programs, specificatons, printer fonts,
etc.). I too have asked for such things. A while back I asked comp.os.vms
for an example of a print symbiont for VMS, and more recently I asked 
the same group how they hooked up PostScript printers to their Vaxes.
Unfortunately for me there was no response to either inquiry. However
just last week I inferred the existance of such a program from an 
article posted to that group. I ftped it, compiled and linked it, and
am quite satisfied with it. I estimate that program saved me many tens
of hours of work and frustrations (VMS system services and utilities are
loads of fun). 

The following is a start of something that I think will be generally useful 
to many people. Its mostly about output devices and conversions. I have started
a small glossary of related terms also. I can envision lots of directions this
might go off in. And as of yet haven't ruled anything out. At the moment it is
only sketchy at best and I am inviting comments, suggestions, addition, 
general format changes, flames, or anything at all to help improve the list.

Thank you
mark 

Internet: edwards@vms.macc.wisc.edu
Bitnet:	  edwards@wiscmacc
UUCP:	  {}!uwvax!macc.wisc.edu!edwards
==================== Cut Here ================================================


		The Last Word on Output and Conversions

			    4 Feb 1989


0. Commentary

This whole thing started while I was investigating how to use TeX
with an Apple Laserwriter. Using the TugBoat Journal (?) I found that
Nelson Beebe had a driver for the Apple Laserwriter for VMS. I ftp'ed
it and was quite happy to get "postscript" output from my dvi file. 
As far as I know this driver uses Computer Modern fonts only. I didn't
particularily care for the output and it creates large files that contain
fonts to download to the laserwriter. 

I asked comp.text for a driver that used postscript fonts and soon was
ftping around the country for various drivers. The first one I found
that seemed to be what I want was "psdvi" which I got from 
june.cs.washington.edu It included the postscript tfm fonts also. I converted
the program to run under VMS and got some output. Looked great. But....
I then found out that it chokes on mathmetics. This just wouldn't do. 
A driver I found at uxc.cso.uiuc.edu (dvi2ps) seems to allow usage of
both the postscript fonts and the cm fonts for math and seems to be the
best candidate to convert to VMS. (It sure would solve many problems if I
were just using a Unix machine. Oh well.) During this process I picked up 
lots of other information and decided to write it down before it got filed 
in some forgotten place.

1. Introduction

The sum total of all the computer know how available on the net through
netnews or stored in ftpable archives (or other archives) is mindboggling.
However there are many great hurdles in sorting out all the information
available. One of the biggest obstacles is just gathering the relevant
information, whether it be in netnews or in some archive some where. The
task of discovering where some of the ftp archives sites are was made
slightly easier last December upon the posting of an article that listed
the various sites across the country and what kinds of programs the archive
excels in (by  Edwards Vielmetti  emv@starbarlounge.cc.umich.edu).

This is my attempt at compiling information about output devices
and such things. What I mean by output devices are display terminals,
laser printers, and typesetters. The kinds of information that you will
find here is about typesetting, fonts, converting some type of font
to another, converting device independent files to device dependent files,
converting various ways of storing pictures to postscript and so. I have
also started a small glossary of important or useful terms to help aide in
understanding. I orignally posted parts of this list in comp.fonts and 
comp.text. But it has grown and includes information that pertains to other 
groups now. 

Please send all correspondence to me and I will post a new updated list 
every once in a while. (If enough interest develops I may even offer 
various formated versions.)

Thank you
mark 

Mark Edwards
Systems Programmer
University of Wisconsin -MACC
1210 W. Dayton St
Madison, Wisconsin 53706

Internet: edwards@vms.macc.wisc.edu 
Bitnet:	  edwards@wiscmacc
UUCP:	  {}!uwvax!macc.wisc.edu!edwards


1.0 Text Processing

1.1 List of formating and/or typesetting program

Program                 Operating System(s)
------------------------------------------------------------
TeX			Most operating systems
troff  (ditroff)	Unix based
Scribe			???
Runoff			VMS, TOPS-10, TOPS-20 (or DSR (DEC Standard Runoff))  
WordPerfect 5.0         PC, Macintosh, VMS
MS-Word 4.0             PC, Macintosh
Ventura Publisher       PC, Macintosh 
Aldus Pagemaker     	PC, Macintosh

1.2 Programs to translate from one text processing language to another

 Both of these programs claim a 90% translate rate. 

s2latex			Scribe to Latex
tr2tex 			troff to Latex

1.3 Programs that can generate dvi files

TeX
Ditroff

1.4 Programs to translate the TeX dvi files into device dependant files

dvi2ps		dvi to postscript (Uses CM fonts for math) (Unix)	
		(many versions. Most recent at a.cs.uiuc.edu ??)
dvialw          dvi to PostScript (Uses CM fonts only, no postscript)
dvibit          dvi to Version 3.10 BBN BitGraph terminal
dvican          dvi to Canon LBP-8 A2 laser printer
dvigd           dvi to Golden Dawn Golden Laser 100 printer
dviimp          dvi to Imagen imPRESS-language laser printer family
dvijep          dvi to Hewlett-Packard Laser Jet Plus
dvijet          dvi to Hewlett-Packard Laser Jet
dvil3p          dvi to DEC LN03 Plus laser printer
dvil75          dvi to DEC LA75 144 dpi printer
dvim72          dvi to Apple Imagewriter 72 dpi printer
dvimac          dvi to Apple Imagewriter 144 dpi printer
dvimpi          dvi to MPI Sprinter 72 dpi printer
dvio72          dvi to OKIDATA Pacemark 2410 72 dpi printer
dvioki          dvi to OKIDATA Pacemark 2410 144 dpi printer
dviprx          dvi to Printronix 60h  x  72v dpi printer
dviqms		dvi to quic (QMS 800/1200 laser printer language) (VMS)
dvitos          dvi to Toshiba P-1351 180 dpi printer
psdvi		dvi to postscript (No math typesetting) (Unix, VMS)
settex		dvi to compugraphics 8600  (VMS)

1.5 Programs to translate troff output file into device dependant files

troff2lj	troff output to HP laserjet (Unix)


2. Font Information

2.1  List of currently known fonts

Font             Description
------------------------------------------------------------
bdf            - binary distribution format  (Adobe Systems and X11)
fon            - raster and stroke fonts (MS-Windows)
gf             - generic font  (TeX)
hershey        - stroke (vector) fonts
onx	       - ???    (X10. Still supported by some vendors)
pk	       - packed (TeX)
pxl            - pixel (TeX)
rst	       - raster (Downloaded to some Imagen printers)
snf	       - server natural format (X11) 
Postscript     - Adobe Systems 
vfont          - Versatec font  (used by SunView and Berkeley (BSD 4.x))
HP LaserJet  ??
Macintosh    ??

2.2 More indepth description of font

2.2.1 Hershey Fonts: (excerpted from distribution found at ????)

	- are a set of more than 2000 glyph (symbol) descriptions in vector 
		( <x,y> point-to-point ) format
	- can be grouped as almost 20 'occidental' (english, greek,
		cyrillic) fonts, 3 or more 'oriental' (Kanji, Hiragana,
		and Katakana) fonts, and a few hundred miscellaneous
		symbols (mathematical, musical, cartographic, etc etc)
	- are suitable for typographic quality output on a vector device
		(such as a plotter) when used at an appropriate scale.
	- were digitized by Dr. A. V. Hershey while working for the U.S.
		Government National Bureau of Standards (NBS).

2.2.2 vfont 

	Font formats for the Benson-Varian or Versatec. 

	Bitmapped. Found on BSD and Sun Unix systems.

2.3 Font Metrics

2.3.1 List of types of Font Metrics

Font Metric     Description
-------------------------------------------------------------
afm              - Adobe Font Metric
pl               - property list (human readable format)
psfm		 - Postscript Font Metric 
tfm              - TeX Font Metric

2.3.2 List of programs to generate Font Metric information

Program       Font Metric      Description
--------------------------------------------------------------
MetaFont       tfm             (TeX)   (also generates gf font files)
afmtopl				afm to property list
pltotfm                         Property list to tfm
tftopl				tfm to property list

2.3.3 List of programs to convert one type of font to another

Program               Description
----------------------------------------------------------------
bdf2gf	               bdf to gf
bdf2vf		       bdf to vfont
bdftosnf	       bdf to snf  (X-window Utility)
gftopk                 gf to pk
gftopxl                gf to pxl
her2vfont	       hershey to vfont
mac2bdf                Macintosh font to bdf
pktogf                 pk to gf
pktopx                 pk to pxl
pxtopk                 pxl to pk
vf2bdf                 vfont to bdf

2.3.4 Notes

Note: ( From: "ken@cs.rochester.edu"  "Ken Yap" 27-JAN-1989 18:56)

Keep in mind that font metrics are not completely divorced
from the font bitmaps or outlines.  The metrics describe the ideal,
scalable dimensions, while the bitmap files have the actual pixel
widths.  Metrics files are used to describe families of fonts such as
TeX and PostScript fonts. Fonts for screens generally only have pixel
widths.

3.0 PostScript

3.1 Programs to convert to postscript

Program and Brief Discription

cif2ps		CIF to postscript (Unix)
ccps            Calcomp Standard plots to postscript (calcomp2ps) (Unix)
ditroff-to-ps	ditroff output to postscript (Unix)
dvi2ps 		dvi (TeX)  file to postscript (Uses CM fonts for math)	(Unix)
giftops		GIF format files to postscript
psdvi		dvi (TeX) to postscript (No math typesetting) (Unix, VMS)
sun2ps		Sun raster file to postscript (SUN)
sxlps     	convert SIXEL graphics format to PostScript (VMS)
tek2ps		tektronix (4014) style plots to postscript
tif2ps		tiff to postscript  (Unix, MS-Dos (MSC5.0))
zeta2ps         translate Nicolet Zeta plots into PostScript (VMS, Unix)

3.2 Postscript previewing

Postscript can be previewed on the Sun, and the NeXT computers. There is
also a program avaibable that allows previewing on PC's with ega cards.

ghostscript	postscript interpreter for PC's with EGA cards

3.3 Postscript printer drivers/symbionts

 laser.c	print symbiont for VMS, available from texas

4. Where to get these programs

    Unfortunately or not some of the programs come bundled with other 
    software or the name of the archive is different. Next time I'll
    try to figure out some way to include this information also.


   a.cs.uiuc.edu		TeX sources (dvi2ps) ...
   science.utah.edu 		TeX sources, most of the dvi drivers
   simtel20.arpa		pd2:<unix-c>, various TeX, Postscript sources
   sun.soe.clarkson.edu		fonts for X11, TeX sources
   utadnx.cc.utexas.edu		VMS sources (zetaps, laser, sxlps)
   uunet.uu.net			TeX sources, most of the postscript sources


Appendix A     Glossary of Terms

  The words in this glossary should be related to output devices. I
can forsee the need to include the various names of windowing packages
and what form of objects they display. For example NeWS is window system 
that displays a version of postscript on Sun Workstations, but not necessarily
compatible with NeXTstep which uses Display Postscript from Adobe.

Term		Brief definition/description

bitmap font	uses pattern of pixels for each character. With raster
		fonts there exists a different set of pixels for each
		character in every fonts size you want.
		Sometimes called raster

Display Postscript

EPS		encapsulated postscript

font		One complete set of characters in the same typeface
		and size.

gif		The following is an excerpt from the GIF image format 
		specification:

 SCREEN DESCRIPTOR

        The Screen Descriptor describes the overall parameters for all  GIF
   images  following.  It defines the overall dimensions of the image space
   or logical screen required, the existence of color mapping  information,
   background  screen color, and color depth information.  This information
   is stored in a series of 8-bit bytes as described below.

              bits
         7 6 5 4 3 2 1 0  Byte #
        +---------------+
        |               |  1
        +-Screen Width -+      Raster width in pixels (LSB first)
        |               |  2
        +---------------+
        |               |  3
        +-Screen Height-+      Raster height in pixels (LSB first)
        |               |  4
        +-+-----+-+-----+      M = 1, Global color map follows Descriptor
        |M|  cr |0|pixel|  5   cr+1 = # bits of color resolution
        +-+-----+-+-----+      pixel+1 = # bits/pixel in image
        |   background  |  6   background=Color index of screen background
        +---------------+          (color is defined from the Global color
        |0 0 0 0 0 0 0 0|  7        map or default map if none specified)
        +---------------+

glyph		a symbol that conveys information nonverbally. (Websters)

graphic font    See vector font.

pixel		the individual elements or dots of the digitized image.

raster font     See bitmap font.

ReGIS        	Remote Graphics Instruction Set. ReGIS is designed for 
		simple synthetic graphics; it has primitives for drawing 
		lines and curves, as well as its own set of characters.  

rtf		rich transfer format(??). MS-Word only (??).

sixel		The sixel protocol is mainly a way to encode a bitmap using 
		"printable" characters.  Essentially, you take a vertical 
		slice of 6 rows of the image, turn the resulting 6 bits on 
		their side, then shift them over into the printable range.  
		Repeat until you've finished all the columns; then move down 
		by 6 rows and repeat.  (The reason for this vertical slicing, 
		rather than the easier-to-handle horizontal slicing, is that 
		the sixel encoding was originally designed for simple, 
		memoryless dot-matrix printers, which need to print the data 
		as they receive it.)  There are some additional codes to 
		specify things like the resolution the creator of the file 
		used.  Color images are presented by sending over a couple of 
		bitmaps, one per color.
                (From: Jerry Leichter  LEICHTER@VENUS.YCC.YALE.EDU)

serif  		any of the short lines steemming from and at an angle
		to the upper and lower ends of the strokes of a letter.
		(Examples: Times, Courier)

sanserif	not serif. (Examples: Helvitica,) 

stroke		a mark or dash made by a single movement. One of the
		lines of a letter of the alphabet. (websters)

stroke font	see vector font.

tiff		tagged image file format

vector font	define lines that make up characters. Only need one
		set of characters for each font. They can be drawn
		at other sizes by varying the length of the lines.
		Vector fonts can be easily rotated and scaled.
		Sometimes called graphic fonts, or stroke font.

WYSIWYG         What you see is what you get. In typesetting it usually
   		refers to a particular word processing feature that 
		displays things on screen as if they were typeset or
		printed. TeX is not WYSIWYG while MS-Word is.


-- 
    edwards@vms.macc.wisc.edu
    UW-Madison, 1210 West Dayton St., Madison WI 53706