\documentclass[a4paper]{ltxdoc} \usepackage[english]{babel}% \usepackage[latin1]{inputenc}% \usepackage[T1]{fontenc}% \usepackage{textcomp}% \usepackage{bera}% \usepackage{microtype} \usepackage{url}% \usepackage{attachfile}% \usepackage{marginnote}% \usepackage{natbib} \usepackage[svgnames]{xcolor} \usepackage{ltxdocext}% \usepackage{hyperref} \usepackage{pdfcomment} \def\fileversion{v1.1} \def\filename{pdfcomment.sty} \def\XeLaTeX{Xe\LaTeX} %\usepackage{acrofont}% \CodelineIndex %\EnableCrossrefs %\makeatletter %\def\tableofcontents{\@starttoc{toc}} %\makeatother \renewcommand{\arg}[1]{% {\ttfamily\string{}\meta{#1}{\ttfamily\string}}% \index{#1=\string\ttt{#1}, Argument}\index{Argument>#1=\string\ttt{#1}}% }% \renewcommand{\oarg}[1]{% {\ttfamily[%] }\meta{#1}{\ttfamily%[ ]}% \index{#1=\string\ttt{#1}, optionales Argument}% \index{Argument, optional>#1=\string\ttt{#1}}% }% \renewcommand\env{\name@idx{Umgebung}}% \renewcommand*{\file}[1]{% {\ttfamily#1}% \index{#1=\string\ttt{#1}}\index{Datei>#1=\string\ttt{#1}}% }% \newcommand\styleoption{\name@idx{Styleoption}}% \newcommand\stylename{\name@idx{Dokumentenstyle}}% \def\name@idx#1#2{% {\ttfamily#2}% \index{#2\space#1=\string\ttt{#2}\space#1}\index{#1>#2=\string\ttt{#2}}% }% \newcommand*\margcs[1]{\marginnote{\raggedleft\scriptsize #1}} \newcommand*\package[1]{\texttt{#1}\index{#1=\string\ttt{#1}}} \newcommand*\mco[1]{\mbox{\LANGLE\itshape#1\RANGLE}\index{#1, Klassenoptionwert}\index{Klassenoptionwert>#1}} \setlength\parindent{0pt} \makeatletter \renewcommand\@biblabel[1]{\makebox[1.5cm][l]{[#1]}} \makeatother \hypersetup{pdfauthor={Josef Kleber},pdftitle={A user-friendly interface to pdf annotations},pdfsubject={Documentation for LaTeX style \filename}} \begin{document} \bibliographystyle{alphadin} \title{\substyle{\filename} \fileversion\footnote{\protect\href{mailto:pdfcomment.sty@pdfcomment.josef-kleber.de}{\texttt{pdfcomment.sty@pdfcomment.josef-kleber.de}}}\\A user-friendly interface to pdf annotations\footnote{\protect\href{http://pdfcomment.josef-kleber.de}{\texttt{http://pdfcomment.josef-kleber.de}}}} \author{Josef Kleber\footnote{\protect\href{mailto:josef.kleber@gmx.de}{\texttt{josef.kleber@gmx.de}}}} \date{\today} \maketitle \begin{abstract} For a long time \texttt{pdflatex} has offered the command \cmd\pdfannot{} for inserting arbitrary PDF annotations. However, the command is presented in a form where additional knowledge of the definition of the PDF format is indispensable. This package is an answer to the -- occasional -- questions in newsgroups, about how one could use the comment function of \texttt{Adobe Reader}. At least for the writer of \LaTeX{} code, the package offers a convenient and user-friendly means of using \cmd\pdfannot{} to provide comments in PDF files. Since version v1.1, \texttt{\filename{}} also supports: \medskip \noindent\hfill\texttt{\LaTeX{} $\rightarrow$ \texttt{dvips} $\rightarrow$ \texttt{ps2pdf}, \LaTeX{} $\rightarrow$ \texttt{dvipdfmx}\footnote{only with style option \texttt{dvipdfmx}} and \XeLaTeX}.\hfill \medskip Unfortunately, support of PDF annotations by PDF viewers is sparse to nonexistent. The reference viewer for the development of this package is \texttt{Adobe Reader}. If you can't see this annotation \pdfcomment[author={Josef Kleber},subject={Test annotation},color=lime,hspace=18pt]{This is an annotation} you are definitely using the wrong pdf viewer! \end{abstract} \vfill \begin{center} \subsubsection*{Required packages for using \substyle{\filename}} \fbox{\parbox[t]{.8\linewidth}{\small \package{hyperref} (v6.76a [2007/04/09]), \package{xkeyval}, \package{ifpdf}, \package{marginnote} and the packages loaded by them.}} \end{center} \vfill \clearpage %\begin{multicols}{2} %[\section*{Inhaltsverzeichnis} %\setlength{\columnseprule}{.4pt} %\setlength{\columnsep}{18pt}] %\tableofcontents %\end{multicols} \tableofcontents \clearpage \section*{Acknowledgment} I want to thank the following persons for contributions to the development of this package: \begin{itemize} \item \textbf{Alexander Grahn} for contributing a patch for other drivers \medskip \noindent\hfill\texttt{\LaTeX{} $\rightarrow$ \texttt{dvips} $\rightarrow$ \texttt{ps2pdf}, \LaTeX{} $\rightarrow$ \texttt{dvipdfmx} und \XeLaTeX}.\hfill \medskip \item \textbf{Gabriel Cardona} for pointing out problems with older versions of \texttt{hyperref} (v6.76a [2007/04/09]) \end{itemize} \clearpage \section{Options} \subsection{Global options} \subsubsection[\texttt{final}]{\styleoption{final}}\label{sec:final} The option \styleoption{final} will set the package to final mode. The pdf annotations will not be typeset and will not influence line breaking. \subsubsection[\texttt{draft}]{\styleoption{draft}}\label{sec:draft} The option \styleoption{draft} (default) will set the package to draft mode. Therefore, the pdf annotations will be typeset. \subsubsection[\texttt{dvipdfmx}]{\styleoption{dvipdfmx}}\label{sec:dvipdfmx} If you want to use the driver \texttt{dvipdfmx} for creating your documents, you have to use the option \styleoption{dvipdfmx}. The other drivers are recognized automatically. \subsection{Local options} The following options are useable as options for the commands presented in section \ref{sec:befehle}, as well as style options. As style options they have global effect, whereas they have only local effect when used in commands. Furthermore global options are not overwritten. \subsubsection[\texttt{subject}]{\styleoption{subject}}\label{sec:subject} You can use the option \styleoption{subject} for defining the subject of the pdf popup annotations. \subsubsection[\texttt{author}]{\styleoption{author}}\label{sec:author} You can use the option \styleoption{author} for defining the author of the pdf popup annotations. \subsubsection[\texttt{color}]{\styleoption{color}}\label{sec:color} You can use the option \styleoption{color} for defining the color of pdf annotations in the form \{0.34 0.56 0.12\} (RGB). If you are using the additional package \package{xcolor} you can use predefined color names, as well as the available optional color names. Furthermore you can use the command \cmd\definecolor{} to define your own named colors. Please take a look at the attached example \file{example.tex}.\marginnote{\attachfile[author={Josef Kleber},subject={example.tex},description={source code: example.tex} ,mimetype={text/plain}, icon={Tag}]{example.tex}} It shows the different possibilities of defining colors. \subsubsection[\texttt{icon}]{\styleoption{icon}}\label{sec:icon} You can use the option \styleoption{icon} for defining the graphic used for the pdf text annotations. The following icons are defined as mandatory by the pdf reference: \bigskip\pdfcommentsetup{author={Josef Kleber},subject={Icon overview}} \texttt{Comment} \hspace{1em} \pdfcomment[icon=Comment,color=Ivory]{Options: icon=Comment,color=Ivory} \hfill \texttt{Key} \hspace{1em} \pdfcomment[icon=Key,color=Khaki]{Options: icon=Key,color=Khaki} \hfill \texttt{Note} \hspace{1em} \pdfcomment[icon=Note,color=LavenderBlush]{Options: icon=Note,color=LavenderBlush} \hfill \texttt{Help} \hspace{1em} \pdfcomment[icon=Help,color=CornflowerBlue]{Options: icon=Help,color=CornflowerBlue} \bigskip \hspace*{1cm}\texttt{NewParagraph} \hspace{1em} \pdfcomment[icon=NewParagraph,color=SkyBlue]{Options: icon=NewParagraph,color=SkyBlue} \hfill \texttt{Paragraph} \hspace{1em} \pdfcomment[icon=Paragraph,color=SpringGreen]{Options: icon=Paragraph,color=SpringGreen} \hfill \texttt{Insert} \hspace{1em} \pdfcomment[icon=Insert,color=PaleTurquoise]{Options: Insert,color=PaleTurquoise}\hspace{0pt}\hspace*{1cm} \bigskip Furthermore the following icons are also supported by \texttt{Adobe Reader} and some other pdf viewers: \bigskip \texttt{Check} \hspace{1em} \pdfcomment[icon=Check,color=Orchid]{Options: icon=Check,color=Orchid} \hfill \texttt{Circle} \hspace{1em} \pdfcomment[icon=Circle,color=LightCyan]{Options: icon=Circle,color=LightCyan} \hfill \texttt{Cross} \hspace{1em} \pdfcomment[icon=Cross,color=Bisque]{Options: icon=Cross,color=Bisque} \bigskip \hspace*{1cm}\texttt{Star} \hspace{1em} \pdfcomment[icon=Star,color=Aquamarine]{Options: icon=Star,color=Aquamarine} \hfill \texttt{RightArrow} \hspace{1em} \pdfcomment[icon=RightArrow,color=Gainsboro]{Options: icon=RightArrow,color=Gainsboro} \hfill \texttt{RightPointer} \hspace{1em} \pdfcomment[icon=RightPointer,color=Salmon]{Options: icon=RightPointer,color=Salmon}\hspace*{1cm} \bigskip \hspace*{2.5cm}\texttt{UpArrow} \hspace{1em} \pdfcomment[icon=UpArrow,color=Teal]{Options: icon=UpArrow,color=Teal} \hfill \texttt{UpLeftArrow} \hspace{1em} \pdfcomment[icon=UpLeftArrow,color=Magenta]{Options: icon=UpLeftArrow,color=Magenta}\hspace*{2.5cm} \bigskip \subsubsection[\texttt{open}]{\styleoption{open}}\label{sec:open} You can use the option \styleoption{open} for defining the opening status of the pdf popup annotations. Possible values are \texttt{true} or \texttt{false} (default). \subsubsection[\texttt{hspace}]{\styleoption{hspace}}\label{sec:hspace} You can use the option \styleoption{hspace} for defining the horizontal space after the pdf text annotations. \section{Commands}\label{sec:befehle} \subsection{Comment commands} You can use the following commands for commenting your documents. \subsubsection{\texorpdfstring{\cs{pdfcomment}}{\textbackslash pdfcomment}} \label{sec:pdfcomment} \cmd\pdfcomment \margcs{\cmd\pdfcomment\\\oarg{options}\marg{comment}} will typeset an annotation into the text at the current \pdfcommentsetup{subject={\textbackslash pdfcomment test},hspace=18pt}\pdfcomment[icon=Star,color=YellowGreen]{This is a comment in the text} position. \subsubsection{\texorpdfstring{\cs{pdfmargincomment}}{\textbackslash pdfmargincomment}} \label{sec:pdfmargincomment} \cmd\pdfmargincomment \margcs{\cmd\pdfmargincomment\\\oarg{options}\marg{comment}} will typeset an annotation into the margin. Please note the positioning of the annotation in this example. This documentation was written with the \LaTeX{} class \texttt{ltxdoc} \pdfcommentsetup{subject={\textbackslash pdfmargincomment test}}\pdfmargincomment[icon=Help,color=DeepPink,hspace=-30pt]{This is a comment in the margin}. Therefore the annotation is typeset into the left margin. \subsection{Misc. commands} \subsubsection{\texorpdfstring{\cs{pdfcommentsetup}}{\textbackslash pdfcommentsetup}} \label{sec:commentsetup} With the command \cmd\pdfcommentsetup \margcs{\cmd\pdfcommentsetup\marg{options}} you can reset the global options at any time. With it, e.g. a co-author can simply use a different optical look, without specifying the options in every comment command. { \clearpage \raggedright \nocite{*} \bibliography{pdfcomment} \addcontentsline{toc}{section}{\refname} } %for index \footnotesize \end{document}