Introduction to LaTeX CPS470 Software Engineering Fall 1998

advertisement
Introduction to LaTeX
CPS470 Software Engineering
Fall 1998
Objectives

Learn how to create a simple LaTeX2e document:
 Create a LaTeX (tex) file.
 Create and include figures.
 Reference figures and sections.
 Create lists.
 Include other tex files.
 Generate a postscript file.
 Cite bibliographic references.
Fall 1998
CPS 470 Software Engineering
2
Introduction

Tex



Text processing system for documents with lots of math
Donald Knuth
Latex


Fall 1998
Document preparation system based on Tex formatter
Leslie Lamport
CPS 470 Software Engineering
3
References
LaTeX User’s Guide and Reference Manual;
Leslie Lamport
 The LaTeX Companion; Michel Goossens et. al.
 On-line documents.
(available from cps470 web page)

Fall 1998
CPS 470 Software Engineering
4
Files LaTeX Uses




Input source file (.tex).
Files containing structure and layout definitions
(.sty).
Tex formatted output file (.dvi).
Others:
.toc (table of contents), .lof (list of figures), .lot (list of
tables), .bib (bibliography)
Fall 1998
CPS 470 Software Engineering
5
Document Classes

Five standard document classes


article, report, book, slides, letter
Can be further customized


Fall 1998
Specifying class options.
Using additional packages
(epsfig for including postscript figures)
CPS 470 Software Engineering
6
Minimal LaTeX File
\documentclass[12pt]{article}
% comments...
\begin{document}
Text goes here…
\end{document}
Fall 1998
CPS 470 Software Engineering
7
More Complex LaTeX File
\documentclass[12pt]{article}
\usepackage{doublespace,epsfig}
\usepackage{../custom}
\begin{document}
\input{abstract}
\section{Sample Section}
\label{s:sample}
Text goes here...
\end{document}
Fall 1998
CPS 470 Software Engineering
8
Cross-references
(internal references)

\label{key-string}


\ref{key-string}


assigns the key key-string to the current element of the
document
inserts a string identifying the element to which keystring refers
\pageref{key-string}

Fall 1998
inserts the page number on which the element
referenced by key-string appears
CPS 470 Software Engineering
9
Cross-reference Example
Figure~\ref{f:figexample} in Section~\ref{s:sample}
is on page~\pageref{f:figexample}.
Figure 1 in Section 1 is on page 1.
Fall 1998
CPS 470 Software Engineering
10
Including Other LaTeX Files

Supports modularity



a single LaTeX document can consist of multiple
LaTeX files
useful for group work (many authors)
\input{LaTeX-file}


Fall 1998
used to include other Latex files
Latex filename is latex-file.tex
CPS 470 Software Engineering
11
Including a ps Figure
\begin{figure} [htbp]
\centerline{\epsfig{figure=figname.eps,
height=2.5in,silent=,clip=}}
\caption{\label{f:figexample} Example of a figure.}
\end{figure}
Fall 1998
CPS 470 Software Engineering
12
Making a List
\begin{itemize}
% \begin{enumerate}
\item Text for this item.
\item Text for this item.
\end{itemize}
% \end{enumerate}
Fall 1998
CPS 470 Software Engineering
13
Generating, Viewing, and Printing a
Postscript file





latex latex-file.tex
 generates latex-file.dvi
xdvi latex-file.dvi
 displays dvi file for preview
dvips latex-file.dvi > latex-file.ps
 generates postscript file
ghostview latex-file.ps
 displays postscript file
lpr -P <printer> latex-file.ps
 sends file to the specified printer
Fall 1998
CPS 470 Software Engineering
14
Generating ASCII Output

dvi2tty latex-file.dvi > file.text

Fall 1998
generates ASCII file of document for viewing
CPS 470 Software Engineering
15
Drawing Tools

xfig



For interactive generation of figures.
Must export encapsulated postscript files (eps).
idraw


Fall 1998
Interactive drawing tool.
Saves files automatically in postscript format.
CPS 470 Software Engineering
16
Snapshot



Used to capture a screen or a portion of the
screen (a window).
Saves file in raster format or postscript format.
ras2ps converts a Sun raster file to a postscript
file.
Fall 1998
CPS 470 Software Engineering
17
Advanced Features



Creating a table of contents
Creating a list of figures
Creating a .bib file and a bibliography
Fall 1998
CPS 470 Software Engineering
18
Table of Contents

Contains section headings and page number
where each section starts.

\tableofcontents
Causes LaTeX to generate a .toc file

Must run LaTeX on the file at least twice:


Fall 1998
On the first pass, LaTeX collects information
On the second pass, LaTeX reads back information
and typesets it.
CPS 470 Software Engineering
19
List of Figures

Contains caption text of the figures and page
number where each figure appears.

\listoffigures
 Causes LaTeX to generate .lof file.

As for the table of contents, must run LaTeX at
least twice.
Fall 1998
CPS 470 Software Engineering
20
Bibliographies and BIBTeX

Must create a bibliography “database”




.bib file
formatted by keyword, readable by BIBTeX
Bibliographies can have different formats yet the
same .bib file (alphabetical, order of citation, etc.)
BIBTeX formats entries based on the bibliography
style chosen (.bst or .sty)

Fall 1998
ieeetr, plain, alpha, acm, etc.
CPS 470 Software Engineering
21
BIBTeX Entry

Entry type


Keyword identifying publication


book, article, inproceedings, etc.
should be unique for each entry
Series of fields for each type

Fall 1998
author, title, journal, etc.
CPS 470 Software Engineering
22
Referencing .bib entry



\cite{keyword}
\nocite{key1, key2, key3,…}
example:
In \cite{pressman97}, the characteristics of software are
discussed.
In [1], the characteristics of software are discussed.
Fall 1998
CPS 470 Software Engineering
23
BIBTex and LaTeX

Command sequence




Fall 1998
latex file.tex
bibtex file
latex file
May have to latex file again if unresolved references
CPS 470 Software Engineering
24
Download