The LaTeX Graphics Companion: Illustrating Documents with TeX and Postscript(R)

3.83 avg rating
( 35 ratings by Goodreads )
9780201854695: The LaTeX Graphics Companion: Illustrating Documents with TeX and Postscript(R)

This handy reference describes techniques and tricks needed to illustrate LaTeX documents, and answers common user questions about graphics and PostScript fonts. It provides the first full description of the standard LaTeX color and graphics packages, and shows how you can combine TeX and PostScript capabilities to produce beautifully illustrated pages. Following the successful format of The LaTeX Companion, this new book will be an invaluable LaTeX resource for incorporating pictures into text. You will learn how to: *Incorporate graphic files into a LaTeX document *Program technical diagrams using several different languages *Produce color pictures *Achieve special effects with fragments of embedded PostScript *Make high-quality musical scores and games diagrams You will find detailed descriptions of: *Important packages like XYPIC, PSTricks, and METAPOST *The standard LaTeX color and graphics packages *PostScript fonts and how to use them in LaTeX *The dvips dvi to PostScript driver *Ghostscript, the free interpreter that lets you view or print PostScript files, even if you do not have a PostScript printer The authors examine a number of packages that extend or modify LaTeX's basic illustration features, and present hundreds of examples of useful solutions to graphics and font problems. In addition to packages for general drawing, the book also presents specific tools for mathematicians, physicists, chemists, engineers, and for people interested in games and music typesetting. All the packages and programs described in this book are freely available in public software archives, and the source code for all examples has been placed on CTAN, the TeX archives. (Details in Appendix B) 0201854694B04062001

"synopsis" may belong to another edition of this title.

From the Inside Flap:

LaTeX is a generic typesetting system that uses TeX as its formatting engine. This companion is a detailed guide through the visible and not-so-visible beauties of LaTeX. As such, it is a comprehensive treatise of those points not fully discussed in Leslie Lamport's LaTeX: A Document Preparation System (henceforth referred to as the LaTeX book)  49 .Extensions to basic LaTeX, as described in that book, are discussed, so that the LaTeX book, together with this companion, provide a ready reference to the full functionality of the LaTeX system.

Due to its flexibility, ease of use, and professional typographic quality, LaTeX is presently used in almost all areas of science and the humanities. Unlike many word processors, LaTeX (and its underlying formatting engine TeX) comes free of charge and is not linked to any particular computer architecture or operating system. Since LaTeX source files are plain text files, it is possible to ship them, and the packages referenced, from any computer to any other computer in the world (over electronic networks or via normal mail). The recipient will be able to obtain a final output copy identical to the one generated at the sender's site, independently of the hardware used. Thus members of groups, geographically spread over several sites in different countries, or even on different continents, can now work together in composing complex documents where different parts can be dealt with by different individuals, and then brought together without problems. Moreover, the use of electronic manuscripts has the potential to speed up the publication of papers by publishers.

LaTeX is not difficult to learn and a beginner can benefit from the system after reading through the first few chapters of Leslie Lamport's LaTeX book, the basic reference on LaTeX. After some experience, you will probably have to solve some more advanced problems whose solution cannot be found directly in that book. If you are one of those users who would like to know how LaTeX can be extended to create the nicest documents possible without becoming a (La)TeX guru , then this book is for you.

You will be guided, step by step, through the various important areas of LaTeX and be shown the links that exist between them. The structure of a LaTeX document, the basic formatting tools,and the layout of the page are all dealt with in great detail. A sufficient library of packages in the area of floats, graphics, tables, PostScript, and multi-language support are presented in a convenient way. This book is the first volume to include all of the important LaTeX tools, such as: up-to-date descriptions of version 2 of the New Font Selection Scheme(NFSS2), the AMSLaTeX mathematics extensions, the

epic and

eepic extensions to LaTeX's

picture environment, and the

MakeIndex and BibTeX programs for producing and controlling the generation of indices and bibliographic references. Finally, an overview of ways to define new commands and environments, lengths, boxes, general lists, etc., as well as ways of facilitating the handling of these objects, complete the picture.

All three of us have been involved for several years in the support and development of LaTeX applications in various professional environments and countries. We have taught the secrets of LaTeX tomany different audiences, and have been listening to the user community by following the discussions in the text processing related news groups and at TeX conferences. This has allowed us to gather a coherent view of a vast collection of subjects, which, we think, you migh t need one day if you want to fully exploit the richness and strengths of the LaTeX system. Note, however, that this book is not a replacement for, but a companion to, the LaTeX book. You are assumed to have read the first part of that book, and in any case, it should be considered a reference for precise and full description of the LaTeX commands.

To make the presented information even more complete and useful, our readers are kindly invited to send their comments, suggestions, or remarks to any one of the authors. We shall be glad to correct any remaining mistakes or oversights in a future edition, and are open to suggestions for improvements or the inclusion of important developments that we may have overlooked.

LaTeX2e--The New LaTeX Release

Over the years many extensions have been developed for LaTeX with one unfortunate result: incompatible LaTeX formats came into use at different sites. Thus, to process documents from various places, a site maintainer was forced to keep LaTeX (with and without NFSS),SliTeX, AMSLaTeX, and so on. In addition, when looking at a sourcefile it was not always clear what format the document was written for.

To put an end to this unsatisfactory situation a new LaTeX release was announced for fall 1993 that brings all such extensions back under a single format and thus prevents the proliferation of mutually incompatible dialects of LaTeX 2.09. With LaTeX2e the new font selection will be standard and style files like

amstex (formerly AMSLaTeX format) or

slides (formerly SliTeXformat) will become extension packages, all working with the same baseformat. The introduction of a new release also made it possibleto add a small number of often-requested features (like an extendedversion of #79#>newcommand). All the new possibilities aredescribed in this book, thus allowing you to make full use of the newLaTeX release.

To make it easy to distinguish between old LaTeX 2.09 sources and newsources (making use of new features), the first command in aLaTeX document was changed from

\documentstyle to \documentclass , thus enabling the software to automaticallydetect an old source file and switch to compatibility mode ifnecessary.

The LaTeX3 Project

LaTeX is presently being rewritten under the coordination of one of theauthors (Frank Mittelbach), Chris Rowley and Rainer Schöpf.This endeavor is called theLaTeX3 Project  57 .A lot of the functionality described in this book as extensions tobasic LaTeX will be available in that system: as part of the kernel, orin one of the extension packages.To help funding, half of the royalties fromthis book will go directly to the LaTeX3 Project.Therefore, when buying this book, you not only obtain a handy, complete,and up-to-date reference to many important and useful packagesavailable with LaTeX today, but you also actively contributeto making LaTeX more powerful and user-friendly in the future.

How to Read This Book

The titles of the various chapters should conveyrelatively clearly the subject area addressed in each case.In principle, all chapters can be read more or less independently and,if necessary, pointers are given to where complementary informationcan be found in other parts of the book.

Chapter 1

gives a short introduction to the LaTeX system.

Chapter 2

discusses generic and document-oriented markup.

Chapter 3

describes LaTeX's basic typesetting commands.

Chapter 4

explains which tools are available to globally define the visual layout of the pages of a document by using pagestyles.

Chapter 5

shows how to assemble material into columns and rows with the extended




environments, and their multipage equivalents--





Chapter 6

provides a general treatment of floating material.

Chapter 7

discusses in detail LaTeX's New Font Selection Scheme (NFSS2) and presents its various user commands. It is shown how to add new fonts, both in math and text mode.

Chapter 8

reviews the


package, which adds many powerful typesetting commands in the field of mathematics.

Chapter 9

looks at the problem of using LaTeX in the multi-language or non-English environment. The babel system and other language-specific packages are described.

Chapter 10

addresses the field of device-independent graphics showing how the




and other packages extend the possibilities of LaTeX's basic



Chapter 11

shows how the PostScript page description language not only can turn LaTeX into a full-blown graphics utility, but also how it makes it possible, via the NFSS, for a user to choose a font from amongst hundreds of font families, available as PostScript Type 1 outlines.

Chapter 12

tackles the problems associated with preparing an index. The program


is described in detail.

Chapter 13

surveys how LaTeX's companion program BibTeX tries to solve problems related to maintaining bibliographic data bases. Various existing bibliographic styles are discussed and the format of the BibTeX language used in the style files is presented in detail, allowing the user to customize an existing style.

Chapter 14

shows how to document LaTeX files using the


package and its companion program



Appendix 1

first reviews how to handle and manipulate the basic LaTeX programming structures. The extensions introduced by the


package in the field of arithmetic operations, and extended control structures added to LaTeX2e are discussed.

Appendix 2

explains how to get the files described in this book from the various TeX archives or from the TeX Users Groups.

In order to make the examples as independent as possible from basicTeX, extensive use has been made of the packages

calc and ifthen , which are described in the appendices A.4 and A.5.You should study the extensions to LaTeX, introduced in thesepackages, if you want to understand how many of the examples in thisbook function in detail.

Many examples make use of new features in LaTeX2e; especiallyfont changes for text are all done in LaTeX2e style, i.e.,with thecommands shown in table 7.2 on page 171. Abbreviated forms, like {\bf word} are normally not used, since they are style defined commands and may or may not be available for all classes of documents.

While it is certainly possible to make good use of most parts of thisbook within a LaTeX 2.09 environment (the event of LaTeX2e happenedafter 90% of the book was finished) we suggest that you upgrade tothe new version as soon as possible so that the worldwide communityof LaTeX users again speaks a single language.As said above, LaTeX2e is able to identify and process old documentswritten for LaTeX 2.09. However, packages written or updated forLaTeX2e will not run with the old system.

Typographic Conventions

As explained in the discussion about the linksbetween content and form or generic and layout markup,it is essential that the presentation of the material conveysimmediately its function in the framework of the text.Therefore, we present below the typographic conventions used in this book.

LaTeX command and environment names are in monospaced type(for example, #133#>caption,

enumerate ,

\begin{tabular} ), whilenames of package and class files are in sans-serif type (eg.

article ).

The syntax of LaTeX constructs is presented inside a rectangular box.Command arguments are shown in italic type.


Lines containing examples with LaTeX commands are indentedand are typeset in a monospaced type at a size somewhatsmaller than that of the main text. \chapter{Title of the Chapter}\section{Section Title}Some text...

When it is important to show the result of a series of commands,then the input and output are shown side by side as follows:

For large examples, where the input and output cannot be shown conveniently alongside one another, the following layoutis used:

Commands to be typed by the user on a computer terminalare shown in monospaced type and are underlined, e.g.,:

This is user input


Using All Those Packages

In this book we describe over 150 packages and options that extend ormodify LaTeX's basic possibilities.In order to show their action, we (in principle) have to load them all at the same time.For various reasons that is impractical, if not impossible.Indeed many packages, like

program , use up a lot ofcounters, and TeX only allows a total of 256 counters.Therefore, when you hit this limit you must reduce thenumber of files you load simultaneously.In the production of this book we used a different strategy: we preparedsome of the examples as separate files and included them as Encapsulated PostScript.Moreover, we used the package

hackalloc .It redefines the allocation primitive so that

all allocation becomesgroup-local.This means that by loading packages only when they are needed inside a brace group, the counter and length variables willbe deallocated when you exit from the group.This procedure, however, can have some side effects, and should only be usedwith great care. However, we used most of the packages together, withthe result that we had to recompile TeX several times during thepreparation of this book. One of the log files produced during the laststeps of the preparation showed the following summary: Here is how much of TeX's memory you used: 9692 strings out of 16716 118315 string characters out of 133654 236569 words of memory out of 262141 8131 multiletter control sequences out of 9500 81058 words of font info for 228 fonts, out of 90000 for 255 20 hyphenation exceptions out of 607 34i, 23n, 41p, 509b, 1403s stack positions out of 300i, 40n, 60p,3 000b, 4000s Output written on companion.dvi (555 pages, 2008780 bytes). As you can see, we nearly reached the font limit (which cannot beraised further) because of the many fonts shown inchapter 7, and the usage for strings, characters, mainmemory, and control sequences is probably much higher than in anyLaTeX run you ever made. This is not surprising given that thewhole book is produced in a singleLaTeX run with all those packages working together to produce the examples.

Even when you do not reach a limit of the kind mentioned above, thereare other interference effects between different packages. Forinstance, some extensions such as

french make somecharacters active (i.e.,some characters act as though they were controlsequences)   . Problems may result when such acharacter is then encountered in another package. This means thatnot all of the packages described inthis book can be used together. Sometimes you can solve the problemby loading problematicpackages as one of the last#161#>usepackage declarations. Also, some packagesmake the

@ character active (eg. amstex ), andthis can have nasty consequences if you load other packages that use the @ character.

As a rule of thumb, if you observe some odd behavior when you add a packageto an existing list of packages, which seemed to work nicely together before, there might be a compatibility problem.Try loading the new file at the end, and if that does not work, takeout each of the other files one by one. In this way you might findthe file or files that are responsible for the problem.


About the Author:

Michel Goossens is past president of the TeX Users Group. A research physicist at CERN, where the Web paradigm was born, he is responsible for LaTeX, HTML, SGML, and, more recently, XML support for scientific documents.

Sebastian Rahtz is Past Secretary of TUG, a cofounder of CTAN, creator of the TeX Live CD-ROM, and a co-author of The LaTeX Graphics Companion. He is an IT analyst at Elsevier Science Ltd.

Frank Mittelbach is manager of the LaTeX3 Project, in which capacity he oversaw the release of LaTeX 2e. He is the editor of a series of publications on tools and techniques for computer typesetting.


"About this title" may belong to another edition of this title.

Top Search Results from the AbeBooks Marketplace


Goossens, Michel, Rahtz, Sebastian, Mitt
Published by Addison-Wesley Professional (1997)
ISBN 10: 0201854694 ISBN 13: 9780201854695
New Paperback Quantity Available: 2
Murray Media
(North Miami Beach, FL, U.S.A.)

Book Description Addison-Wesley Professional, 1997. Paperback. Book Condition: New. Never used!. Bookseller Inventory # P110201854694

More Information About This Seller | Ask Bookseller a Question

Buy New
US$ 48.59
Convert Currency

Add to Basket

Shipping: US$ 1.99
Within U.S.A.
Destination, Rates & Speeds