diff options
Diffstat (limited to 'Master/texmf-dist/doc/latex/webguide/webguide.tex')
-rw-r--r-- | Master/texmf-dist/doc/latex/webguide/webguide.tex | 615 |
1 files changed, 615 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/latex/webguide/webguide.tex b/Master/texmf-dist/doc/latex/webguide/webguide.tex new file mode 100644 index 00000000000..4b22433386e --- /dev/null +++ b/Master/texmf-dist/doc/latex/webguide/webguide.tex @@ -0,0 +1,615 @@ +% webguide.tex Guide to LaTeX, STEP and the Web, etc + +\documentclass[11pt]{article} + +% a11pream.tex generic preamble +\usepackage{url} +%\usepackage{ltx2html} +\setlength{\textheight}{8.0in} +\setlength{\textwidth}{6.0in} +\setlength{\oddsidemargin}{0.25in} +\setlength{\evensidemargin}{0.25in} +\setlength{\marginparwidth}{0.6in} +\setcounter{secnumdepth}{4} +\setcounter{tocdepth}{4} + +%% \usepackage{times} + +\newif\ifpdf +\ifx\pdfoutput\undefined + \pdffalse +\else + \pdftrue +\fi + +\ifpdf + \pdfoutput=1 + \usepackage[pdftex]{graphicx} +\else + \usepackage{graphicx} +\fi + +\newcommand{\file}[1]{\textsf{#1}} +\newcommand{\program}[1]{\texttt{#1}} +\newcommand{\package}[1]{\texttt{#1}} +\newcommand{\mpost}{\textsc{MetaPost}} +\newcommand{\mfont}{\textsc{metafont}} +\newcommand{\Han}{H\`{a}n Th\^{e} Th\`{a}nh} +\newcommand{\tex}{TeX} +\newcommand{\latex}{LaTeX} + +\title{A Brief Guide to \latex{} Tools for Web Publishing} +\author{Peter R. Wilson\thanks{With helpful critiques by +Eitan Gurari (\texttt{gurari@cis.ohio-state.edu}) and +David Wilson (\texttt{davidw@utopiatype.com.au}).} \\ + \texttt{peter.r.wilson@boeing.com}} +\date{11 March 2000} + +\begin{document} +\pagestyle{headings} +\pagenumbering{roman} +\maketitle +\begin{abstract} +This document provides a brief guide to converting \latex{} documents +to forms more suitable for dissemination via the Web. +\end{abstract} +\tableofcontents +\listoffigures +\clearpage +\pagenumbering{arabic} + +\section{Introduction} + + Publishing on the Web has rapidly achieved significant importance, +for example, the International Organization for Standardization (ISO) +is moving towards electronic forms of International Standard documents +that are suitable for publishing on the Web, and in particular, documents +as PDF or HTML files rather than their traditional request for camera-ready +paper copy. + + Documents written using \latex~\cite{LAMPORT94} tagging can be +easily converted to +PostScript, PDF and HTML, all from the single electronic source. This +guide briefly notes some of the ways that this can be accomplished. + Most of the programs and systems mentioned here are described in more +detail in~\cite{GOOSSENS99}. + + I have made no attempt to design this document for Web publication. The +typographical rules for printing on paper are well founded, having been +developed over hundreds of years. Display on computer screens is a +very different matter and requires a different set of rules, most of which, +as yet, are either in a state of flux or unavailable. For LaTeXers who +are interested in this topic I suggest a look at D.~P.~Story's work on +AcroTeX (\url{http://www.math.uakron.edu/~dpstory/acrotex.html}). Further, +for the example conversions I have used only the minimal tool options +necessary. Many of the tools have extensive capabilities which are well +documented in their accompanying user manuals; these should be consulted for +further information. + + +\subsection{URLs} + + I have tried to provide URLs for the programs and systems mentioned +here. Most \latex-related software is available from the Comprehensive +TeX Archive Network (CTAN). There are three sites, +\url{ftp://ctan.tug.org/tex-archive} in the USA, +\url{ftp://ftp.tex.ac.uk/tex-archive} in the UK, and +\url{ftp://ftp.dante.de/tex-archive} in Germany, as well as several mirror +sites. Usefully, the CTAN sites (but not necessarily a mirror site) supports +on-the-fly zipping of files and entire directories, which makes downloading +a group of files less tedious than having to get them one-by-one. Below, +I have used \url{ftp://ctan.tug.org/tex-archive} to stand for any of +the three CTAN sites. + + +\subsection{Disclaimer} + + Nothing that is said in this document is meant to imply any endorsement +or recommendation, either +positive or negative, concerning any systems or programs mentioned herein. + + Many of the systems or programs are `free' in the sense that they are +either public domain or their licences are roughly equivalent to the GNU +Public License. +Others are either commercial or have more restricitive +licenses or may require payment. Where known, programs and systems that are +not `free' are noted. + +\section{PDF} + + The traditional output from a \latex{} (e.g., \file{*.tex}) file is +a `device independent' \file{*.dvi} file. The \file{*.dvi} file is then processed further to convert +it to a format suitable for printing on a particular printing device. +In the vast majority of cases the final printable format +has been PostScript, obtained by running the \file{*.dvi} file through a +program like \program{dvips}, to generate a \file{*.ps} file. + + PostScript was developed by Adobe Systems. The Portable Document +Format (PDF) has since also been developed by Adobe, and seems to be +overtaking PostScript as the format of choice for printing, and especially +for display via the Web. + + DVI and PDF are somewhat similar in that they both describe where +(electronic) ink is to be put on (electronic) paper. PostScript also +does this but at the same time it is a complete programming language. +This means that it is inherently more difficult, time consuming, and computer +intensive, to process PostScript than either DVI or PDF. This is probably +the reason behind the popularity of PDF on the Web. + + There are now several methods of producing a PDF (e.g., \file{*.pdf}) +file from \file{*.tex}. These include: +\begin{itemize} +\item Converting from PostScript to PDF; + from \file{*.ps} to \file{*.pdf}. +\item Generate PDF from the device independent file; + from \file{*.dvi} to \file{*.pdf} +\item Generate PDF directly from the \latex{} source; + from \file{*.tex} to \file{*.pdf}. +\end{itemize} + + +\subsection{From PostScript to PDF} + + There are basically two routes to getting from PostScript to PDF. The +first of these is to use Acrobat software from Adobe Systems, which +essentially means the commercial \program{Distiller} program. +\program{Distiller} can read in a PostScript file and output a PDF file +where the visual results of printing the two files are identical. This, +or any other, PDF file can be viewed and/or printed via the charge-free +Acrobat \program{Reader} program. Note that when using \program{Reader} +the `fit to paper' option may alter the page layout, for example by changing +the height of the text block. + + + The second route is to use a non-Adobe converter program, +like \program{Ghostscript} which runs on nearly all operating systems and +which is obtainable from +\url{http://www.cs.wisc.edu/~ghost}. The \program{Ghostscript} distribution +comes with a script called \program{ps2pdf} which performs the conversion. +The distribution also provides the popular \program{Ghostview} program, +which is a viewer for both PostScript and PDF files. + + Another +converter program, which does have some licensing conditions that may not +be suitable for all users, is \program{PStill}; it is available from +\url{http://www.this.net/~frank/pstill.html}. + +\subsection{From DVI to PDF} + + Mark Wicks' \program{dvipdfm} program +(\url{http://odo.kettering.edu/dvipdfm}) converts a \file{*.dvi} file to a +\file{*.pdf} file. The program is used in the same manner as \program{dvips} +and provides similar capabilities. + + PostScript illustrations are handled in one of two ways. Simple PostScript +generated by the \mpost{} program~\cite{HOBBY92} is included natively. +Any other PostScript file is first converted to PDF by using an external +program like \program{Ghostscript} and then inserted +into the output file. Illustrations in PDF, PNG and JPEG formats require +no external aids. + + \program{dvipdfm} is written in C but there are some binaries for Linux +systems. + + +\subsection{From LaTeX to PDF} + + The \program{pdfLaTeX} program being developed by \Han{} is a modified +version of \tex{} that generates \file{*.pdf} instead of \file{*.dvi} output +files. \program{pdfLaTeX} is distributed with many of the free \latex{} +distributions, and is also obtainable from +\url{ftp://ftp.cstug.cz/pub/tex/local/cstug/thanh}, although it may be +better to try \url{ftp://ctan.tug.org/tex-archive/systems/pdftex}. + + Running \program{pdfLaTeX} is very similar to running \latex, but some +minor changes are required to the \file{*.tex} file. For example: \label{code:example} +\begin{verbatim} +% example.tex example latex file +\documentclass[...]{...} +\newif\ifpdf +\ifx\pdfoutput\undefined + \pdffalse +\else + \pdftrue +\fi + +\ifpdf + \pdfoutput=1 +% \usepackage[pdftex]{graphicx} % uncomment if using graphicx +% \usepackage[pdftex]{hyperref} % uncomment if using hyperref +\else +% \usepackage{graphicx} % uncomment if using graphicx +% \usepackage{hyperref} % uncomment if using hyperref +\fi +.... +\end{verbatim} + +Running \\ +\texttt{latex example} \\ +will produce \file{example.dvi}, while running \\ +\texttt{pdflatex example} \\ +will produce \file{example.pdf}. It is thus very easy to generate both +\file{*.dvi} and \file{*.pdf} from the same \latex{} source file. + + \program{pdflatex} will handle graphics files in the following formats: +PDF, PNG, JPEG and TIFF, but notice that (Encapsulated) PostScript is +missing from this list. However, it can handle directly the simple +Encapsulated PostScript output by \mpost~\cite{HOBBY92}. +It does, though, expect \mpost{} files to have a \file{.mps} extension. +To include PostScript from other sources it is necessary to convert the +PostScript to PDF. + + \program{pdftex}, and hence \program{pdflatex}, has some extra +primitive commands +that are not available in \tex{} itself specifically for accessing aspects +of the PDF format, for example to create hypertext links, bookmarks or +article threads. Consult the manual for details. + + Independently of \program{pdflatex} the \package{hyperref} package +(\url{ftp://ctan.tug.org/tex-archive/macros/latex/contrib/supported/hyperref}) +extends the functionality of the \latex{} cross-referencing commands to +include hypertext links, and also ad hoc hypertext links to, for example, +external documents and URLs. + +\subsection{Fonts} + + The normal fonts used with \latex{} are the Computer Modern family +developed by Knuth using \mfont~\cite{KNUTH86b}. +All \mfont{} fonts are in the form of +bitmaps, which is unfortunate when it comes to PDF. Typically, PDF will +only use one size of each font for a document, and will scale this if +different font sizes are required. This normally works well as fonts +used with PDF are typically `Type~1' fonts (e.g., PostScript fonts) +which are designed to be scaleable. Bitmap fonts look terrible when scaled +or printed at a resolution that they were not designed for. + + In other words, expect bad results if you generate a PDF file with +the original Computer Modern fonts. + + Perhaps the easiest method of dealing with this is to use the most common +PostScript fonts, namely Times, Courier and Helvetica. All that is +necessary is to add \verb|\usepackage{times}| to the document's preamble. + + Alternatively, if you need to use the CM fonts, perhaps because a lot +of mathematics is involved, many \latex{} distributions include +Type~1 versions of the CM fonts. If you don't have them they can be found at +\url{ftp://ctan.tug.org/tex-archive/fonts/cm/ps-type1/bluesky} and +at \url{ftp://ctan.tug.org/tex-archive/fonts/amsfonts/ps-type1} for the AMS fonts. + + Goossens \textit{et al.} provide useful and general information +on installing and using different fonts with \latex~\cite{GOOSSENS94}, +while for the fontophile, Alan Hoenig~\cite{HOENIG98} delves much +more deeply into the installation of PostScript fonts. + + \tex{} doesn't care about the particular shape of any glyph, nor how it +is constructed or represented, it only cares about the space occupied by +each character (i.e., the \file{*.tfm} files). +It is the DVI processor that needs to know in detail +about the fonts in a document. So, the DVI processor has to be told to +use Type~1 CM PostScript fonts. +The following is for the \program{dvips} program. +For convenience, let \path{$TEXMF} stand for the root of the +\path{texmf} tree (e.g., \path{/usr/teTeX/texmf}). + + \program{dvips} looks in the \path{$TEXMF/dvips/base/psfonts.map} +to see if it can use any PostScript fonts. This file starts off something +like: +\begin{verbatim} +bchb8r CHarterBT-Bold "TeXBase1Encoding ReEncodeFont" <8r.enc <bchb8a.pfb +... +\end{verbatim} +To get \program{dvips} to use Type~1 versions of the CM fonts, additional +lines must be added to \file{psfonts.map} giving similar information about +the fonts. The specification for CM fonts is simpler and consists of +lines like: +\begin{verbatim} +cmb10 CMB10 <cmb10.pfb +cmbsy10 CMBSY10 <cmbsy10.pfb +... +\end{verbatim} +In the version of \program{teTeX} that I use, this information is in +files \file{bsr.map}, \file{bsr-interpolated.map}, \file{cmcyr.map}, +\file{hoekwater.map}, and \file{pl.map}, all in directory +\path{$TEXMF/dvips/config}. + + These files can either be copied by hand to the \file{psfonts.map} +file in \path{$TEXMF/dvips/base} or in a modern \program{teTeX} +distribution (which should also have all the CM Type~1 font data) it +is easiest to do the following: +\begin{itemize} +\item In directory \path{$TEXMF/dvips/config} copy the script file + \path{updmap} to, say, \path{updmap.orig}. +\item Edit \path{updmap} to comment the line \texttt{type1\_default=false} + and uncomment the line \texttt{type1\_default=true}. +\item Run the script via \texttt{./updmap}. +\end{itemize} + + Another more general method is to edit the file \file{config.ps} in +directory \path{$TEXMF/dvips/config} and at the appropriate place (which +should be marked, but in any case after the line \texttt{p psfonts.map}) +add lines like: +\begin{verbatim} +p +bsr.map +p +bsr-interpolated.map +... +\end{verbatim} + + Another option when using \program{dvips} which avoids all of the above, +is to call it with options, like: \\ +\verb|dvips -Pamz -Pcmz -Ppdf -j0 [other options] filename| \\ +and then use your prefered \file{*.ps} to \file{*.pdf} conversion process. + +\subsection{MetaPost} + + John Hobby's \mpost{}~\cite{HOBBY92} is a language based drawing program +based on Knuth's \mfont~\cite{KNUTH86b}. \mfont{} was principally designed +for creating fonts, and generates bitmapped output, while \mpost{} is +principally for drawing general line illustrations and its output is a +particularly simple form of Encapsulated PostScript. + + +\begin{figure} +\centering +\ifpdf + \includegraphics{expeg6.mps} +\else + \includegraphics{expeg.6} +\fi +\caption{Metapost illustration of an \textsc{express-g} diagram} + \label{fig:mp} +\end{figure} + + This is not the place to describe \mpost, but it can generate several +output files, one for each drawing, from a single input file called, say, +\file{fred.mp}. The output files have a numeric extension correspond to the +number of the drawing. So, for example, it may generate files \file{fred.1}, +\file{fred.2} and \file{fred.3}. For a document that is to be processed via +\program{LaTeX} these files can be included as is. However, for processing +through \program{pdfLaTeX}, the files must have a \file{.mps} extension; for +example \file{fred1.mps}, \file{fred2.mps} and \file{fred3.mps}. + + Figure~\ref{fig:mp} is a \mpost{} illustration that is included in +this document by the code: +\begin{verbatim} +\begin{figure} +\centering +\ifpdf + \includegraphics{expeg6.mps} +\else + \includegraphics{expeg.6} +\fi +\caption{Metapost illustration of an \textsc{express-g} diagram} + \label{fig:mp} +\end{figure} +\end{verbatim} +where \file{expeg6.mps} is a copy of \file{expeg.6}, +to cater for processing by either \program{LaTeX} or \program{pdfLaTeX}. +Actually, the following will also work: +\begin{verbatim} +\begin{figure} +\centering +\includegraphics{expeg6.mps} +\caption{Metapost illustration of an \textsc{express-g} diagram} + \label{fig:mp} +\end{figure} +\end{verbatim} + +The figure demonstrates part of the capabilities of the +\program{expressg} \mpost{} +package (\url{ftp://ctan.tug.org/tex-archive/graphics/metapost/contrib/macros/expressg}) for +drawing diagrams consisting of boxes, lines and annotations, such as flowcharts +or ER diagrams. + + +\section{HTML} + + There are a number of systems that convert a \latex{} tagged document into +an HTML tagged document. These can be divided into two classes: +\begin{enumerate} +\item Systems that parse the \file{*.tex} file themselves. +\item Systems that use \tex{} as the file parser. +\end{enumerate} +There are several that do their own parsing, but only one that I know of that +uses \tex{} as the parser. + +\tex{} is a macro language and the meaning of existing +commands can be changed on the fly, and also new commands can be defined on +the fly~\cite{KNUTH84a}. +As perhaps the most extreme example of this is David Carlisle's +\file{xii.tex} \tex{} code, which is obtainable as +\url{ftp://ctan.tug.org/tex-archive/macros/plain/contrib/xii.tex}: \label{code:xii} +\begin{verbatim} +\let~\catcode~`76~`A13~`F1~`j00~`P2jdefA71F~`7113jdefPALLF +PA''FwPA;;FPAZZFLaLPA//71F71iPAHHFLPAzzFenPASSFthP;A$$FevP +A@@FfPARR717273F737271P;ADDFRgniPAWW71FPATTFvePA**FstRsamP +AGGFRruoPAqq71.72.F717271PAYY7172F727171PA??Fi*LmPA&&71jfi +Fjfi71PAVVFjbigskipRPWGAUU71727374 75,76Fjpar71727375Djifx +:76jelse&U76jfiPLAKK7172F71l7271PAXX71FVLnOSeL71SLRyadR@oL +RrhC?yLRurtKFeLPFovPgaTLtReRomL;PABB71 72,73:Fjif.73.jelse +B73:jfiXF71PU71 72,73:PWs;AMM71F71diPAJJFRdriPAQQFRsreLPAI +I71Fo71dPA!!FRgiePBt'el@ lTLqdrYmu.Q.,Ke;vz vzLqpip.Q.,tz; +;Lql.IrsZ.eap,qn.i. i.eLlMaesLdRcna,;!;h htLqm.MRasZ.ilk,% +s$;z zLqs'.ansZ.Ymi,/sx ;LYegseZRyal,@i;@ TLRlogdLrDsW,@;G +LcYlaDLbJsW,SWXJW ree @rzchLhzsW,;WERcesInW qt.'oL.Rtrul;e +doTsW,Wk;Rri@stW aHAHHFndZPpqar.tridgeLinZpe.LtYer.W,:jbye +\end{verbatim} +If you run this through \tex{} (not \latex) I'm sure you will be surprised at +the result. + + There is inevitably a problem when converting from \latex{} to HTML for +a document that includes figures/illustrations or anything more than the +most simple mathematical +typesetting as, basically, HTML provides no support. Typically, mathematics +and illustrations, are converted to a picture format and then +inserted into the HTML document as graphics, usually with a very poor +appearance. + + However, for mathematics the situation is starting to change +because of the advent of MathML (\url{http://www.w3.org/TR/MathML2}). +In particular the Milestone~13 release +of Mozilla (\url{http://www.mozilla.org/binaries.html}) +is a MathML-enabled browser. Some examples, generated by \program{TeX4ht}, +are available at \url{http://www.maths.ox.ac.uk/~gartside/mozSuccess}. + + All the systems generate HTML tagged documents, with the particular tagging +`style' set by the system. It is advantageous to use a converter which either by +default generates your desired style, or which can be modified in some manner +to do so. + +\subsection{Self-parsing systems} + + The self-parsing systems incorporate their own parsers for the \tex{} +language. In essence, this means that they `know' the meaning of common +\tex{} commands, but probably not all possible commands. +It is advantageous to use a system that can be +extended to deal with commands that were not anticipated by the author. + + The only system I am familiar with in this class is Peter Wilson's +\program{ltx2x} program (\url{ftp://ctan.tug.org/tex-archive/support/ltx2x}). +This program works by replacing known \latex{} +commands, and their arguments, by user-specified text strings~\cite{PRW96h}. +It is unable +to handle anything more than very simple mathematics and ignores any pictures. +The user-specified command texts are kept in a simple command-table file. +Within limits, new \latex{} commands and environments may be specified +within a command-table file and the command texts modified. The \program{ltx2x} +program has been used to `detex' (i.e., remove all \latex{} commands) files, +convert to HTML, and convert to SGML. It cannot convert to XML due to a +yet to be resolved technical problem in dealing with end of paragraph tags. +The program is written in C and so requires a C compiler for installation. +The system can be extended via some C programming, in which case +the \program{flex} and \program{bison} programs are also required. +There is no chance that \program{ltx2x} would ever make any sense whatsoever +of \file{xii.tex} on page~\pageref{code:xii}. + + Perhaps the most venerable system is the \program{LaTeX2HTML} +system (\url{http://www-texdev.mpce.mq.edu.au/l2h/docs/manual} +or \url{ftp://ctan.tug.org/tex-archive/support/latex2html}), originally +by Nikos Drakos and now maintained by Ross Moore and others. This system +is written using \program{Perl} (\url{ftp://ftp.uu.net/languages/perl}). +It also requires a database management system such as the Unix DBM or NDBM, +or the GNU GDBM system. Further, it requires \program{Ghostscript} and +the \program{netpbm} library of graphics utilities +(\url{ftp://ftp.x.org/contrib/utilities}). To extend or change the default +conversion style requires, I think, some Perl programming. A fuller description +and examples are given in~\cite{GOOSSENS99}. + + Another converter is the \program{TtH} program by Ian Hutchinson +(\url{http://hutchinson.belmont.ma.us/tth}) which is cost-free for +non-commercial use; commercial use in this case is roughly by anyone who gets +paid while using it +(but see \url{http://hutchinson.belmont.ma.us/tth/tth-commercial/email.html} +for the actual wording). There is also another version, \program{TeX2HTML} +(\url{http://www.tex2html.com}) which is the `commercial GOLD version of +the freeware \program{Tth} by Ian Hutchinson'. These programs run on the usual +range of operating systems. An example of the output from \program{TtH} is +given in~\cite{GOOSSENS99}. + +\subsection{TeX-based parsing system} + + Eitan Gurari's \program{TeX4ht} system appears to be unique in that +it uses \tex{} as the parser for the \latex{} document and instead effectively +takes the \file{*.dvi} file as its starting point for conversion to HTML. +That is, it does not have to understand \tex{} code and can, in fact, convert +David Carlise's \file{xii.tex} (page~\pageref{code:xii}) to HTML. +The system is available from +\url{http://www.cis.ohio-state.edu/~gurari/TeX4ht/mn.html}. It consists of +two C programs, one package file, and a set of \file{*.4ht} configuration +files, one for each of the typical LaTeX{} classes and packages. It also +requires ImageMagick +(\url{http://www.wizards.dupont.com/cristy/www/archives.html}) for handling +illustrations and non-simple mathematics. +Simply speaking, the system +is extended by writing new \file{*.4ht} file(s) and its output modified +by writing simple \file{*.cfg} file(s) that override the \file{*.4ht} file(s). +At the moment, the best and most detailed description is given +in~\cite{GOOSSENS99}. + + By default, \program{TeX4ht} can generate a non-tagged file or a file +tagged with either HTML3.2 or HTML4.0. By writing appropriate \file{*.cfg} +files it can be made to generate XML tagged files. The system comes with a +script called \program{htlatex} which controls the conversion process from +\latex; there is also the \program{httex} script for converting a \tex{} document. +For instance, to convert the earlier example LaTeX{} file, +\file{example.tex} (page~\pageref{code:example}), + to an HTML4.0 tagged document, it is enough to run: \\ +\texttt{htlatex example} \\ +which will then output \file{example.html}. Similarly, to convert +\file{xii.tex} just run: \\ +\texttt{httex xii}. + +\section{Examples} + + Hopefully, you should find several versions of this document, all of +which have been generated from a single source file. These are: +\begin{itemize} +\item \file{webguide.tex} --- the \latex{} source. +\item \file{webguide.ps} --- A PostScript version from running + \program{latex} and \program{dvips} on \file{webguide.tex}. +\item \file{webguide.pdf} --- A PDF version from runnning + \program{pdflatex} on \file{webguide.tex}. +\item \file{webguide.html} --- A HTML4.0 version from running + \program{htlatex} on \file{webguide.tex}. +\end{itemize} + The HTML version uses the GIF file +\file{webguide0x.gif} for the illustration; the file is automatically +generated by \program{tex4ht} using the ImageMagick \program{convert} +program. The quality of the picture in the viewed document depends on +the particular viewer; different versions of Netscape, for example, +may display and print the diagram with very different rendering qualities. +I asked TeX4ht to generate this particular figure at 180dpi instead of +the default 110dpi to improve the quality. + + +\bibliographystyle{alpha} +%%\bibliography{refs,prw} + +\begin{thebibliography}{GMS94} + +\bibitem[GMS94]{GOOSSENS94} +Michel Goossens, Frank Mittelbach, and Alexander Samarin. +\newblock {\em The LaTeX Companion}. +\newblock Addison-Wesley Publishing Company, 1994. + +\bibitem[GR99]{GOOSSENS99} +Michel Goossens and Sebastion Rahtz. +\newblock {\em The LaTeX Web Companion -- Integrating TeX, HTML, and XML}. +\newblock Addison-Wesley Publishing Company, 1999. +\newblock (with Eitan Gurari, Ross Moore, and Robert Sutor). + +\bibitem[Hob92]{HOBBY92} +John Hobby. +\newblock {\em `{A User's Manual for MetaPost}'}. +\newblock Technical Report 162, AT\&T Bell Laboratories, Murray Hill, NJ, 1992. + +\bibitem[Hoe98]{HOENIG98} +Alan Hoenig. +\newblock {\em TeX Unbound -- LaTeX and TeX Strategies for Fonts, Graphics, \& + More}. +\newblock Oxford University Press, 1998. + +\bibitem[Knu84]{KNUTH84a} +Donald~E. Knuth. +\newblock {\em The TeXbook}. +\newblock Addison-Wesley Publishing Company, 1984. + +\bibitem[Knu86]{KNUTH86b} +Donald~E. Knuth. +\newblock {\em The METAFONTbook}. +\newblock Addison-Wesley Publishing Company, 1986. + +\bibitem[Lam94]{LAMPORT94} +Leslie Lamport. +\newblock {\em LaTeX: A Document Preparation System}. +\newblock Addison-Wesley Publishing Company, second edition, 1994. + +\bibitem[Wil96]{PRW96h} +Peter~R. Wilson. +\newblock {\em {ltx2x: A LaTeX to X Auto-tagger}}. +\newblock NIST Report NISTIR, June 1996. + +\end{thebibliography} + + +\end{document} + |