%
% http://www.adobe.com/devnet/acrobat/pdfs/PDF32000_2008.pdf
%
% makeindex < aebpro_man.idx > aebpro_man.ind
\documentclass[12pt]{article}
\usepackage[fleqn]{amsmath}
\usepackage[
    web={centertitlepage,designv,tight,
        nodirectory,forcolorpaper,
        usesf,latextoc,pro},
        aebxmp,eforms,graphicxsp={showembeds}
]{aeb_pro}
\usepackage{array}
\usepackage[usecmtt]{myriadpro}
\usepackage{annot_pro}

\DeclareInitView
{%
    layoutmag={mag=100},
%    windowoptions={fit}
}


\usepackage{makeidx}
\makeindex
\usepackage{acroman}

\usepackage[active]{srcltx}

\def\expath{../examples}

\urlstyle{rm}

%\def\tutpath{doc/tutorial}
%\def\tutpathi{tutorial}

\DeclareDocInfo
{
    university={\AcroTeX.Net},
    title={The \texorpdfstring{\textsf{annot\_pro} Package\\[1em]}{annot\textunderscore pro Package: }
        Text, Stamp, and File Attachment Annotations},
    author={D. P. Story},
    email={dpstory@acrotex.net},
    subject={Documentation for annot\textunderscore pro from AcroTeX},
    talksite={\url{www.acrotex.net}},
    version={1.0},
    keywords={sticky notes, stamps, file attachment, annotations},
    copyrightStatus=True,
    copyrightNotice={Copyright (C) \the\year, D. P. Story},
    copyrightInfoURL={http://www.acrotex.net}
}

\def\dps{$\hbox{$\mathfrak D$\kern-.3em\hbox{$\mathfrak P$}%
   \kern-.6em \hbox{$\mathcal S$}}$}

\universityLayout{fontsize=Large}
\titleLayout{fontsize=LARGE}
\authorLayout{fontsize=Large}
\tocLayout{fontsize=Large,color=aeb}
\sectionLayout{indent=-40pt,fontsize=large,color=aeb}
\subsectionLayout{indent=-20pt,color=aeb}
\subsubsectionLayout{indent=0pt,color=aeb}
\subsubDefaultDing{\texorpdfstring{$\bullet$}{\textrm\textbullet}}

\embedEPS[hiresbb,transparencyGroup]{AdobeDon}{../examples/graphics/AdobeDon}

\makeStamp{0.0 0.0 20.0 20.0}{AdobeDon}{%
    [ 20 \widthOf{AdobeDon} div 20 \widthOf{AdobeDon} div scale {AdobeDon} /SP pdfmark
}

\setAnnotOptions{subject={AcroTeX Communiqu\'e},title={D.P. Story}}

%\pagestyle{empty}
\parindent0pt\parskip\medskipamount

\begin{docassembly}
\addWatermarkFromFile({
    bOnTop:false,
    cDIPath:"/C/AcroTeX/AcroTeX/ManualBGs/Manual_BG_Print_AeB.pdf"
});
\executeSave();
\end{docassembly}

\begin{document}

\maketitle

\selectColors{linkColor=black}
\tableofcontents
\selectColors{linkColor=webgreen}

\section{Introduction}

This package is used to create text, stamp, and file attachment
annotations using \textbf{Adobe Distiller}, these annotations can be
viewed in Adobe Reader. For users of \textsf{pdf(la)tex}, use the
\textsf{pdfcomment} package by Josef Kleber.\footnote{Available from
CTAN in the directory \texttt{macros/latex/contrib/pdfcomment/}.}

The package primarily in support of my \href{http://www.math.uakron.edu/~dpstory}
{{Acro\negthinspace\TeX} PDF Blog}. I plan to use sticky notes, file attachments, and
custom stamps to make side-comments, and to provide source files.

\section{Requirements}

The requirements for your {\LaTeX} system, and well as any other
software, is highlighted in this section.

\subsection{{\LaTeX} Package Requirements}

The following packages, in addition to the standard {\LaTeX}
distribution, are required:
\begin{enumerate}
  \item The \textsf{xkeyval} package is used to set up the key-value
      pairs of the \cs{annot\-pro} command. Get a recent version.
  \item The \textsf{xcolor} package is strongly recommended.
  \item The \textsf{hyperref} package, a recent version.
  \item If you want to create custom stamps (on the fly) using the techniques
      developed for that purpose, the \textsf{graphicxsp} Package is required.\footnote
      {Available at \url{http://www.math.uakron.edu/~dpstory/graphicxsp.html}}
\end{enumerate}
The \textsf{annot\_pro} package is part of the \textcolor{blue}{AeB
Pro} family, which means \textbf{Adobe Distiller} is required. The
components of \textcolor{blue}{AeB} and \textcolor{blue}{AeB Pro}
are not required.\footnote{AeB: \url{http://www.math.uakron.edu/~dpstory/webeq.html}}${}^{,}$\footnote{AeB Pro:
\url{http://www.math.uakron.edu/~dpstory/aeb_pro.html}}

\subsection{PDF Creator Requirements}

The \textsf{annot\_pro} package requires \textbf{Acrobat Distiller 5.0} (or
later) as the PDF creator. The document author typically uses dvips (or dvipsone) to
produce a PostScript file, which is then distilled to obtain a PDF.

If you wish to use (dynamically) created stamps that have opacity less than 1,
you need to distill using \textbf{Standard\_transparancy.joboptions} with distiller,
in this case, \textbf{Acrobat Distiller 6.0} (or later) is required; otherwise, this
distiller job options file is not needed.

The \textbf{Standard\_transparancy.joboptions} file is supplied with the \textsf{graphicxsp}
package; the documentation of the \textsf{graphicxsp} package includes installation instructions.

\section{Installation}

The installation is simple enough. Unzip \texttt{annot\_pro.zip} in a
folder that is on your {\LaTeX} search path.  Refresh your filename
database, if appropriate.

\begin{defineJS}{\winedtDist}
Run(|"c:\\Program Files\\Adobe\\Acrobat 9.0\\Acrobat\\acrodist.exe" -F "%P\\%N.ps"|,'%P',0,0,'%N.ps - Distiller',1,1);
\end{defineJS}

\textbf{\textcolor{red}{Important:}} When creating a file attachment annotation,
you must specify a path to the file to be attached, and distiller must embed
this file.  In recent versions of Acrobat,
security restrictions have been put in place to prevent
\textbf{Distiller} from reading files (the PostScript \textbf{file}
operator does not work). Fortunately, Distiller has a switch that
turns off this particular restriction. To successfully use this
package, therefore, you need to run Distiller by using the
\texttt{-F} command line switch.

I personally use the WinEdt application as my text
editor,\footnote{WinEdt home page: \url{www.winedt.com}} and have
defined a Distiller button on my toolbar. The Distiller button
executes the following WinEdt macro.\annotpro[margin]{\winedtDist}
\begin{Verbatim}[fontsize=\footnotesize]
Run(|"c:\Program Files\Adobe\Acrobat 9.0\Acrobat\acrodist.exe" -F
    "%P\%N.ps"|,'%P',0,0,'%N.ps - Distiller',1,1);
\end{Verbatim}
\let\winedtDist=\empty
Note the use of the \texttt{-F} switch for \texttt{acrodist.exe}.
Here the path is to the version~9 of distiller,
Adobe has been fairly consistent about path to its application; for example,
the path to distiller 7 (should be)\\[3pt]
{\small\verb!c:\Program Files\Adobe\Acrobat 7.0\Acrobat\acrodist.exe!}

If this package is used to create file attachment annotations without the
\texttt{-F} switch, you typically get the following error message in
the Distiller log file
\begin{Verbatim}[fontsize=\small]
%%[ Error: undefinedfilename; OffendingCommand: file ]%%
\end{Verbatim}
This tells you that either you have not started Distiller with the
\texttt{-F} command line switch, or Distiller can't find one of the
files that the \textbf{file} operator was trying to read.

\newtopic \textbf{Mac OS Users.} The above comments on the \texttt{-F} command line switch
is for Windows users, Mac OS users must choose the \texttt{AllowPSFileOps} user preference, this is located
in the \texttt{plist}, possibly located at
\begin{Verbatim}[fontsize=\small]
/Users/[User]/Library/Preferences/com.adobe.distiller9.plist
\end{Verbatim}
You can also use Spotlight, the search utility on Mac, to search for the string \texttt{com.adobe.distiller};
the result might be\\[3pt]\hspace*{20pt}\texttt{com.adobe.distiller9.plist}.\footnote{In the case of Adobe Distiller, version 9.0}\\[3pt]Clicking on this find,
Spotlight opens \texttt{com.adobe.distiller9.plist} in the \texttt{plist} editor, see \hyperref[plist]{Figure~\ref*{plist}}.
If necessary, click on the arrow next to the Root to expand the
choices, then click the up and down arrows at the far
right in the \texttt{AllowPSFileOps} row to select Yes as the value.
\begin{figure}[hbt]\setlength{\fboxsep}{0pt}
\begin{center}
\fbox{\includegraphics[width=.75\linewidth]{plistEditor}}
\caption{com.adobe.distiller9.plist}\label{plist}
\end{center}
\end{figure}

\section{The \texorpdfstring{\protect\cs{annotpro}}{\CMD{annotpro}} Command}

The main command of this package is \Com{annotpro}; the command is controlled by
its optional parameters. The same command can create a text annotation (sticky note),
a stamp annotation, or a file attachment. The syntax of this command is

{\small
\begin{dCmd}{.66\linewidth}
\annotpro[<key-values>]{<text>}
\end{dCmd}
}
\PD The optional argument is one or more key-value pairs that describe the annotation; the
required argument, \texttt{<text>}, is the ``contents'' of the annotation; for the text and
stamp annotation, \texttt{<text>} becomes the contents of the popup annotation, for a file attachment
annotation, which has not associated pop-up, it is the description of the file attachment that appears
in the file attachment panel of Adobe Reader. In the latter case, the value of \texttt{<text>} should be
rather short.

The key-value pairs are described over the next few sections.

\subsection{Key-values common to all annotations}

The following are key-value pairs common to all annotations.

\begin{itemize}
  \item \texttt{type}: The \texttt{type} key determines the type of annotation to be produced;
        permissible values are \texttt{text}, \texttt{stamp}, and \texttt{fileattachment}. This
        key is optional, if not present, \texttt{type=text} is assumed.
  \item \texttt{name}: The name of the icon to use for the declared \texttt{type}. Permissible
        values are dependent on the \texttt{type}, and are discussed in subsequent sections.
  \item \texttt{title}: Text to be displayed in the title bar of the annotation's pop-up window
        when open and active. By convention, this entry identifies the user who made the annotation,
        though any (short) text may be used. You can use \cs{setAnnotOptions} to globally set
        the title of each annotation, perhaps using your name.
\begin{Verbatim}[fontsize=\small]
    \setAnnotOptions{title={D. P. Story}}
\end{Verbatim}
  \item \texttt{subject}: Text representing a short description of the subject of the annotation.
    You can use \cs{setAnnotOptions} to globally set the subject of each annotation,
\begin{Verbatim}[fontsize=\small]
    \setAnnotOptions{title={D. P. Story},
        subject={AcroTeX Communiqu\'e}}
\end{Verbatim}
  \item \texttt{color}: The color of the title bar of the pop-up window of the annotation.
  \item \texttt{readonly}: Set the annotation to readonly. The user can click on the annot to
    see the popup, but the user, if using Acrobat, cannot move the annotation around on the page.
    The popup window can still be move by the user. (This property makes no difference to the
    user of Adobe Reader.)
  \item \texttt{opacity}: The opacity value ($
          \text0\le\texttt{opacity}\le\text1$) to be used in painting the (icon of
          the) annotation, but does apply to the pop-up window. The default
          is 1.0.
  \item[] Adobe Distiller handles the opacity for us in all cases except when we create a (dynamic) stamp.
        If an opacity value less than 1 is desired, special techniques are needed, and the file needs to
        be distilled using the \textbf{Standard\_tranparency} job options.

\end{itemize}
The following key-values are {\LaTeX} based concerning placement of the annotation in the margin.
\begin{itemize}
  \item \texttt{margin}: Use this key (it has no value), to declare that you want the annotation
        to appear in the margin. The \cs{marginpar} command from core {\LaTeX} is used, the placement
        of the annotation follows the rules set down by {\LaTeX}.  You can reverse the placement of the
        annotation by using the {\LaTeX} command \cs{reversemarginpar} (annots placed in the right margin, and now placed in the left);
        you can return to the default by using \cs{normalmarginpar}.

  \item[] Given that you have use the \texttt{margin} key, there is an associated key that can be used, as well
          as a command.
  \begin{itemize}
        \item \texttt{margintext}: The value of this key is text that will be typeset just below the annotation icon.
        \item \cs{marginpartextformat}: A {\LaTeX} command for
                formatting the text in the margin, the default definition is\smallskip
\begin{Verbatim}
\margintextformat{\bfseries\tiny\color{blue}}
\end{Verbatim}
    \end{itemize}
    \item[] For an annotation placed in the margin with margin text, you might want to use the \texttt{readonly}
        key, this prevents the user---even one using Acrobat---from moving the annotation away from its caption.
\end{itemize}
The following key-value is for your convenience.
\begin{itemize}
  \item \texttt{presets}: A key to allow the introduction of pre-defined options, for example,
    you might like all your comment annotations to be red, so you can define
\begin{verbatim}
   \def\myComments{type=text,name=Comment,color=red}
\end{verbatim}
then say
\begin{verbatim}
   \annotpro[presets=\myComment]{Way to go!}
\end{verbatim}
Additional options may be included,
\begin{verbatim}
   \annotpro[presets=\myComment,margin]{Way to go!}
\end{verbatim}
for example.

\end{itemize}

\subsection{Key-values for text annotations}

The position of the annotation is determined by its bounding rectangle; for the
text annotation, an icon is placed so that its upper left corner is at the upper
left corner of the bounding rectangle. The icons themselves have certain dimensions
that have been recorded within the \texttt{annot\_pro} package, so you need not worry
about leaving space for them.

An important fact about the icons used by text annotation is that they \emph{do not zoom in or out} as the page
magnification is changed; furthermore, the graphics commands \cs{scalebox} and \cs{resizebox} do not rescale
the icons as expected.

The following are options specific to the text annotation. Recall, the text annotation
is of \texttt{type=text}.
\begin{itemize}
    \item \texttt{name}: The name of the icon to use when displaying this annotation in closed form (no pop-up window visible).
    Possible values---as specified in the \textsl{PDF Reference}---are
    \texttt{Comment}, \texttt{Key}, \texttt{Note}, \texttt{Help},
    \texttt{NewParagraph}, \texttt{Paragraph}, and \texttt{Insert}.
    Additional icons that are available in recent versions of Adobe
    Reader are \texttt{Check}, \texttt{Circle}, Cross, \texttt{Star}, \texttt{RightArrow}, \texttt{RightPointer},
    \texttt{UpArrow}, and \texttt{UpLeftArrow}.
    \item[] If you are using comments in your document, and your audience
    have older versions of Adobe Reader, it is best to use only the seven listed in the \textsl{PDF Reference}.
    \item \texttt{open}: A Boolean value that determines if the pop-up window is open or not. The package default
    is \texttt{false}. You can use \cs{setAnnotOptions} to set this option globally.
    \item \texttt{nohspace}, \texttt{novspace}, \texttt{nospace}: The presence of these commands zeroes out
    the dimension(s) of the bounding rectangle. Specifying \texttt{nohspace} as an option causes the icon to take
    up no horizontal space as the page is latexed. Here\annotpro[nohspace]{This a sticky note with the nospace option} is an example of a sticky note with the \texttt{nohspace}
    option. Without any of these three keys, the text annotation \annotpro[type=text,name=Key]{A sticky note that takes up TeX space. If you put the document
    into 100\% magnification, you'll see the note fits precisely into the allotted space.} fits exactly into the
    allotted space at \setLinkText[\A{\JS{this.zoom=100;}}\Color{0 .6 0}]{100\% magnification}, try it.

    \item[] When the icon takes up no {\TeX} space, it may cover content on
        the page, as it does above. Acrobat users can move the icon
        around, but AR users cannot move the icon. The pop-up window is
        movable and scalable, but the icon cannot be moved. Therefore,
        you must be careful about placement.

    \item[] Additional positioning of the icons can be made using standard {\LaTeX}
    commands such as \cs{raisebox} and \cs{smash}. For example,\smash{\raisebox{1in}{\annotpro[nospace,color=blue,opacity=.25]{I've raised this annot by 1in.
    I've also used the nospace key, the icon does not take up any TeX space.}}} the blue icon above was created by
\begin{Verbatim}[fontsize=\footnotesize]
    For example,\smash{\raisebox{1in}\raisebox{1in}{%
        \annotpro[nospace,color=blue,
            opacity=.25]{...clever message...}}}
\end{Verbatim}
Note that I've set the \texttt{opacity} to .25.

\end{itemize}


\subsection{Key-values for stamp annotations}

A stamp annotation is similar to a text annotation in the sense that
it has a pop-up window in which the contents of the message is
displayed; however, unlike the text annotation icons, the stamp
appearance by be re-scaled using \cs{scalebox} and \cs{resizebox} of
the graphics package; however, the keys \texttt{scale},
\texttt{widthTo}, and \texttt{heightTo}, as described below, are the
recommended methods of re-scaling a stamp.

The following are the key-values associated with this annotation type.

\begin{itemize}

\begingroup\raggedright

    \item \texttt{name}: The stamps listed in the \textsl{PDF
    Reference} are \texttt{Approved}, \texttt{AsIs},
    \texttt{Confidential}, \texttt{Departmental}, \texttt{Draft},
    \texttt{Experimental}, \texttt{Expired}, \texttt{Final},
    \texttt{ForComment}, \texttt{ForPublicRelease},
    \texttt{NotApproved}, \texttt{NotForPublicRelease},
    \texttt{Sold}, and \texttt{TopSecret}. If \texttt{name}
    is not specified, \texttt{Draft} is the default.\par\endgroup

    \item[] There are other stamps, not listed in the \textsl{PDF
    Reference}, but available in more recent versions of Acrobat.
    The file \texttt{stamps.pdf} lists all the stamps that I have
    access to. The names of these other stamps are recognized by the
    \texttt{name} key.

    \item[] The dimensions of the stamps listed above are all the
    same, they are \texttt{150bp} width and \texttt{40bp} high.

    \item[] Additional stamps are shipped by Acrobat, a listing of these
    appears in the file \texttt{stamps.pdf} (\texttt{stamps.tex}).

    \item\texttt{width}, \texttt{height}: If the value of
    \texttt{name} key is something other than one of the stamps
    listed above (one of the stamps listed in the file
    \texttt{stamps.pdf}), the width and height are not known to
    \textsf{annot\_pro}. In this case, use the \texttt{height} and \texttt{width} keys
    to set the dimensions of the bounding box. Adobe Distiller will
    resize the stamp to the stamp is the largest one that can fit in
    the bounding box, the stamp will be centered vertically and
    horizontally within the bounding box.

    \item[] Here are a couple of examples, the bounding box is should as a black \cs{fbox}.

\begin{itemize}

\previewtrue

        \item This one \annotpro[type=stamp,name=SBApproved,widthTo=106bp,color=webbrown]{This package just got better!}
        fits more or less exactly.  I determined the dimensions of this stamp through some controls of the user interface.
        Contrast this this stamp
        \annotpro[type=stamp,width=50bp,height=50bp,name=SBApproved,color=webbrown]{This package just got better!}
        obtained by setting \texttt{width=50bp} and \texttt{height=50bp}. Notice the ``best fit,'' and that the bounding
        box takes up space. We can use \cs{smash} to smash its vertical height, let's see how that looks,
        \smash{\annotpro[type=stamp,width=50bp,height=50bp,name=SBApproved,color=webbrown]{This package just got better!}}

\smallskip

\begin{defineJS}{\annotstampi}
Exact fit:
\\annotpro[type=stamp,name=SBApproved,color=webbrown]{This package just got better!}
\end{defineJS}
\begin{defineJS}{\annotstampii}
Bad rectangle, but stamp fits the best it can:
\\annotpro[type=stamp,name=SBApproved,color=webbrown]{This package just got better!}
\end{defineJS}

\previewfalse

        \item[] The code for producing these stamps are given in the margins.
        \annotpro[margin,readonly,margintext={\centering Good Fit}]{\annotstampi}%
        \annotpro[margin,readonly,margintext={\centering Bad Fit}]{\annotstampii}%

\begin{defineJS}{\annotstampiii}
Resize using \\resizebox. \\raisebox was used to lift the same up a little:
\\raisebox{4pt}{\\resizebox{.5in}{!}{\\annotpro[type=stamp,name=SBApproved,color=webbrown]{This package just got better!}}}
\end{defineJS}

    \item[] You can resize these stamps using \cs{scalebox} and \cs{resizebox}, like so.
    \raisebox{4pt}{\resizebox{.5in}{!}{\annotpro[type=stamp,name=SBApproved,color=webbrown]{This package just got better!}}}
    \enspace The code for producing this stamp are given here \annotpro{\annotstampiii}.

\begin{defineJS}{\annotstampiv}
\smash{\makebox[0pt][l]{\annotpro[type=stamp,name=Approved,color=blue]{I give my stamp of approval!}}}
\end{defineJS}

\item To create a stamp\smash{\makebox[0pt][l]{\annotpro[type=stamp,name=Approved,color=blue]{I give my stamp of approval!}}} that takes up no space, it is easiest to use \cs{smash} and \verb!\makebox[0pt][l]{text}!;
    here is one of the standard stamps as listed in the \textsl{PDF Reference}. The code for this stamp is given
    in this note \annotpro{\annotstampiv}.
\end{itemize}

\item[] Try changing the magnification of the PDF page, you'll see that stamps are re-scaled as you zoom in or out, while
the text annotations are not. I don't like text annotations for this reason.

\begin{defineJS}{\annotstampv}
\\annotpro[type=stamp,customStamp=MyDPSImage,ap=AdobeDon,color=webbrown]{This is the best picture of me ever taken. Akron, about 2005.}
\end{defineJS}

\item\texttt{rotate}: Stamps can be rotated, use this key to enter an angle of rotation, for example,
    \texttt{rotate=30} rotates the stamp $\text{30}^\circ$ counter clock-wise.

\item[\textcolor{red}{\ding{043}}] Do not use the \cs{rotatebox} command of \textsf{graphics} package,
this command \emph{does not rotate} the stamp.

\item \texttt{scale}: Use this key to re-scale the stamp; the value of this key is a number between
    0 and 1. For example, \texttt{scale=.5} reduces both width and height in half.
\item \texttt{widthTo}: This key resizes the stamp so that the width is the value of this key; for example,
    \texttt{widthTo=2in} re-scales the stamp to have a 2in width.
\item\texttt{heightTo}: This key resizes the stamp so that the height is the value of this key; for example,
    \texttt{heightTo=2in} re-scales the stamp to have a 2in height.

\item[] Only one of the keys \texttt{scale}, \texttt{widthTo}, and \texttt{heightTo} are recognized
    for any stamp annotation. If all three are specified, only \texttt{scale} is used. If
    \texttt{widthTo} and \texttt{heightTo} are both specified, then \texttt{widthTo} is used.

\item[\textcolor{red}{\ding{043}}] The use of these keys is the recommend way of re-scaling
a stamp. These methods are compatible with the \texttt{rotate} key.

\item \texttt{customStamp}: You can create a custom stamp from any
    image you wish to use, here is
    \annotpro[type=stamp,customStamp=MyDPSImage,ap=AdobeDon,color=webbrown]{This
    is the best picture of me ever taken. Akron, about 2005.} one such
    example. The code for the above stamp is given here
    \annotpro{\annotstampv}.

\item \texttt{ap}: When the \texttt{\texttt{customStamp}} key is
    used, you have to supply an indirect reference to the appearance of
    the stamp. This reference is made through the \texttt{ap} key. The
    example above demonstrates the use of the \texttt{ap} key.
\end{itemize}

\textbf{\textcolor{red}{Important:}} When using the stamps of
Acrobat always perform a SaveAs on the file when you have finished
building the file. This imports the appearances of the stamps into
the document and saves them.

\redpoint The creation of a custom stamp requires a details list of steps, at some point I'll write a white paper on the subject.

\begin{defineJS}{\approvedStmp}
\\annotpro[type=stamp,name=Approved,widthTo=2in,rotate=30]{...}
\end{defineJS}

Here's an example of the keys \texttt{rotate} and \texttt{widthTo}:
\begin{center}
            \annotpro[type=stamp,name=Approved,widthTo=2in,rotate=30]{The source for this
            stamp is ...\string\r\approvedStmp}
\end{center}

\subsection{Key-values file attachment annotations}

The file attachment annotation has no pop-up window, the value of the required parameter is used as a description
of the attached file, and appears in the file attachment window.

The key-value pairs special to this type of annotation are as follows.

\begin{itemize}
    \item\texttt{name}: The name of the icon to use, permitted values are
    \texttt{Graph}, \texttt{Paperclip}, \texttt{PushPin}, and \texttt{Tag}. If the value of name is not
    specified, the default is \texttt{PushPin}. The annot\_pro package knows the dimensions of each of these
    icons, so you need not worry about them. They can be re-scale using standard commands from the graphics package,
    though, there may be little need of doing so.
    \item \texttt{file}: The value of the file key is the \emph{absolute path} to the file to be attached. I've
    devised a helper command \Com{defineAPath} that can be used to define the path to your file. For example, we can
    define a path to wherever the files are, like so
\begin{Verbatim}[fontsize=\footnotesize]
  \defineAPath{\graphicsPath}
    {C:/AcroTeX/acrotex/aebpro/annot_pro/examples/graphics}
\end{Verbatim}
\item[] The command takes two arguments, the name of the command to be defined, and the path.

\defineAPath{\graphicsPath}{C:/AcroTeX/acrotex/aebpro/annot_pro/examples/graphics}

\begin{defineJS}{\fa}
\\annotpro[type=fileattachment,file={\graphicsPath/AdobeDon.pdf},name=Paperclip]{The author of annot\_pro (ho, ho).}
\end{defineJS}

\item[] We can create a file attachment \annotpro[type=fileattachment,file={\graphicsPath/AdobeDon.pdf},name=Paperclip]{The author of annot\_pro (ho, ho).}
like so, ho, ho. Here is the code for this file attachment \annotpro[name=Star]{\fa}. Clicking the file attachment icon will open the file,
in recent versions of Acrobat, the file is listed in the file attachments panel. Open it using the user interface, and you'll see
the file listed, as well as a description, as passed to the annot as the second argument of \cs{annotpro}.
\end{itemize}

The file attachment icons can be resized using any of the graphics commands, \cs{scalebox} or \cs{resizebox}.

\subsection{Setting Global Options with \texorpdfstring{\protect\cs{setAnnotOptions}}{\CMD{setAnnotOptions}}}

Global options are by using the \cs{setAnnotOptions} command.
In the preamble of this document I placed
\begin{Verbatim}[fontsize=\footnotesize]
\setAnnotOptions{subject={AcroTeX Communiqu\'e},title={D.P. Story}}
\end{Verbatim}
That way, I didn't have to constantly type in my personal name for each example. These options can be overwritten
by specifying options locally, if I say, \verb+\annotpro[author=Don Story]{Hi there!}+, the author is now my
alter ego, Don Story.

%\redpoint\textbf{\textcolor{red}{Important:}} Certain key, \texttt{name}, should not be used to set global options,
%\cs{setAnnotOptions} tests for these, and puts them back to their default values that are expected
%by \cs{annotpro}. These keys should only be used for passing options to \cs{annotpro} in its option list.


\bigskip

That's all for now, I simply must get back to my retirement. \dps

\end{document}
