[comp.text] DVI to postscript converters...

piet@cs.ruu.nl (Piet van Oostrum) (09/22/89)

In article <426@laas.laas.fr>, ralph@nastassia (Ralph P. Sobek) writes:
 `In article <4861@uhccux.uhcc.hawaii.edu> lee@uhccux.uhcc.hawaii.edu (Greg Lee) writes:
 `|  From article <SPQR.89Sep14091859@hilliard.ecs.soton.ac.uk>, by spqr@ecs.soton.ac.uk (Sebastian Rahtz):
 `|  " 
 `|  "    Is there a newer version of a DVI to Postscript converter out there
 `|  "    anywhere?
 `|  
 `|  Yes.  A version of dvi2ps by Piet van Oostrum has some useful
 `|  new features.  I will have yet another version soon -- I'm working
 `|  out what I hope are the last few bugs.
 `|  

 `Oh my god!!  Another version?!!  I hope that there is someone to
 `coordinate all these versions.  We alone have 3 versions of dvi2ps.
 `Normally the most recent has 2.11 as version number.
 `

 `It's a shame that Piet van Oostrum did not add his interesting
 `modifications to the latest dvi2ps!  For example, dvi2ps already
 `accepts PK and GF font files and in seperate directories.
 `
 `Is someone (Piet?) willing to create dvi2ps 2.12?  Maybe, it already exists.
 `

Let me first tell, what I know about dvi2ps genealogy and how I got involved.
I started working on dvi2ps in May 1986, so my version has been around for
a resonable time. When we started using TeX, I encountered a couple of
problems:

1. We were using a VAX11/750 with Unix BSD 4.1. Our system manager didn't
want to switch to 4.2, and the dvi2ps I found on the Unix tape didn't work
on 4.1, so I had to patch the program anyway.

2. Our disk was almost full and couldn't take all of the PXL files, which
was the only font format supproted then by the supplied dvi2ps. So I
decided to add support for PK files. I think it is silly to use PXL files,
anyway. I just coded the algorithms from pktype into dvi2ps.

3. I found it very annoying that the LaserWriter run out of Virtual Memory
after 30-40 pages (sometimes even after a single page, if you had many
fonts. I think I really got upset when I wanted to print fontsamples of the
supplied fonts and couldn't get a page with every line a different font. So 
I added code that estimated how much memory was left in the LW, and if a
certain threshold was reached, no more characters were downloaded, but they
were printed on an individual basis. This has been very satisfactory
because we never run out of VM anymore. I also looked very carefully in the
supplied Postcript code and found a number of places where extra
save/restore pairs could decrease the amount of VM used.

These were the basic initial changes I made (along with a number of minor
cleanups). 

Later I added code to use Postscript fonts. I got this code from somebody
else, integrated it, cleaned it up and made it easily parametrizable.
The other changes were just useful options and bug changes. 

I have advertised the availability of my version on TeXhax, and a more
recent version on comp.text. Several people in Europe, USA and Australia
have received copies. My own version is now 2.48, and I have a few bug
patches waiting.

Apparently, other people were also working on different modifications of
dvi2ps. The versions of dvi2ps that float around, form a Directed Acyclic
Graph (actually, I'm not sure that it is acyclic :=).
The basic problem, I think, was that there was no means of finding out who
did what. TeXhax was the only way I had to find out what was going on.
There has been a discussion on merging the various versions of dvi2ps on
Texhax, and once it seemed that somebody was going to make a single version
with all the enhancements in it, but apparently that failed (I got this
info from Pierre MacKay)

I am not going to defend the fact that I have maintained a separate version
of dvi2ps. In fact when I saw the announcement of dvi2ps 4.0 by Tomas G.
Rokicki, I decided that it would be time to discontinue development of my
version. I have not yet seen his version (I can't FTP yet, so I have to
find it some other way). If it does have everything I need (and I suspect
it does) I will probably switch to his version. I will put the final bug
patches in my version, and I will spuuly it to anyone who wants it, but I
suggest that we agree on a single supported standard version of dvi2ps.
There seems to be also a version called dvitps by Stephan von Bechtolsheim,
but I don't know anything about it. Maybe these two gentlemen could even
agree on merging their programs? From what I have read these persons have
done a very good job.

The best way to standardize in my opinion is to keep the standard version up
to date on the Unix tape, and to distribute patches on Usenet or through a
mailing list.

I am willing to give my code, suggestions, etc to get a good standard
version, but I'm not going to reinvent the wheel. That is the primary
reason for me to stop enhancing dvi2ps 2.48.

I have cross-posted this to comp.text to get a greater audience, but
followups only to comp.lang.postscript. Should I also send something to
teXhax for those poor people without net.access?
-- 
Piet van Oostrum, Dept of Computer Science, University of Utrecht
Padualaan 14, P.O. Box 80.089, 3508 TB Utrecht,  The Netherlands.
Telephone: +31-30-531806      Internet: piet@cs.ruu.nl
Telefax:   +31-30-513791      Uucp: uunet!mcvax!hp4nl!ruuinf!piet

kevin@math.lsa.umich.edu (Kevin Coombes) (09/22/89)

Okay, here goes. I've spent the last few weeks working on merging several
versions of dvi2ps---namely, the three versions available at the
june.cs.washington.edu archive, by Larry Denenberg, Peter Damron, and
Jing-bai Wang. I also have Van Jacobson's version. I have a copy of
Tomas Rokicki's version 4.0 of dvips, but haven't yet had a chance to
look at it. The merge isn't yet complete, nor is it ready for general
consumption. Right now, it can use PK, GF, or PXL files (with the available
choices set at compile time), allows flexible organization of font
directories and supports environment variables to help with this. It
searches for fonts in a reasonable manner, and will use postscript to
rescale fonts if it can't find them in the right size. It supports
various specials, including psfig.

The point is: I'm willing to invest some more time in producing
version 3.0 (or whatever) of dvi2ps. I can see from this discussion that
there is some interest. What I'd like (by e-mail, and I'll post
summaries) is information on what other versions are available, how
to get them, and what features people most want to see. I have heard
of the following versions, but have not seen copies:
	dvitps	by Stephan von Bechtolsheim
	dvitops by James Clark
	dvi2ps  by Piet van Oostrum.
If anyone is interested in helping to produce a merged version of
dvi2ps, or in testing such a version if/when it becomes available,
I'd also appreciate hearing that.

Kevin Coombes
<kevin@math.lsa.umich.edu>
<Kevin_Coombes@ub.cc.umich.edu>