PDF Information and Navigation Elements With Hyperref, Pdftex, and Thumbpdf
PDF Information and Navigation Elements With Hyperref, Pdftex, and Thumbpdf
Abstract
Additional possibilities for information and navigation through
paper-less on-line documents that offer the PDF format.
Start
Subjects
• Bookmarks/outlines hyperref
• Thumbnails thumbpdf
\usepackage{hyperref}
\hypersetup{%
pdftitle = {PDF information and navigation elements},
pdfsubject = {Slides for talk at EuroTeX’99 in Heidelberg},
pdfkeywords = {pdf, hyperref, bookmarks, thumbnails},
pdfauthor = {\textcopyright\ Heiko Oberdiek},
pdfcreator = {\LaTeX\ with package \flqq hyperref\frqq},
pdfproducer = {pdfeTeX-0.\the\pdftexversion\pdftexrevision},
}
\pdfinfo{/CreationDate (D:19990909000000-01’00’)}
Eyes
• Reading input lines
• Catcodes are set Mouth
• Forming tokens
• Expansion of macros Stomach
• Assignments
• Typesetting
mouth stomach
“zero”: \empty \relax
{...}: parameter group
variable: read and check assignments
fonts: – different fonts and encodings
ligatures
Commands: \string, \number \def, \hbox, $
\if, \the \begingroup, \special
• Accented characters.
Examples: Ü = \"U, ç = \c c, Å = \r A (⇐ \AA)
/ Direct commands:
Easier to implement, but each command must be redefined each
time.
Greek: Cyrillic:
• Creating bookmarks.
• Replacement methods.
2. Package: \usepackage[. . . ]
Example:
\section{\texorpdfstring{H$ 2$O}{Water}}
\pdfoutline
user {<</S /GoToR /F (pdfspec.pdf) /D [95 /Fit]>>}
count 0 {Description of actions}
• Contents:
– Thumbnail sketches of the pages.
– Other pictograms, symbols, . . .
– Empty.
3 pdfTEX
jobname.tex jobname.pdf
thumbpdf.sty
pdfTEX
1 K
L
jobname.pdf
thumbpdf
2
L
thumbdta.tex
jobname.pdf
perl
L
thumbdta.tex
thumbopt.tex jobname.tex
\thumb{one} → \thisthumb{one}
\thumb{one.png} → \thisthumb{one.png}
\thumb[two]{one} → \thisthumb{two}
\thumb[one]{./extras/one.png} → \thisthumb{one}
• Bookmarks:
– Automatically added by hyperref.
– Oral expansion, no stomach commands (exceptions).
– Replacement methods: \texorpdfstring,
\pdfstringdefDisableCommands, and hypbmsec.
– Low level commands only for special effects.
\newcommand*{\texorpdfstring{%
\ifHy@pdfstring
\expandafter\@secondoftwo
\else
\expandafter\@firstoftwo
\fi
}
\section{Pythagoras:
\texorpdfstring{$ a^2 + b^2 = c^2 $}{%
a\texttwosuperior\ + b\texttwosuperior\ =
c\texttwosuperior}%
}
\section{%
\texorpdfstring{\textcolor{red}}{}{Red} Mars%
}
• Should work with packages that do not change the syntax of the
\section commands. hypbmsec should be loaded last.