LaTeX style files for the Proceedings of the SPIE

LaTeX style files : Source file : Formatted manuscript : References : Times Roman font : LaTeX books and software : LaTeX hints : Bold Greek : Footnotes : DVI to PS : Margins : PostScript fonts : DVI to PDF : Reporting problems
Links to related information: MS Word templates : Concise formatting guidelines : Technical writing aids

Files to produce LaTeX manuscripts for SPIE Proceedings

LaTeX and BibTeX style files for SPIE Proceedings

LaTeX class file,
spie.cls (14 KB) (Version 3.3, released January 19, 2008)
NEW bibliography style file, spiebib.bst (31 KB) (Version 3.33, released March 2, 2008)
>> Implements recent changes in reference format; please report any unexpected problems.
Previous bibliography style file, spiebib27.bst (20 KB) (Version 2.7, released January 23, 2006)

ifthen.sty, ifthen.sty (5 KB) (Version 1.3c, released September 2009)
cite.sty, cite.sty (31 KB) (Version 5.2, released August 2009)

An example of a LaTeX source file, which produces a sample SPIE manuscript, is given below.

Previous versions of spie.cls, including Version 2.0 for LaTeX 2.09, are provided below.

Sample SPIE manuscript

The text of the following sample manuscript contains a complete description of the specifications of a properly formatted SPIE manuscript, as well as some guidelines for good technical writing.

For a sample source file using both LaTeX and BibTeX, download the following:
LaTeX source file (Version 3.3, revised January 19, 2008),
article.tex (26 KB)
Bibliography file, to be used by BibTeX, report.bib (2 KB)
EPS image, to be included in the formatted article, mcr3b.eps (14 KB)

Once you have the files article.tex, spie.cls, spiebib.bst, report.bib, and mcr3b.eps [plus cite.sty (4.01 or later) and ifthen.sty], you should be able to use LaTeX and BibTeX to make a properly formatted DVI file. To get the reference list (bibliography) and cross-referenced citations, it is necessary to run latex once, then bibtex, and then latex twice. A sample LaTeX session is shown in session.txt.

Examples of the formatted sample manuscript

Examples of the final formatted manuscript obtained using the above style files:
Manuscript in PostScript,
article.ps (PS, 237 KB)
Manuscript in Acrobat PDF, article.pdf (PDF, 128 KB) (PDF reader available from Adobe)
Manuscript in Acrobat PDF with new reference formating (spiebib.bst, Vers. 3.31), articlenew.pdf (PDF, 128 KB) (PDF reader available from Adobe)
Manuscript in DVI format article.dvi (28 KB), provided here to let you check your DVI viewer. This DVI file is formatted for letter-size paper.

The text in these files provides the specifications of a properly formatted SPIE manuscript, as well as some guidelines for good technical writing. Excellent references on technical writing can be found at Technical writing aids.

Reference list formatting

An example of the formatting obtained with spiebib.bst for an extended reference list follows:
Formatted extended reference list in Acrobat PDF, biblist.pdf (PDF, 43 KB),
which was obtained using the following two LaTeX files:
LaTeX source file, biblist.tex (1 KB)
Bibliography file, biblist.bib (5 KB)

Reference list with and without BibTeX

Should you use BibTeX to generate your reference list? Proper use of the BibTeX style file all but guarantees that the reference list will be correctly formatted. There are several advantages to using BibTeX. It automatically orders the references to match their order of citation in the text, as required for SPIE manuscripts. The report.bib file can be used as a database of your standard set of references, which can be extended and reused to prepare reference lists for other LaTeX documents. The same BIB file will normally work with alternative bibliography style files.

Please note the potential for problems when using babel or hyperref mentioned below.

In case you decide not to use BibTeX, the following sample source file uses LaTeX and NOT BibTeX:
LaTeX source file, article-nobib.tex (27 KB)
EPS image, to be included in the formatted article, mcr3b.eps (14 KB)

Once you have the files article2.tex, spie.cls, and mcr3b.eps [plus cite.sty (4.01 or later) and ifthen.sty], you should be able to use LaTeX to make a properly formatted DVI file. Remember that you must insert the references in the Reference section at the end of article2.tex. The references should be entered in the order of their citation and properly formatted. To obtain properly cross-referenced citations, it is necessary to run latex twice after any change in the order of the reference listings.

Times Roman font

The default font in LaTeX is Computer Modern Roman, which is perfectly acceptable for the SPIE Proceedings. If you prefer to create a manuscript in Times Roman font, insert the command
\usepackage[]{times}
right after the \documentclass command. This package affects only the fonts used in the document text; the mathematical symbols remain in Computer Modern. Therefore, it is advisable to use the "-P pdf" option in DVIPS (mentioned below) to include the Type 1 fonts for the CMR mathematical symbols, and the G0 option (G and zero) as explained below. The DVIPS command looks like:
dvips filename.dvi -P pdf -G0

LaTeX books and software

The original book by Leslie Lamport, A Document Preparation System - LaTeX (Addison-Wesley) is the standard reference and is very useful as a concise summary of LaTeX usage. To learn about the many capabilities of LaTeX, get the book by Frank Mittelbach et al., The LaTeX Companion (Addison-Wesley). Another book with many good tips is Math into LaTeX by George Graetzer (Birkhaeuser-Springer).

LaTeX software is available from a variety of sources and should be easy to find by searching the Web. Because the basic LaTeX packages are open-source, free versions are available for most computer systems. Most LaTeX packages can be downloaded from the Comprehensive TeX Archive Network (CTAN) web pages (http://www.ctan.org/). This site provides access to the numerous LaTeX packages, which are designed to meet a wide variety of formatting needs. MikTeX, a complete set of LaTeX programs that run under Microsoft Windows, can be downloaded from CTAN or directly from the MikTeX web site (http://www.miktex.org/). Commercial LaTeX packages are also available.

Some LaTeX hints

LaTeX can be a little tricky. The good news, however, is there is almost always a fix, even though it is sometimes convoluted. The following solutions represent answers to questions that I have received in regard to spie.cls.

Bold Greek symbols

The math package from the American Mathematical Society allows one to easily produce bold math symbols, well beyond what is available in LaTeX. It also provides many useful capabilities for creating elaborate mathematical expressions. You need to load the AMS math package near the top of the LaTeX source file, right after the \documentclass command:
\usepackage[]{amsmath}
Then for bold math symbols use \boldsymbol in equations, e.g., $\boldsymbol{\pi}$ yields a bold pi. You can make it easier to use by defining a command:
\newcommand{\bm}[1]{\boldsymbol{#1}}
and then using it like so $\bm{\pi}$.

Not all math symbols are available in bold. In a pinch, you can use \pmb ("poor man's bold"), which is defined in amsmath. This command approximates a bold character with a superposition of several, slightly displaced unbold characters.

If you want a Greek symbol in the article title, it should be both larger and bold. The easiest thing is to load the AMS math package as described above. Then, in the title, use something like:
\title{Estimation of {\LARGE$\boldsymbol\alpha$} by a Monte Carlo technique}
Note that the command to create the alpha character is enclosed within braces to form a self-contained environment. The use of \LARGE in this example may not be needed when using special font packages to replace the default Computer-Modern-Roman font, such as the times.sty package, because of how the article title is handled in spie.cls.

Footnotes

Footnotes are marked by superscript symbols. Only nine symbols are available in LaTeX. If you have more than nine footnotes, you will need to restart the sequence using the command \footnote[1]{Your footnote text goes here.}. If you don't, LaTeX will provide the error message "Counter too large.," followed by the offending footnote command.

DVIPS - converting DVI files to PostScript files

When latex is run, it produces a file with the extension DVI (for Device Independent), which completely encodes the formatted document, with the exception of the image files. A separate application is needed to view or print the document, or to convert the DVI file to a standard document format. The LaTeX application most often used for this purpose is DVIPS, which converts a DVI file to a PostScript (PS) file.

The utility DVIPS has numerous options to control various aspects of the PS file that it creates. The defaults depend on how LaTeX is installed on your system. To make sure that these options are set appropriately for your intended use, it is wise to explicitly specify them.

To summarize the following sections, it is a good idea to use the DVIPS options "-t letter -P pdf" for letter paper, and "-t a4 -P pdf", for A4 paper. In addition, if you use the times package, append the option list with -G0 (G zero).

Paper size and margins

It is advisable to use the same paper-size option in DVIPS as specified in the \documentclass command in the LaTeX source file. The DVIPS option "-t" specifies paper size. For (USA) letter paper (8.5 in. X 11 in.), use the option "-t letter"; for A4 paper, use "-t a4".

With the paper size correctly specified, the margins of your LaTeX document should correctly follow the SPIE specifications.

If you need to adjust the position of the text field on the page, change the values of the LaTeX variables \voffset and \hoffset to move the text vertically or horizontally, respectively. For example, to lower the text 9 mm, include the command \addtolength{\voffset}{9mm} immediately after the \documentclass command at the beginning of the LaTeX source file.

Markus Knauer reported that the following prescription for A4 paper worked better for him: replace the lines in spie.cls, which set the margins for A4 paper, with the following:
\DeclareOption{a4paper}{%
\AtEndOfClass{%
\oddsidemargin -0.56cm % for side margins of 2cm
\evensidemargin -0.56cm % for side margins of 2cm
\topmargin -0.1cm
\typeout{a4paper used}
}
}
The same results can be achieved by placing the following commands at the beginning of article.tex:

Type 1 PostScript Fonts

The text in PostScript files that are produced by DVIPS can look awful when converted to PDF and viewed on a computer monitor with Acrobat Reader. The reason is that the PostScript output file may contain Computer Modern Roman fonts that are bit-mapped, instead of "scalable" Type 1 PostScript fonts. The printer output is of high quality, but Acrobat doesn't handle them very well for viewing on a monitor. As an aside, this problem is diminishing with recent versions of Acrobat Reader.

There is a simple way to incorporate Type 1 PostScript fonts in PDF files produced from LaTeX output. The solution involves using the appropriate option in DVIPS, "-P pdf".

This option refers to the printer configuration file. The file that specifies the default properties of the PostScript code produced by DVIPS is named config.ps in MS Windows. If the "P" or "j" options are set there, this option may not need to be set when running DVIPS. It seems that this default is becoming more prevalent.

If the above simple method doesn't work on your system, you can look at (http://www.math.hawaii.edu/~ralph/MathOnWeb/TeXPDF.html) for detailed advice on how to incorporate Type 1 PostScript fonts into the PostScript or PDF files generated from LaTeX DVI files.

Times package

The times.sty package may be used to replace the LaTeX default font with the more conventional Times Roman font. With this package, it is still advisable to use the "-P pdf" option in DVIPS (mentioned above) to include the Type 1 fonts for the mathematical symbols, which are still in Computer Modern Roman font. However, using the times package with the "-P pdf" option in DVIPS causes a peculiar bug. For example, the pair of letters "fi" may appear as a British pound symbol. The reason for this behavior is that the G option is set in config.pdf (pdf.cfg). You can avoid the problem by commenting out that option in the config file or you can override it in the DVIPS command using the G0 option (G and zero). The DVIPS command looks like:
dvips filename.dvi -P pdf -G0
Thanks to Martin Edelmann for this solution.

Reducing the size of large PS files

If the PS file produced by DVIPS is large (>5 MB), it is probably because of the size of the EPS image files you are using for figures. DVIPS essentially copies the EPS image files directly into its output PS file. To reduce the size of the PS file, the best approach is to reduce the sizes of the image files.

PS and EPS files: PostScript documents consist of instructions for building each page. The PS markup language specifies text in terms of scalable fonts and the position of each text string, and vector graphics commands to describe graphical features. This means of specification has the advantage that a page can be scaled to any size, and the text and graphical elements still appear sharp. The disadvantage of using vector graphics is that when millions of points (or vectors) are drawn, the EPS file can become rather large or take a long time to draw on the monitor.

The PS instruction set also includes “bit-mapped” fonts and rasterized images, which appear blocky when magnified.

PS instructions are given as ASCII text, so you can open an (E)PS file with a text editor and examine the PS instructions.

An Encapsulated Postscript (EPS) file is a PS file that describes a single page. Figures in LaTeX are usually provided as EPS files. EPS files are distinguished from PS files by their BoundingBox command, found near the beginning of the file:
%%BoundingBox: 0 0 1200 900
This command specifies the position and size of the text/image area in PS units (72/inch) or for a rasterized image, its size in pixels.

When an EPS file includes a rasterized (or pixelated) image, it is defined as having a specific size, e.g., 1200 by 900 (pixels). This type of file is created when a rasterized image, such as GIF, TIFF, PNG, or JPEG, is converted to EPS. The list of pixel values can be uncompressed or compressed. The former produce a rather large file. For example, an uncompressed 1200 by 900 pixel color image will be at least 3 MB in size. The compressed type of EPS image often employs JPEG compression, and is usually much smaller. The image file mcr3b.eps, provided above for the sample manuscript, is an example of this type of EPS file.

EPS files for LaTeX: If you are using uncompressed rasterized EPS image files, the obvious way to make them much smaller is to convert them to compressed files using an application such as PhotoShop, HyperSnap, IDL, or MatLab. If a large EPS file uses vector coding, the solution is to convert it to a rasterized image file (for example, GIF, PNG, or JPEG; avoid TIFF because of copyright problems), and then convert that back to a compressed rasterized EPS file.

You should select the resolution of each rasterized image to be high enough to maintain the inherent quality of the published image or graph. A pixel density of 300 to 400 dpi (dots per inch = pixels per inch) on the printed page is often good enough. Thus, an image that will be a half-page wide (~3.4 in.), should be around 1000-1200 pixels wide. Attention should be given to the selection of the JPEG resolution option. The option of "maximum quality" is often not needed - either "high" or "medium" quality usually provides satisfactory print quality and results in a smaller file.

DVI to PDF

Several utilities provide the capability of converting a DVI file directly into a PDF file. While SPIE specifies that electronically submitted manuscripts must be in PS format, authors may find PDF files advantageous for other purposes, for example, to post a LaTeX document on a web site.

The utility dvipdfm directly produces a PDF file from the DVI file. This utility is included in many LaTeX distributions. The command is:
dvipdfm filename.dvi
Appealing aspects of this utility are that Acrobat Distiller is not needed, and Type 1 PostScript fonts are automatically included in the resulting PDF file. Furthermore, dvipdfm allows one to directly incorporate images in JPEG, PNG, and PDF formats, and not just EPS. It is possible to include hyperlinks to items within the document, such as references, equations, etc., or to URLs on the web by using the LaTeX package hyperref.sty. This solution was suggested by Adrian Sequeira. [Note the potential conflict between hyperref.sty and cite.sty, which is employed in spie.cls.]

Problems creating a reference list when using babel or hyperref

The packages ifthen.sty and cite.sty are required by spie.cls. The latter sorts lists of citations and concatenates a list of three or more consecutive reference numbers into a hyphenated form. The cite.sty version number must be greater than 4.01 to handle citations as superscripts, required by SPIE. Unfortunately, cite.sty may lead to problems when used with babel or hyperref. If you experience difficulty generating the reference list, remove (or comment out) the line in spie.cls:
\RequirePackage[superscript]{cite}[2003/11/04] % need vers. > 4.01

Uppercase letters and special symbols in BibTex

BibTeX tries to enforce standard publishing rules regarding article titles and authors' names; it sometimes changes uppercase letters to lower case. BibTeX also has trouble with umlauts, generally created in LaTeX with \"{o}, because it is looking for the " to end the input line. The general rule for overriding LaTeX's and BibTex's reinterpretation of your input text is to put the items you wish to be unchanged in braces. Thus, to obtain an umlaut in an author's name or in an article title, or to force an uppercase letter, do something like the following:

@article{Kaczmarz37,
author = "S. Kaczmarz",
title = "Angen{\"{a}}hrte {A}ufl{\"{o}}sung von {S}ystemen linearer {G}leichungen",
journal= "Bull. Acad. Polon. Sci. Lett.",
volume = "A35",
pages = "355-357",
year = "1937" }
This example shows the use of both umlauts and uppercase letters.

Previous versions of SPIE style files

Version 2.0 for LaTeX 2.09 is still available. Download the following file:
Old LaTeX style file, spie.sty
The text field is now 6.75 in. by 8.75 in. and the top margin is 1.00 in., which matches the present SPIE specifications. Otherwise, this style file has not been changed and should still work under LaTeX 2.09. However, this old style file is no longer supported and its use is discouraged.

The old psfig.sty, which runs under LaTeX 2.09, allows one to incorporate Encapsulated PostScript images directly into a LaTeX document. It can be downloaded here
psfig.sty.txt (rename as psfig.sty)
Authors are encouraged to use a more up-to-date and versatile LaTeX2e graphics package, such as graphicx.sty, to provide this capability, as demonstrated in the above article.tex source file.

Problems?

If you are using LaTeX for the first time and need help learning how to use it, please do not contact me. I am not a consultant for basic LaTeX problems. The SPIE style files presented here have been used successfully for years and are thoroughly debugged.

Excellent advice on using LaTeX can be found in numerous books (two good ones are mentioned above) or on the Comprehensive TeX Archive Network (CTAN) web pages (http://www.ctan.org/). The vendor of the LaTeX application you are using may be able to help you. You might also ask your colleagues; LaTeX gurus are everywhere, even though they may not be very recognizable.

If you have difficulties with these style files and have good reason to believe that the problem lies in them and not your own inexperience, please do contact me. Be sure to give me detailed information about the specific environment in which you are running LaTeX, including the LaTeX system you are using, your computer operating system, the way that you got the SPIE style files (e.g. by e-mail or over the Web; specify web site) and their version number (to be found on first line of the spie.cls and spiebib.bst files). Send me copies of the error messages that LaTeX gave you (or the .log file) and a copy of the LaTeX source file that you are trying to format.

The LaTeX files provided on this site may be freely used by anyone; they may be altered in keeping with the LaTeX Project Public License.

If you are a (La)TeX expert and see ways to improve these style files, I would appreciate your suggestions.

Ken Hanson

You can reach me at kmh@hansonhub.com