summaryrefslogtreecommitdiff
path: root/texmf-dist/doc/latex/aeb-pro
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2017-07-13 10:25:48 +0900
committerNorbert Preining <norbert@preining.info>2017-07-13 10:25:48 +0900
commitcfe306ba1b7ec40855a300580b7981845d56edeb (patch)
treee2feaf2adf8a8afe43a995528097913793874d01 /texmf-dist/doc/latex/aeb-pro
parent32d0671418a3cc6ad0465b06539ed54d96f77784 (diff)
add aeb-mlink aeb-pro aebxmp graphicxsp annot-pro
Diffstat (limited to 'texmf-dist/doc/latex/aeb-pro')
-rw-r--r--texmf-dist/doc/latex/aeb-pro/README.md44
-rw-r--r--texmf-dist/doc/latex/aeb-pro/aebpro_man.pdfbin0 -> 609630 bytes
-rw-r--r--texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex1.pdfbin0 -> 70199 bytes
-rw-r--r--texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex1.tex430
-rw-r--r--texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex2.pdfbin0 -> 50752 bytes
-rw-r--r--texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex2.tex232
-rw-r--r--texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex3.pdfbin0 -> 718560 bytes
-rw-r--r--texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex3.tex361
-rw-r--r--texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex4.pdfbin0 -> 124605 bytes
-rw-r--r--texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex4.tex346
-rw-r--r--texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex5.pdfbin0 -> 256437 bytes
-rw-r--r--texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex5.tex469
-rw-r--r--texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex6.pdfbin0 -> 255216 bytes
-rw-r--r--texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex6.tex150
-rw-r--r--texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex7.pdfbin0 -> 55695 bytes
-rw-r--r--texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex7.tex161
-rw-r--r--texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex8.pdfbin0 -> 681851 bytes
-rw-r--r--texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex8.tex218
-rw-r--r--texmf-dist/doc/latex/aeb-pro/examples/aebpro_index_ex.tex44
-rw-r--r--texmf-dist/doc/latex/aeb-pro/examples/children/explog.pdfbin0 -> 49193 bytes
-rw-r--r--texmf-dist/doc/latex/aeb-pro/examples/children/target1.pdfbin0 -> 29562 bytes
-rw-r--r--texmf-dist/doc/latex/aeb-pro/examples/children/target1.tex72
-rw-r--r--texmf-dist/doc/latex/aeb-pro/examples/children/target2.pdfbin0 -> 24149 bytes
-rw-r--r--texmf-dist/doc/latex/aeb-pro/examples/children/target2.tex43
-rw-r--r--texmf-dist/doc/latex/aeb-pro/examples/children/theeuro.pdfbin0 -> 43410 bytes
-rw-r--r--texmf-dist/doc/latex/aeb-pro/examples/extras.zip.txtbin0 -> 434162 bytes
-rw-r--r--texmf-dist/doc/latex/aeb-pro/examples/myCoverPage.pdfbin0 -> 9068 bytes
-rw-r--r--texmf-dist/doc/latex/aeb-pro/examples/myCoverPage.tex16
-rw-r--r--texmf-dist/doc/latex/aeb-pro/examples/test_install.pdfbin0 -> 17732 bytes
-rw-r--r--texmf-dist/doc/latex/aeb-pro/examples/test_install.tex27
-rw-r--r--texmf-dist/doc/latex/aeb-pro/install_jsfiles.pdfbin0 -> 220856 bytes
31 files changed, 2613 insertions, 0 deletions
diff --git a/texmf-dist/doc/latex/aeb-pro/README.md b/texmf-dist/doc/latex/aeb-pro/README.md
new file mode 100644
index 00000000..4c008de9
--- /dev/null
+++ b/texmf-dist/doc/latex/aeb-pro/README.md
@@ -0,0 +1,44 @@
+The AeB Pro Package
+Author: D. P. Story
+Dated: 2017-03-08
+
+The AeB Pro Package complements and extends AcroTeX eDucation Bundle.
+
+AeB Pro implements a number of new features:
+ (1) AeB Central (this can be used by non-distiller users)
+ (2) Complete support for set up the initial view of the document
+ (3) Extensive support for document actions: document level JS,
+ set document actions (willSave, didSave, etc.) and open
+ document actions. (4) Complete support for page actions (5)
+ Complete support for full screen mode, and all the current
+ transition effects through version 8.
+ (6) Methods to easily attach documents
+ (7) document assembly methods, methods used immediately following
+ PDF creation.
+ (8) Methods for linking to attachments and launching attachments
+ (9) Support for creating PDF Packages.
+ (10) Initializing fields using unicode.
+ (11) Basic support for layers, rollovers and animations.
+ (12) In this version (v2.1 or later), the package is opened up to
+ non-Distiller workflows. Use the dvips/Distiller workflow to obtain all
+ features, (1)--(11) below, of this package. For authors that have Acrobat
+ but prefer a non-Distiller workflow, use the useacrobat option for
+ features (1)--(10) below. For authors who do not have Acrobat, use the
+ nopro option to access features (1)--(3),
+
+Extensive examples illustrate all these features.
+
+Installation Instructions: Contained in the documentation
+aebpro_man.pdf and in install_jsfiles.pdf.
+
+Let me know if there are problems or suggested features. E-mail
+me at dpstory@uakron.edu or dpstory@acrotex.net
+
+The AcroTeX Blog (http://blog.acrotex.net/) lists the distribution files at
+http://www.acrotex.net/blog/?page_id=835, all demo files that use AeB Pro
+are listed at http://www.acrotex.net/blog/?tag=aeb-pro.
+
+Now, I simply must get back to my retirement.
+
+D. P. Story
+dpstory@uakron.edu
diff --git a/texmf-dist/doc/latex/aeb-pro/aebpro_man.pdf b/texmf-dist/doc/latex/aeb-pro/aebpro_man.pdf
new file mode 100644
index 00000000..b25ceb9a
--- /dev/null
+++ b/texmf-dist/doc/latex/aeb-pro/aebpro_man.pdf
Binary files differ
diff --git a/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex1.pdf b/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex1.pdf
new file mode 100644
index 00000000..4af04e42
--- /dev/null
+++ b/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex1.pdf
Binary files differ
diff --git a/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex1.tex b/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex1.tex
new file mode 100644
index 00000000..52404840
--- /dev/null
+++ b/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex1.tex
@@ -0,0 +1,430 @@
+% use useacrobat option with pdftex and xetex if you have acrobat
+% use nopro if you don't have acrobat
+\documentclass{article}
+\usepackage[%
+ web={
+ pro,
+ designv,
+ tight,
+ centertitlepage,
+ },
+ aebxmp,
+]{aeb_pro}
+
+
+\DeclareDocInfo
+{
+ title=The AeB Pro Package\texorpdfstring{\\[1ex]}{: }Doc/Page Events \& Fullscreen Support,
+ author=D. P. Story,
+ university=Acro\negthinspace\TeX.Net,
+ email=dpstory@acrotex.net,
+ subject=Test file for the AeB Pro package,
+ keywords={Adobe Acrobat, JavaScript},
+ talksite=\url{http://www.acrotex.net},
+ talkdate={January 12, 2007},
+ copyrightStatus=True,
+ copyrightNotice={Copyright (C) \the\year, D. P. Story},
+ copyrightInfoURL=http://www.acrotex.net
+}
+\talkdateLabel{Published:}
+
+\newcommand{\cs}[1]{\texttt{\char`\\#1}}
+\newcommand\newtopic{\par\ifdim\lastskip>0pt\relax\vskip-\lastskip\fi
+\vskip\medskipamount\noindent}
+\newenvironment{sverbatim}
+{\par\footnotesize\verbatim}{\endverbatim}
+
+%
+% Environments for setting the will and did things
+% Advanced > Document Processing > Set Document Actions
+%
+\begin{willClose}
+console.println("willClose");
+\end{willClose}
+
+\begin{willSave}
+console.println("willSave");
+\end{willSave}
+
+\begin{didSave}
+console.println("didSave");
+\end{didSave}
+
+\begin{willPrint}
+console.println("willPrint");
+\end{willPrint}
+
+\begin{didPrint}
+console.println("didPrint");
+\end{didPrint}
+
+%
+% Set the default full screen transition behavior
+%
+\setDefaultFS
+{%
+ fullscreen,
+ cursor=delay,
+ Trans=Random,
+ loop,
+ escape
+}
+%
+% This command has been around from insDLJS for many years,
+% used for first page open actions
+%
+\OpenAction{\JS{%
+% console.show();\r
+ console.clear();\r
+ console.println("Show the output of the page actions");
+}}
+%
+% Here, you can add an event that occurs with every page open
+% There is a command to cancel this out
+%
+\begin{everyPageOpen}
+var str = "every page open";
+console.println(str + ": page " + (this.pageNum+1));
+\end{everyPageOpen}
+%
+% Here, you can add an event that occurs with every page close
+% There is a command to cancel this out
+%
+\begin{everyPageClose}
+var str = "every page close";
+console.println(str + ": page " + (this.pageNum+1));
+\end{everyPageClose}
+%
+% To add an additional page open event to the first page, you
+% can use either the \OpenAction of insdljs, or you can use
+% this command indirectly through the addJSToPageOpen environment
+% in the preamble.
+%
+\begin{addJSToPageOpen}
+var str = "This should be the first page"
+console.println(str + ": page " + (this.pageNum+1));
+\end{addJSToPageOpen}
+
+%
+% To add an additional page close event to the first page, use
+% the addJSToPageClose environment in the preamble.
+%
+\begin{addJSToPageClose}
+var str = "This is the close action for the first page!"
+console.println(str + ": page " + (this.pageNum+1));
+\end{addJSToPageClose}
+
+\begin{document}
+
+\setPageTransitionAt{1,\atPage{test}-\atPage{exam},7}{Trans=Blend,PageDur=20,TransDur=5}
+%
+% This environment allows you to set a page open event at a particular page
+% if known. We can specify page ranges by marking the page with a \label,
+% then referencing that page with a special command \atPage, like so.
+%
+\begin{addJSToPageOpenAt}{1,\atPage{test}-\atPage{exam}}
+var str = ("Add to open page at pages between \\\\atPage{test} and \\\\atPage{exam}; Page " + (this.pageNum+1));
+console.println(str);
+\end{addJSToPageOpenAt}
+%
+% This environment allows you to set a page close event at a particular page
+% if known.
+%
+\begin{addJSToPageCloseAt}{5-8,12,15-}
+var str = "Add to close page at page " + (this.pageNum+1);
+console.println(str);
+\end{addJSToPageCloseAt}
+
+%------------------ \maketitle ---------------------------------------
+
+\maketitle
+
+\tableofcontents
+
+%------------------ Document Content ---------------------------------
+
+\section{Document Actions}
+
+In this section we outline the various commands and environments for
+creating document and page actions for a PDF document.
+
+\newtopic As you read through this section, keep the console
+window open to see the various page events reporting back to the
+console.
+
+\subsection{Document Level JavaScripts}
+
+Creating document level JavaScript has been part of AeB for many years, use the
+\texttt{insDLJS} environment, as documented in \texttt{webeqman.pdf}.
+
+\subsection{Set Document Actions}
+
+The AeB Pro provides environments for the events willClose,
+willSave, didSave, willPrint and didPrint JavaScript events.
+Corresponding {\LaTeX} environments are created: \texttt{willClose},
+\texttt{willSave}, \texttt{didSave}, \texttt{willPrint} and
+\texttt{didPrint}. These are illustrated in the preamble of this
+document.
+
+\subsection{Open/Close Page Actions}
+
+When a page opens or closes a JavaScript occurs. Predefined JavaScript can execute
+in reaction to these events. AeB Pro provides several commands and environments.
+
+\subsubsection{Open/Close Page Actions for First Page}
+
+Because of the way AeB was originally written---\textsf{exerquiz}, actually---,
+the first page is a special case.
+
+There is a command, \cs{OpenAction}, that is part of the \texttt{insdljs} package for several years, that
+is used to introduce open page actions:
+
+\begin{sverbatim}
+\OpenAction{\JS{%
+ console.show();\r
+ console.clear();\r
+ console.println("Show the output of the page actions");
+}}
+\end{sverbatim}
+This command goes in the preamble to define action for the first page. This command is capable of defining
+non-JavaScript action, see the documentation of \texttt{insdljs} for some details.
+
+Environments, defined in AeB Pro, but uses macros from \texttt{insdljs} are
+\texttt{addJSToPageOpen} and \texttt{addJSToPageClose}. When placed in the preamble, these
+provide JavaScript support for page open/close events of the first page. In the preamble of this document, you'll find
+
+\begin{sverbatim}
+\begin{addJSToPageOpen}
+var str = "This should be the first page"
+console.println(str + ": page " + (this.pageNum+1));
+\end{addJSToPageOpen}
+\end{sverbatim}
+and
+\begin{sverbatim}
+\begin{addJSToPageClose}
+var str = "This is the close action for the first page!"
+console.println(str + ": page " + (this.pageNum+1));
+\end{addJSToPageClose}
+\end{sverbatim}
+
+\subsubsection{Open/Close Page Actions for the other Pages}
+
+The same two environments \texttt{addJSToPageOpen} and \texttt{addJSToPageClose} can be used
+in the body of the text to generate open or close actions for the page on which they appear.
+It's a rather hit or miss proposition because the tex compiler may break the page at an unexpected location
+and the environments are processed on the page following the one you wanted them to appear on.
+
+\newtopic Just below this paragraph are \texttt{addJSToPageOpen} and \texttt{addJSToPageClose} environments.
+Will the effects defined by these environments appear on this page or the next?
+%
+% These two environments allow you to set the page open and page close actions for
+% the current page. They do not overwrite the action created by the At versions
+% of the same environment.
+%
+\begin{addJSToPageOpen}
+var str = "Local open action"
+console.println(str + ": page " + (this.pageNum+1));
+\end{addJSToPageOpen}
+
+\begin{addJSToPageClose}
+var str = "Local Close action!"
+console.println(str + ": page " + (this.pageNum+1));
+\end{addJSToPageClose}
+
+\newtopic Another approach to trying to place \texttt{addJSToPageOpen} or \texttt{addJSTo\-Page\-Close}
+on the page you want is to use the \texttt{addJSToPageOpenAt} or \texttt{addJSToPageCloseAt} environments.
+These are the same of their cousins, but are more powerful. Each of these takes an argument that specifies
+the page, pages, and/or page ranges of the open/close effects you want. These two commands can go in the
+preamble, but I recommend putting them just after the \verb!\begin{document}! and before \cs{maketitle}, as
+illustrated in this document.
+
+The two environments take a comma-delimited list of pages and page ranges, for example, an argument might
+be \verb!{2-6,9,12,15-}!. This argument states that the open or close JavaScript listed in the environment
+should execute on pages 2 through 6, page 9, page 11, and pages 15 through the end of the document. Very cool!
+
+This is all well and good if you know exactly which pages are the
+ones you want the effects to appear. What's even more cool is that
+you can use {\LaTeX}'s cross-referencing mechanism to specify the
+pages. By placing these environments after \verb!\begin{document}!,
+the cross referencing information (the \texttt{.aux}) has been input
+and you can use \cs{atPage}, a special simplified version of
+\cs{pageref}, to reference the pages. See the verbatim listing
+below.
+
+\begin{sverbatim}
+\begin{addJSToPageOpenAt}{1,\atPage{test}-\atPage{exam}}
+var str = "Add to open page at pages between \\\\atPage{test} and \\\\atPage{exam} "
+ + (this.pageNum+1);
+console.println(str);
+\end{addJSToPageOpenAt}
+\end{sverbatim}
+In the above, we specify a range \verb!\atPage{test}-\atPage{exam}!, which when expanded
+becomes a range of \pageref*{test}-\pageref*{exam}. If the first page number is larger than
+the second number, the two numbers are switched; consequently, \verb!\atPage{exam}-\atPage{test}!
+yields the same results.
+\begin{sverbatim}
+\begin{addJSToPageCloseAt}{5-8,12,15-}
+var str = "Add to close page at page " + (this.pageNum+1);
+console.println(str);
+\end{addJSToPageCloseAt}
+\end{sverbatim}
+Notice that in the \texttt{addJSToPageOpenAt} environment above,
+page 1 was specified. This specification is ignored. You do remember
+that the first page events need to be defined in the preamble, don't
+you.
+
+\subsubsection{Every Page Open/Close Events}
+
+As an additional feature, there may be an occasion where you want to
+define an event for every page. These are handled separately from the earlier
+mentioned open/closed events so one does not overwrite the other. These environments
+are \texttt{everyPageOpen} and \texttt{everyPageClose}. They can go in the preamble, or anywhere.
+They will take effect on the page they are processed on. Using these environments a second time
+overwrites any earlier definition. To cancel out the every page action you can use
+\cs{canceleveryPageOpen} and \cs{canceleveryPageClose}. The environments that appear
+in the preamble are
+
+\begin{sverbatim}
+\begin{everyPageOpen}
+var str = "every page open";
+console.println(str + ": page " + (this.pageNum+1));
+\end{everyPageOpen}
+
+\begin{everyPageClose}
+var str = "every page close";
+console.println(str + ": page " + (this.pageNum+1));
+\end{everyPageClose}
+\end{sverbatim}
+
+\section{Fullscreen Control}
+
+In this section we present the controlling commands for default
+fullscreen mode and for defining page transition effects.
+
+\subsection{\texorpdfstring{\protect\cs{setDefaultFS}}{\textbackslash setDefaultFS}}
+
+Set the default fullscreen behavior of Adobe Reader/Acrobat by using \cs{setDefaultFS}
+in the preamble. This command takes a number of arguments using \texttt{xkeyval}, each key
+correspond to a JavaScript property of the fullscreen object.
+
+\newtopic In the preamble of this document, I have placed \cs{setDefaultFS} specifying
+that the document should go into fullscreen mode with a random transition for its default
+transition effect.
+
+\begin{sverbatim}
+\setDefaultFS
+{%
+ fullscreen,
+ cursor=delay,
+ Trans=Random,
+ loop,
+ escape
+}
+\end{sverbatim}
+See the AeB Pro documentation for full documentation on these properties.
+
+\subsection{Page Transition Effects}
+
+There are two commands \cs{setPageTransition} and
+\cs{setPageTransitionAt}. The former sets the transition effects for
+the page on which it is processed. It suffers from the same malady
+as do \texttt{addJSToPageOpen} and \texttt{addJSToPageClose}, you
+have to hit the page you want. The latter command is the same
+remedy, as illustrated below.
+
+\begin{sverbatim}
+\setPageTransitionAt{1,\atPage{test}-\atPage{exam},7}{Trans=Blend,PageDur=20,TransDur=5}
+\end{sverbatim}
+See the AeB Pro documentation for full documentation on these properties.
+
+\newpage
+\parindent0pt
+
+\section{Test}\label{test}
+
+Hi world! Page \thepage
+
+\newpage
+
+Again, hi! Page \thepage
+
+\newpage
+
+
+\begin{addJSToPageOpen}
+app.beep(0);
+\end{addJSToPageOpen}
+
+\newpage
+
+Introducing the AeB Pro Family!
+
+\newpage
+
+Introducing the AeB Pro Family!
+
+
+\newpage
+
+
+Canceling every open page
+
+\canceleveryPageOpen
+
+\newpage
+\section{Exam}\label{exam}
+
+Introducing the AeB Pro Family!
+
+\newpage
+
+Introducing the AeB Pro Family!
+
+\newpage
+
+Introducing the AeB Pro Family!
+
+\newpage
+
+Introducing the AeB Pro Family!
+
+\newpage
+
+\begin{everyPageOpen}
+var z = "every page open, reset";
+console.println(z + ": page " + (this.pageNum+1));
+\end{everyPageOpen}
+
+Introducing the AeB Pro Family!
+
+\newtopic Resetting every page open this page
+
+\newpage
+
+Introducing the AeB Pro Family!
+
+\newpage
+
+Introducing the AeB Pro Family!
+
+\newpage
+
+Introducing the AeB Pro Family!
+
+\newpage
+
+Introducing the AeB Pro Family!
+
+\newpage
+
+Introducing the AeB Pro Family!
+
+\newpage
+
+Introducing the AeB Pro Family!
+
+\newpage
+
+Introducing the AeB Pro Family!
+
+\end{document}
diff --git a/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex2.pdf b/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex2.pdf
new file mode 100644
index 00000000..5efa8728
--- /dev/null
+++ b/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex2.pdf
Binary files differ
diff --git a/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex2.tex b/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex2.tex
new file mode 100644
index 00000000..03557696
--- /dev/null
+++ b/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex2.tex
@@ -0,0 +1,232 @@
+% use useacrobat option with pdftex and xetex if you have acrobat
+% use nopro if you don't have acrobat
+\documentclass{article}
+\usepackage
+[%
+% useacrobat,
+% nopro,
+ web={
+ pro,
+ designiv,
+% navibar,
+ tight,
+% forcolorpaper,
+ centertitlepage,
+ usesf
+ },
+ aebxmp
+]{aeb_pro}
+
+\begin{comment}
+Experiment with various combinations of \noSectionNumber, \forceSubSubNumbers, Commenting
+and uncommenting the \selectDings data structure (for the toc). Comment and uncomment
+the dings key-value pair for the layout sections data structure.
+\end{comment}
+\noSectionNumbers
+%\forceSubSubNumbers
+
+\begin{comment}
+\selectDings
+{
+ dDingToc=\ding{082},
+ ddDingToc=\ding{079},
+ dddDingToc=\ding{254}
+}
+\end{comment}
+
+\definecolor{orange}{rgb}{0.97,0.65,0.00}
+\definecolor{indianbrown}{rgb}{0.35,0.24,0.11}
+
+\sectionLayout
+{%
+ ding=\ding{082}, % This ding will appear when \noSectionNumbers is in effect, comment out to get no ding
+ indent=\prtscr{-\oddsidemargin}{0pt}, % Use \prtscr to have different values depending on for print or screen
+ halign=l, % align left, the default
+ color=\prtscr{webbrown}{red}, % text color of red
+ special=\prtscr{default}{shadow}, % shadow special effects
+ shadowcolor=blue % shadow color blue
+}
+\subsectionLayout{%
+ ding=\ding{079},
+ indent=\prtscr{-.5\oddsidemargin}{0pt},
+ halign=\prtscr{l}{c},
+ color=red,
+ special=\prtscr{default}{fcolorbox}
+}
+\subsubsectionLayout{%
+ ding=$\bullet$,
+ halign=\prtscr{l}{r},
+ color=indianbrown,
+ special=\prtscr{default}{fcolorboxfit},
+ framecolor=red,
+ bgcolor=orange
+}
+\tocLayout
+{%
+ ding=\ding{082},
+ indent=\prtscr{-\oddsidemargin}{0pt},
+ halign=\prtscr{l}{c},
+ color=red,
+ shadowcolor=blue
+}
+
+\DeclareDocInfo
+{
+ title=The AeB Pro Package
+ \texorpdfstring{\\[1ex]}
+ {: }Highlighting the \texttt{pro} option of Web,
+ author=D. P. Story,
+ university=Acro\negthinspace\TeX.Net,
+ email=dpstory@acrotex.net,
+ subject=Test file for the AeB Pro package,
+ keywords={Adobe Acrobat, JavaScript},
+ talksite=\url{http://www.acrotex.net},
+ talkdate={January 12, 2007},
+ copyrightStatus=True,
+ copyrightNotice={Copyright (C) \the\year, D. P. Story},
+ copyrightInfoURL=http://www.acrotex.net
+}
+\talkdateLabel{Published:}
+
+\selectColors
+{
+ universityColor = blue,
+ titleColor = red,
+ authorColor = blue,
+ urlColor = webbrown,
+ linkColor = webgreen,
+ fileColor = webbrown
+}
+
+\newcommand{\cs}[1]{\texttt{\char`\\#1}}
+\newcommand\newtopic{\par\ifdim\lastskip>0pt\relax\vskip-\lastskip\fi
+\vskip\medskipamount\noindent}
+\newenvironment{sverbatim}
+{\par\footnotesize\verbatim}{\endverbatim}
+
+
+\begin{document}
+
+\maketitle
+
+\tableofcontents
+
+\section{AeB Control Central}
+
+The AeB family of software, {\LaTeX} packages all, are for the most
+part stand alone; however, usually they are used in combination with
+each other, at least that is the purpose for which they were
+originally designed. When several members of family AeB are used,
+they should be loaded in the optimal order. With AeB Pro, you can
+now list the members of the AeB family you wish to use, along with
+their optional parameters you wish to use.
+
+\newtopic For example,
+
+\begin{sverbatim}
+\usepackage[%
+ driver=dvips,
+ web={pro,designv,tight,nodirectory,centertitlepage,usesf},
+ exerquiz={<optional parameters>},
+ ...,
+ aebxmp,
+]{aeb_pro}
+\end{sverbatim}
+Yes, yes, I know this is not necessary, you can always load the
+packages earlier than AeB Pro, but please, humor me.
+
+By default, the code for supporting features that require the use of
+Distiller and Acrobat~Pro are included; there is a \texttt{nopro} option that excludes
+these features. Use the \texttt{nopro} if you wish to use the AeB Control Center
+to load the various members of the Acro\negthinspace\TeX{} family.
+
+\newtopic See the AeB Pro documentation for the list of supported options.
+
+\section{Document Information:
+ \texorpdfstring{\protect\cs{DeclareDocInfo}}
+ {\textbackslash DeclareDocInfo}}
+
+The \texttt{web} package and the \texttt{hyperref} package both have
+several data strings used in the Description tab of the Document
+Properties of a PDF document. Below is the \cs{DeclareDocInfo}
+``data structure'', the meanings of the keys are clear. Some of the
+keys are used in the Description tab of the PDF document, others are
+used in the title page, while others true play a dual role.
+
+\begin{sverbatim}
+\DeclareDocInfo{
+ title=The AeB Pro Package
+ \texorpdfstring{\\[1ex]}
+ {: }Highlighting the \texttt{pro} option of Web,
+ author=D. P. Story,
+ university=Acro\negthinspace\TeX.Net,
+ email=dpstory@acrotex.net,
+ subject=Test file for the AeB Pro package,
+ keywords={Adobe Acrobat, JavaScript},
+ talksite=\url{http://www.acrotex.net},
+ talkdate={January 12, 2007},
+ copyrightStatus=True,
+ copyrightNotice={Copyright (C) \the\year, D. P. Story},
+ copyrightInfoURL=http://www.acrotex.net
+}
+\end{sverbatim}
+The last three keys are particular to the \textsf{aebxmp} package,
+which has been input into this document. These three keys populate
+the Advanced Metadata dialog box; Acrobat~8 Pro is required for
+\textsf{aebxmp} package to work correctly.
+
+\newtopic See the AeB Pro documentation for a detailed description of \cs{DeclareDoc\-In\-fo}
+and the \textsf{aebxmp} package documentation.
+
+\section{Control over Headings}
+
+The \texttt{pro} option of web introduces the use of the xkeyval package and with it comes a
+complex choice for setting up your section headings and various elements of your title page.
+
+\subsection{Designing your Section Headings}
+
+When the \texttt{pro} option of the \textsf{web} package is used, the commands
+\cs{section\-Layout}, \cs{sub\-section\-Layout} and \cs{subsubsectionLayout} become available.
+Look in the preamble of this document, there, I've set the look of the format of each of these
+three section levels. My design choices are meant to illustrate the variety of choices you have,
+I myself have no sense of color, or design, for that matter.
+
+The normal setting is to show section numbers, when you execute \cs{no\-Section\-Numbers} in the preamble,
+obviously, no section numbers will be shown. (Useful for presentations, with no cross-references.) If
+you specify a value for the \texttt{ding} key, then a ding appears where the section number was.
+
+When showing section numbers, the default, one of the famous features of the \textsf{web} package was to have
+a bullet for the subsubsection heading, rather than the subsubsection number. By executing
+\cs{forceSubSubNumbers} in the preamble, you force the appearance of the subsubsection numbers. To get
+the appearance of these numbers in the table of contents, use the \texttt{latextoc} option of \textsf{web}.
+
+The commands can be placed in the preamble or anywhere. They take
+effect at the next encountered section that is applicable.
+
+\subsection{Designing your Initial Pages}
+
+The same mechanism used for the formatting of the section headings is also used for the
+title page and the table of contents.
+
+\subsubsection{The Title Page}
+
+Certain components of the title page can be controlled using the same mechanism as the
+section headings. Corresponding to the university, the title and the author are
+\cs{universityLayout}, \cs{titleLayout} and \cs{authorLayout}. These three have the same key-value
+pairs as the section layout commands, but they do now obey the \texttt{ding} key.
+
+\newtopic See \texttt{aebpro\_titlepg.tex} for an interesting illustration of the key-values
+of the layout for the title page.
+
+\subsubsection{The Table of Contents}
+
+The \cs{tocLayout} command is like the layout commands on the title page, it does not obey the
+\texttt{ding} key. With it you can adjust color of the text and horizontal positioning. Special
+effects can also be specified.
+
+When \cs{noPageNumbers} is in effect, you can specify the values of the \cs{selectDings} structure
+to have dings showing up in the table of contents listing. These dings may or may not match the dings
+of the section labeling. Specifying no ding for a particular section level displays no ding for that
+toc entry.
+
+\end{document}
diff --git a/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex3.pdf b/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex3.pdf
new file mode 100644
index 00000000..2787301a
--- /dev/null
+++ b/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex3.pdf
Binary files differ
diff --git a/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex3.tex b/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex3.tex
new file mode 100644
index 00000000..c20a15e0
--- /dev/null
+++ b/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex3.tex
@@ -0,0 +1,361 @@
+% Acrobat required
+% use useacrobat option with pdftex and xetex if you have acrobat
+\documentclass{article}
+\usepackage{graphicx,fancyvrb}
+\usepackage[%
+ web={
+ pro,
+ designv,
+ tight,
+% forcolorpaper, % uncomment to get doc for paper
+ centertitlepage,
+ usesf
+ },
+ eforms,
+%
+% Attach source file, and the tex log (I've renamed \jobname.log
+% to \jobname.tex.log to avoid the distiller from overwriting it.
+% The distiller only creates the log if there some sort of error message; consequently,
+% the log for distiller is not attached (no error), but the tex log is destroyed by distiller
+ attachsource={tex,log,tex.log},
+%
+% Just for laughs, let's include Robot Man.
+%
+ attachments={extras.zip.txt, ../extras/robot_man.pdf},
+ aebxmp,
+]{aeb_pro}
+
+\DeclareDocInfo
+{
+ title=The AeB Pro Package\texorpdfstring{\\[1ex]}{: }Attachments and Doc Assembly,
+ author=D. P. Story,
+ university=Acro\negthinspace\TeX.Net,
+ email=dpstory@acrotex.net,
+ subject=Test file for the AeB Pro package,
+ keywords={Adobe Acrobat, JavaScript},
+ talksite=http://www.acrotex.net,
+ talkdate={January 12, 2007},
+ version=1.0,
+ copyrightStatus=True,
+ copyrightNotice={Copyright (C) \the\year, D. P. Story},
+ copyrightInfoURL=http://www.acrotex.net
+}
+\DeclareInitView{layoutmag={navitab=UseAttachments},windowoptions=fit}
+
+\newcommand{\cs}[1]{\texttt{\char`\\#1}}
+\newcommand\newtopic{\par\ifdim\lastskip>0pt\relax\vskip-\lastskip\fi
+\vskip\medskipamount\noindent}
+\newenvironment{sverbatim}
+{\par\footnotesize\verbatim}{\endverbatim}
+%
+% As you do not have the necessary background files, the \addWatermarkFromFile
+% will silently fail.
+%
+\begin{forpaper}
+\begin{docassembly}
+var pos=this.path.indexOf(this.documentFileName,"/");
+var myPath=this.path.substring(0,pos);
+try {
+\addWatermarkFromFile({
+ bOnTop:false,
+ cDIPath:myPath+"../extras/Manual_BG_Print_AeB.pdf"
+}); } catch(e) { console.println(e.toString()) };
+try {
+ \importSound({cName: "StarTrek", cDIPath: "../extras/trek.wav" });
+} catch(e) { console.println(e.toString()) };
+try {
+ \importIcon({cName: "logo", cDIPath: "../extras/AeB_Logo.pdf"});
+ \importIcon({cName: "logopush", cDIPath: "../extras/AeB_Logo_bw15.pdf"});
+ \importIcon({cName: "logorollover", cDIPath: "../extras/AeB_Logo_bw50.pdf"});
+ var f = this.getField("cheesySound");
+ f.buttonPosition = position.iconOnly;
+ var oIcon = this.getIcon("logo");
+ f.buttonSetIcon(oIcon,0);
+ oIcon = this.getIcon("logopush");
+ f.buttonSetIcon(oIcon,1);
+ oIcon = this.getIcon("logorollover");
+ f.buttonSetIcon(oIcon,2);
+} catch(e) { console.println(e.toString()) };
+try {\importDataObject({cName: "AeB Pro Example #2",cDIPath: "aebpro_ex2.pdf"});} catch(e){}
+\end{docassembly}
+\end{forpaper}
+\begin{forscreen}
+\begin{docassembly}
+var pos=this.path.indexOf(this.documentFileName);
+var myPath=this.path.substring(0,pos);
+try {
+ \addWatermarkFromFile({
+ bOnTop:false,
+ cDIPath:myPath+"../extras/Manual_BG_DesignV_AeB.pdf"
+ });
+} catch(e) { console.println(e.toString()) };
+try {
+ \importSound({cName: "StarTrek", cDIPath: "../extras/trek.wav" });
+} catch(e) { console.println(e.toString()) };
+try {
+ \importIcon({cName: "logo", cDIPath: "../extras/AeB_Logo.pdf"});
+ \importIcon({cName: "logopush", cDIPath: "../extras/AeB_Logo_bw15.pdf"});
+ \importIcon({cName: "logorollover", cDIPath: "../extras/AeB_Logo_bw50.pdf"});
+ var f = this.getField("cheesySound");
+ f.buttonPosition = position.iconOnly;
+ var oIcon = this.getIcon("logo");
+ f.buttonSetIcon(oIcon,0);
+ oIcon = this.getIcon("logopush");
+ f.buttonSetIcon(oIcon,1);
+ oIcon = this.getIcon("logorollover");
+ f.buttonSetIcon(oIcon,2);
+} catch(e) { console.println(e.toString()) };
+try {\importDataObject({cName: "AeB Pro Example #2",cDIPath: "aebpro_ex2.pdf"});} catch(e){}
+\end{docassembly}
+\end{forscreen}
+
+\begin{document}
+
+\maketitle
+
+\tableofcontents
+
+\section{Introduction}
+
+AeB Pro has two options for attaching files to the source PDF. The
+approach is the \texttt{import\-Data\-Object} JavaScript method in
+conjunction with the FDF techniques.
+
+Also in this sample file, doc assembly techniques are also
+demonstrated.\footnote{The attachments feature uses doc assembly
+methods, but simplified for user convenience.}
+
+\section{Attaching Files with AeB Pro}
+
+There are two options for attaching files
+\begin{enumerate}
+ \item \texttt{attachsource} is a simplified option for attaching
+ any file of the form \cs{jobname.}\texttt{\textsl{ext}}.
+
+ \item \texttt{attachments} is a general option for attaching a
+ file, as specified by its absolute or relative path.
+\end{enumerate}
+
+\subsection{The \texttt{attachsource} option}
+
+Use this option to attach a file with the same base name as \cs{jobname}.
+
+\begin{Verbatim}
+ \usepackage[%
+ driver=dvips,
+ web={pro,usesf,...},
+ attachsource={tex,dvi,log,tex.log},
+ ...
+ ]{aeb_pro}
+\end{Verbatim}
+Simply list the extensions you wish to attach to the current
+document. In the example above, we attach the original source file
+\cs{jobname.tex}, \cs{jobname.dvi}, \cs{jobname.log} (the distiller
+log) and \cs{jobname.tex.log} (the tex log).
+
+
+\newtopic One problem with attaching the log file is that the distiller also
+produces a log file with the same name \cs{jobname.log}.
+Consequently, the log file for the tex file is overwritten by the
+distiller log file. You'll see from the PDF document, that the log
+file attached is the one for the distiller.
+
+A work around for this is to latex your file, rename the
+log file to another extension, such as \cs{jobname.tex.log}, then
+distill.
+
+\subsection{The \texttt{attachments} option}
+
+The \texttt{attachments} key is for attaching files other than ones
+associated with the source file. The value of this key is a
+comma-delimited list (enclosed in braces) of absolute paths and/or
+relative paths to the file required to attach. For example,
+
+\begin{Verbatim}
+\usepackage[%
+ driver=dvips,
+ web={pro,usesf,...},
+ attachments={extras.zip.txt,../extras/robot_man.pdf,
+ /C/Documents and Settings/dps/My Documents/My Pictures/birthday17.jpg},
+ ...
+]{aeb_pro}
+\end{Verbatim}
+The first and second references are relative to the folder containing this
+source file, and third one is an example of an absolute path
+(picture not attached).
+
+\newtopic There are some files that Acrobat does not attach, but
+there is no public list of these. One finds them by discovery,
+\texttt{.exe} and \texttt{.zip} files, for example.
+
+A trick that I use to send \texttt{.zip} files through the email
+(they are often stripped away by mail servers) is to \emph{hide} the
+\texttt{.zip} file in a PDF as an attachment. But since Acrobat does
+not attach \texttt{.zip}, I change the extension from \texttt{.zip}
+to \texttt{zip.txt}, then inform the recipient to save the
+\texttt{zip.txt} file and change the extension back to \texttt{.zip}.
+Swave!
+
+\section{Doc Assembly}
+
+Ahhhh, document assembly. What can be said? This is a method that I
+have used for many years and is incorporated into the
+\textsf{insdljs} package under the name of \texttt{execJS}. Whereas
+the \texttt{execJS} environment is still available to you, I've
+simplified things. The term doc assembly refers to the use of the
+\texttt{docassembly} environment (which is just an \texttt{execJS}
+environment).
+
+The \texttt{execJS}/\texttt{docassembly} environments create an FDF
+file with the various JavaScript commands that were contained in the
+body of the environment. These environments also place in open page
+action so that when the PDF is opened for the first time in Acrobat
+Pro, the FDF file will be imported and the JS will be executed one
+time and then discarded, see \cite{TUG:execJS} for an article on this topic.
+This technique only works if you have Acrobat Pro.
+
+In addition to the \texttt{docassembly} environment, AeB Pro also
+has several macros that expand to JavaScript methods that I find
+useful. These are
+\begin{enumerate}
+ \item \cs{addWatermarkFromFile}: inserts a background into the PDF
+
+ \item \cs{importIcon}: imports icon files\footnote{The
+ AcroMemory package uses these environments and functions to
+ import icons.}
+
+ \item \cs{importSound}: imports a sound file
+
+ \item \cs{appopenDoc}: opens a document
+
+ \item \cs{insertPages}: inserts pages into the PDF, useful for
+ inserting pages of difference sizes, such as tables or figures,
+ into a {\LaTeX} document which requires that all page be of a
+ fixed size.
+
+ \item \cs{importDataObject}: Attaches a file to the PDF. This
+ function is used in the two attachments options of AeB Pro.
+\end{enumerate}
+See the AeB Pro documentation for details. Here, in this demo file,
+I present the code in the preamble of this document:
+\begin{Verbatim}
+var pos=this.path.indexOf(this.documentFileName);
+var myPath=this.path.substring(0,pos);
+\begin{docassembly}
+\addWatermarkFromFile({
+ bOnTop:false,
+ cDIPath:myPath+"../extras/Manual_BG_Print_AeB.pdf"
+});
+\end{docassembly}
+\end{Verbatim}
+It is \emph{very important} to note that the arguments for this
+(pseudo-JS method) are enclosed in matching parentheses/braces
+combination, i.e., \verb!({!\dots\verb!})!. The arguments are
+key-value pairs separated by a colon, and the parameters themselves
+are separated by commas. (The argument is actually an
+object-literal). It is \emph{extremely important} to have the left
+parenthesis/brace pair, \verb!({!, immediately follow the function
+name. This is because the environment is a partial-verbatim
+environment: \verb!\! is still the escape, but left and right braces
+have been ``sanitized''. The commands, like
+\cs{addWatermarkFromFile} first gobble up the next two tokens, and
+re-inserts \verb!({! in a different location. (See the
+\textsf{aeb\_pro.dtx} for the definitions.)
+
+For another cheesy demonstration, let's import a sound, associate it
+with a button. I leave it to you to press the button at your
+discretion.
+\begin{center}
+\setbox0=\hbox{\includegraphics[height=16bp]{extras/AeB_Logo.eps}}
+\newtopic\pushButton[\S{S}\W{0}\A{\JS{%
+ var s = this.getSound("StarTrek");\r
+ s.play();
+}}]{cheesySound}{\the\wd0 }{\the\ht0 }
+\end{center}
+
+\begin{Verbatim}
+\begin{docassembly}
+try {
+ \addWatermarkFromFile({
+ bOnTop:false,
+ cDIPath:myPath+"../extras/Manual_BG_DesignV_AeB.pdf"
+ });
+} catch(e) { console.println(e.toString()) };
+try {
+ \importSound({cName: "StarTrek", cDIPath: "../extras/trek.wav" });
+} catch(e) { console.println(e.toString()) };
+\end{docassembly}
+\end{Verbatim}
+Above is the full verbatim listing of the \texttt{docassembly}
+environment that will execute for the screen. You'll note the
+\cs{importSound} command, which imports the sound file
+\texttt{trek.wav}. I've also enclosed the individual commands in a
+\texttt{try/catch} construct. Doing so is very useful for debugging
+the script.
+
+One last little demonstration of the doc assembly methods. In the
+preamble, I've imported a few AeB logos (forgive me) and placed them
+as appearance faces for the button above. Below is a listing of the
+code, with some comments added.
+
+\begin{Verbatim}[fontsize=\small]
+\begin{docassembly}
+...
+...
+// Import the sounds into the document
+\importIcon({cName: "logo", cDIPath: "../extras/AeB_Logo.pdf"});
+\importIcon({cName: "logopush", cDIPath: "../extras/AeB_Logo_bw15.pdf"});
+\importIcon({cName: "logorollover", cDIPath: "../extras/AeB_Logo_bw50.pdf"});
+var f = this.getField("cheesySound"); // get the field object of the button
+f.buttonPosition = position.iconOnly; // set it to receive icon appearances
+var oIcon = this.getIcon("logo"); // get the "logo" icon
+f.buttonSetIcon(oIcon,0); // assign it as the default appearance
+oIcon = this.getIcon("logopush"); // get the "logopush" icon
+f.buttonSetIcon(oIcon,1); // assign it as the down appearance
+oIcon = this.getIcon("logorollover"); // get the "logorollover" icon
+f.buttonSetIcon(oIcon,2); // assign it as the rollover appearance
+\end{docassembly}
+\end{Verbatim}
+The result is the button you see above.
+
+\newtopic As a final example of \texttt{docassembly} usage, rather
+than using the attachments options of AeB Pro, you can also attach
+your own files using the \texttt{docassembly} environment.
+\begin{Verbatim}[fontsize=\small]
+\begin{docassembly}
+...
+...
+try {
+ \importDataObject({cName: "AeB Pro Example #2",cDIPath: "aebpro_ex2.pdf"});
+} catch(e){}
+\end{docassembly}
+\end{Verbatim}
+The attachments options automatically assign names. These names appear in the Description column of the attachments
+tab of Acrobat/Reader. For file attached using the \texttt{attachsource}, the base name plus extension is used, for
+the files specified by the \texttt{attachments} key, the names are given sequentially, \texttt{"AeB Attachment 1"},
+\texttt{"AeB Attachment 2"} and so on. When you roll your own, the description can be more aptly chosen.
+
+\newtopic I have found many uses for the \texttt{execJS}
+environment, or the simplified \texttt{docassembly} environment.
+You are only limited by your imagination, and knowledge of
+JavaScript for Acrobat.
+
+
+\newpage
+\markright{References}
+
+\begin{thebibliography}{[1]}\label{references}
+\addcontentsline{toc}{section}{\protect\numberline{}References}
+
+\bibitem{TUG:execJS} ``\texttt{execJS}: A new technique for introducing discardable
+JavaScript into a PDF from a \LaTeX{} source,'' TUG\textsc{boat}, The
+Communications of the \TeX{} User Group, Vol.~22, No.~4, pp.\
+265-268 (2001).
+
+\end{thebibliography}
+
+
+
+\end{document}
+
+\importDataObject({cName: "\myEmbeddedFile",cDIPath: "aebpro_ex2.pdf"});
diff --git a/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex4.pdf b/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex4.pdf
new file mode 100644
index 00000000..d43072a7
--- /dev/null
+++ b/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex4.pdf
Binary files differ
diff --git a/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex4.tex b/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex4.tex
new file mode 100644
index 00000000..81c83709
--- /dev/null
+++ b/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex4.tex
@@ -0,0 +1,346 @@
+% dvips/Distiller workflow only
+\documentclass{article}
+\usepackage{amsmath}
+\usepackage[%
+ web={
+ pro,
+ designv,
+ tight,
+% forcolorpaper,
+ centertitlepage,
+ dvipsnames,
+ usesf
+ },
+ uselayers,
+ eforms,
+ aebxmp,
+]{aeb_pro}
+\usepackage{graphicx}
+\usepackage[nomessages]{fp}
+%
+% The versions of pstricks-add and pstricks should be
+% fairly recent.
+%
+\usepackage{pstricks-add}
+\usepackage[absolute,overlay]{textpos}
+
+\DeclareDocInfo
+{
+ title=The AeB Pro Package\texorpdfstring{\\[1ex]}{: }Layers and Rollovers,
+ author=D. P. Story,
+ university=Acro\negthinspace\TeX.Net,
+ email=dpstory@acrotex.net,
+ subject=Test file for the AeB Pro package,
+ keywords={Adobe Acrobat, JavaScript},
+ talksite=http://www.acrotex.net,
+ talkdate={January 12, 2007},
+ copyrightStatus=True,
+ copyrightNotice={Copyright (C) \the\year, D. P. Story},
+ copyrightInfoURL=http://www.acrotex.net
+}
+\talkdateLabel{Published:}
+
+\newcommand{\cs}[1]{\texttt{\char`\\#1}}
+\newcommand\newtopic{\par\ifdim\lastskip>0pt\relax\vskip-\lastskip\fi
+\vskip\medskipamount\noindent}
+\newenvironment{sverbatim}
+{\par\footnotesize\verbatim}{\endverbatim}
+\def\AcroTeX{Acro\negthinspace\TeX}
+
+\begin{document}
+
+\maketitle
+
+\section{Layers}
+
+When the \texttt{uselayers} option is taken, the necessary code is
+input to produce layers (Optional Content Groups). The
+\textcolor{blue}{{\AcroTeX} Presentation Bundle} (APB), which has a
+very sophisticated method of control over layers, by comparison, the
+\textcolor{blue}{AeB Pro} layer support is very primitive indeed. As
+a rule, after you create a layer, you will need a control of that
+layer. This could be a button or a link that executes JavaScript.
+
+The basic command for creating a layer is \cs{xBld}. The content of
+the layer is set off by the \cs{xBld}/\cs{eBld} pair. The command
+\cs{xBld} takes two parameters: (1) the first is optional,
+\texttt{true} if the layer is initially visible or \texttt{false},
+the default, if the layer is hidden initially; (2) the name of the
+layer, this is used to reference the layer, to make it visible or
+hidden.
+
+The creation and control of layers are illustrated in the two
+subsequent sections.
+
+\newtopic When constructing a layer, there are two possible scenarios:
+\begin{enumerate}
+ \item The layer takes up ``tex'' space
+ \item The layer does not take up ``tex'' space
+\end{enumerate}
+Let's look at each of these in turn.
+
+\subsection{Layer takes up space}
+
+A layer that takes up space in tex is the easiest case. For
+example, guess what I'm thinking thinking about: I'm thinking about
+my formerly favorite number, \xBld{mythoughts}the number is the
+value of the integral $\int_0^4 4x + \frac14\,dx$. \eBld Want a
+hint? \setLink[%
+\A{\JS{%
+ var oLayer = getxBld("mythoughts");
+ if ( oLayer != null )
+ oLayer.state = !oLayer.state;
+ }}
+]{\textcolor{red}{Click here}} I hope that hint worked for you.
+Click on the link to hide the layer again.
+
+\newtopic For those viewing this document in PDF, the relevant code
+code is seen below.
+
+First the layer is enclosed in a \cs{xBld}/\cs{eBld} pair, the
+default state is hidden, so we don't supply the optional parameter.
+The require (second) parameter is the name used to refer to the
+layer.
+
+The link text has a JavaScript action. First we get the OCG object
+for this layer by calling the \texttt{getxBld} function (this is
+part of the AeB Pro JavaScript) then if non-null (you may not have
+spelled the name correctly) we toggle the current state,
+\texttt{oLayer.state = !oLayer.state}.
+\begin{sverbatim}
+\xBld{mythoughts}the number is the value of the integral
+$\int_0^4 4x + \frac14\,dx$. \eBld Want a hint?
+\setLink[\A{\JS{%
+ var oLayer = getxBld("mythoughts");
+ if ( oLayer != null )
+ oLayer.state = !oLayer.state;
+ }}
+]{\textcolor{red}{Click here}}
+\end{sverbatim}
+
+An advantage of the layers approach is that the content of the
+layers are latexed as part of the content of the tex file;
+consequently, you can include virtually anything in your layer that
+tex can handle, math, figures, PSTricks, etc. Acrobat Pro 7.0 (and
+distiller) or later is required to build the layers, but only Adobe
+Reader 7.0 or later is needed to view the document, once
+constructed.
+
+\NewPage
+\subsection{Layer takes no space}\label{nospace}
+
+Perhaps the easiest way of creating layers that do not take up any tex space is to use a
+package such as \textsf{textpos}. In the preamble of this document, I've placed the following
+command:
+
+\begin{sverbatim}
+\usepackage{pstricks-add,pstricks}
+\usepackage[absolute,overlay]{textpos}
+\end{sverbatim}
+
+\begin{textblock*}{.67\linewidth}[.5,.5](.5\paperwidth,.5\paperheight)
+\xBld{crossinggraphcs}\psshadowbox[framesep=0pt]{\fcolorbox{red}{cornsilk}{%
+\parbox{\linewidth}
+{%
+\begin{center}
+\begin{pspicture}(-0.5,-1,0)(7,5)
+ \pscustom[linewidth=1pt,fillstyle=hlines,hatchcolor=red]{
+ \psplot[linewidth=1pt]{2}{5}{%
+ x x mul neg x 6 mul add 5 sub}
+ \psplot[linewidth=1pt]{5}{2}{%
+ x x mul neg 3 div x 4 mul 3 div add 5 3 div add}
+ }
+ \pscustom[linewidth=1pt,fillstyle=vlines,hatchcolor=blue]{
+ \psline(0,1.666667)
+ \psplot[linewidth=1pt]{0}{2}{%
+ x x mul neg 3 div x 4 mul 3 div add 5 3 div add}
+ \psplot[linewidth=1pt]{2}{1}{%
+ x x mul neg x 6 mul add 5 sub}
+ }
+ \psaxes{->}(0,0)(-0.5,-0.5)(7,5)
+ \uput[-90](7,0){$x$}
+ \uput[0](0,5){$y$}
+ \psplot[linewidth=1pt]{0.75}{5.25}{%
+ x x mul neg x 6 mul add 5 sub}
+ \psplot[linewidth=1pt]{0}{5.25}{%
+ x x mul neg 3 div x 4 mul 3 div add 5 3 div add}
+ \rput(5,2){$f$}
+ \rput(3,2){$g$}
+\end{pspicture}
+\end{center}
+}}}\eBld
+\end{textblock*}
+
+Now we can create a layer that takes up no space, but is overlaid on top of the tex content.
+We use the \textsf{textpos} commands to place the layer. Once created and placed, we must
+have a way of showing it and hiding it. This time, we'll use a button:
+\pushButton[
+ \CA{Push}
+\A{\JS{%
+ toggleSetThisLayer("crossinggraphcs");
+}}]{crossinggraphcsBtn}{}{12bp}
+
+\newtopic As you can see from this example, you must be very careful in the placement of your
+layers vis-\`{a}-vis the button. Form fields are laid on top of
+content, and a layer is considered part of the content. This particular layer could be move to the
+upper left corner, for example, Let's see how a link works, shall we? \setLink[%
+\A{\JS{%
+ toggleSetThisLayer("crossinggraphcs");
+}}]{\textcolor{red}{Click here}}! The link is active even through the layer, you just have to find it!
+I could have set this link to that it has a visible bounding box, in which case the border of the
+bounding box shows through the layer, but hey, at least you can find the link!
+
+One thing you need to keep in mind is the placement of the code,
+within the \texttt{textblock} environment. The overlaid material
+will appear on whatever page the \texttt{textblock} ends up on.
+Should you add more material before the \texttt{textblock}, the
+controls may drop off to the next page. When the user presses the
+control, nothing happens, actually, the layer is appearing on the previous page.
+Sometimes it makes sense to insert a \cs{newpage} to ensure the proper placement
+of the overlay relative to the placement of the controls.
+
+\NewPage % this is \newpage when for screen, does nothing when forpaper, defined in web
+
+\defineRC{help1}
+{%
+\psset{llx=-12pt, lly=-12pt,urx =12pt,ury =12pt,xAxisLabel=$x$,yAxisLabel=$y$}
+\begin{psgraph*}[arrows=->,trigLabels=true,trigLabelBase=2,dx=\psPiH](0,0)(-.5,-1.5)(6.75,1.5){.75\linewidth}{.25\linewidth}
+ \psset{algebraic=true}%
+ \rput(4,1){$y=\sin(x)$}%
+ \psplot[linecolor=blue]{0}{TwoPi}{sin(x)}
+\end{psgraph*}
+}
+
+\begin{rollover}
+\begin{textblock*}{.4\linewidth}[.5,.5](.5\paperwidth,.5\paperheight)
+\xBld{help1}\psshadowbox[framesep=0pt]{\fcolorbox{red}{cornsilk}{%
+\parbox{\linewidth}{\insertRC{help1}}}}\eBld
+\end{textblock*}
+\end{rollover}
+\begin{printRollover}
+\definePR{help1}{\parbox{.4\linewidth}{\insertRC{help1}}}\insertPR{help1}
+\end{printRollover}
+
+\section{Rollovers}
+
+The AeB Pro package offers you two rollovers, which ostensibly provides
+help to the document consumer.
+
+\subsection{\texorpdfstring{\protect\cs{texHelp}}{\textbackslash{texHelp}} uses Layers}
+
+The rollover is a special case of the techniques discussed in
+\hyperref[nospace]{section~\ref*{nospace}}. For a rollover, you
+create a form field, enclosing a word, when the user rolls across
+the word, a help box opens. For example, recall the graph of the
+\texHelp{help1}{$\sin(x)$,} isn't it pretty? Try rolling over the
+word that is tagged with the `\texHelpIndicator{}' symbol.
+
+You will have to look at the source file to see what goes on here,
+suffice it to say that the command \cs{texHelp} was used to create
+the rollover, the symbol that appears is defined in the
+\textsf{aeb\_pro} package by \cs{texHelpIndicator}, this command can
+be re-defined to have a different symbol.
+
+\subsection{\texorpdfstring{\protect\cs{pdfHelp}}{\textbackslash pdfHelp} does not}
+
+There is another type of rollover, \cs{pdfHelp}. The command takes three arguments,
+the first one is the name of the button field that is enclose around the third argument,
+the second argument is the help text. The help text is not part of the {\LaTeX} content
+of the document is is not compiled by the {\TeX} compiler, so it should be text. For example,
+can you remember the inventor of \pdfHelp{knuth}{Donald Knuth}{\TeX?}
+
+As with \cs{texHelp}, the symbol that tags the word as a help word
+is defined in \textsf{aeb\_pro.dtx} by the command
+\cs{pdf\-Help\-Indicator}. This command can be re-defined as needed.
+
+\section{Layers and Animation}
+
+Let's see if we can conjure up a little animation, shall we?
+
+\noindent\begin{minipage}{.65\linewidth}\centering
+\DeclareAnime{sinegraph}{10}{40}
+\def\thisframe{\animeBld\psplot[linecolor=red]{0}{\xi}{sin(x)}\eBld}
+\psset{llx =-12pt,lly=-12pt,urx =12pt,ury =12pt} % ,trigLabels=true,labelFontSize=\small
+\begin{psgraph*}[arrows=->,trigLabels=true,trigLabelBase=2,dx=\psPiH](0,0)(-.5,-1.5)(6.75,1.5){164pt}{70pt}
+ \psset{algebraic=true}%
+ \rput(4,1){$y=\sin(x)$}
+ \FPdiv{\myDelta}{\psPiTwo}{\nFrames}%
+ \def\xi{0}%
+ \multido{\i=1+1}{\nFrames}{\FPadd{\xi}{\xi}{\myDelta}\thisframe}
+\end{psgraph*}
+\end{minipage}\hfill
+\begin{minipage}{.3\linewidth}%\centering
+\backAnimeBtn{24bp}{12bp}\kern1bp\clearAnimeBtn{24bp}{12bp}\kern1bp\forwardAnimeBtn{24bp}{12bp}
+\end{minipage}
+
+\newtopic It is possible to combine the techniques of
+\hyperref[nospace]{section~\ref*{nospace}} with those of animation, to create
+an anime that pops up. We leave this as an exercise for the reader, that's you.
+
+\NewPage
+
+\newtopic\xBld{dialog1}This page illustrates how you can create a series of
+steps, all controlled by a button. \eBld\xBld{dialog2}Let us begin by
+drawing the $\sin(x)$ curve. \eBld\xBld{dialog3}Do you think that I can do it?
+\eBld\xBld{dialog4} Well, here goes!\eBld
+
+\begin{center}
+\DeclareAnime{graph}{10}{40}
+\def\frame{\animeBld\psplot[linecolor=red]{0}{\xi}{sin(x)}\eBld}
+\psset{llx=-12pt, lly=-12pt,urx =12pt,ury =12pt,xAxisLabel=$x$,yAxisLabel=$y$}
+\begin{psgraph*}[arrows=->,trigLabels=true,trigLabelBase=2,dx=\psPiH](0,0)(-.5,-1.5)(6.75,1.5){.5\linewidth}{.25\linewidth}
+ \psset{algebraic=true}%
+ \rput(4,1){$y=\sin(x)$}%
+ \FPdiv{\myDelta}{\psPiTwo}{\nFrames}%
+ \def\xi{0}%
+ \multido{\i=1+1}{\nFrames}{\FPadd{\xi}{\xi}{\myDelta}\frame}
+ \xBld{step1}\psplot[linecolor=blue]{0}{Pi 2 div}{sin(x)}\eBld
+ \xBld{step2}\psplot[linecolor=webgreen]{Pi 2 div}{Pi}{sin(x)}\eBld
+ \xBld{step3}\psplot[linecolor=Plum]{Pi}{3 Pi mul 2 div}{sin(x)}\eBld
+ \xBld{step4}\psplot[linecolor=yellow]{3 Pi mul 2 div}{TwoPi}{sin(x)}\eBld
+\end{psgraph*}
+\end{center}
+
+\newtopic\xBld{step1}Notice that the function increases from $[\,0, \pi/2\,]$
+and attains it maximum value of $1$ at $ x = \pi/2$. \eBld\xBld{step2}The
+sine function then decreases to zero over the interval $[\,\pi/2, \pi\,]$.
+\eBld \xBld{step3}Continuing its sinusoidal path it decreases on the
+interval $[\,\pi,3\pi/2\,]$ down to its minimum value of $-1$ at $ x =
+3\pi/2$. \eBld \xBld{step4}Finally, it increases up to $0$ over the
+interval $[\,3\pi/2, 2\pi\,]$ completing the first cycle of its
+graph.\eBld
+
+\newtopic\xBld{wrapup}Try \texttt{shift-click} too. dps\eBld
+
+\begin{defineJS}[\catcode`*=0]{\stepwise}
+if ( typeof stepcounter == "undefined" ) stepcounter = 0;
+if ( !event.shift ) stepcounter++;
+if ( stepcounter > 10 ) stepcounter = 11;
+if ( stepcounter < 1 ) stepcounter = 0;
+switch (stepcounter)
+{
+ case 1: toggleSetThisLayer("dialog1", !event.shift); break;
+ case 2: toggleSetThisLayer("dialog2", !event.shift); break;
+ case 3: toggleSetThisLayer("dialog3", !event.shift); break;
+ case 4: toggleSetThisLayer("dialog4", !event.shift); break;
+ case 5: if (event.shift) aebAnimeLayersBackward(*animSpeed,*nFrames,"*animBaseName");
+ else aebAnimeLayersForward(*animSpeed,*nFrames,"*animBaseName");
+ break;
+ case 6: toggleSetThisLayer("step1", !event.shift); break;
+ case 7: toggleSetThisLayer("step2", !event.shift); break;
+ case 8: toggleSetThisLayer("step3", !event.shift); break;
+ case 9: toggleSetThisLayer("step4", !event.shift); break;
+ case 10: toggleSetThisLayer("wrapup",!event.shift); break;
+ default:
+}
+if ( event.shift ) stepcounter--;
+\end{defineJS}
+
+\medskip
+\begin{center}
+ \pushButton[\CA{Step Through}\TU{Step Through}\A{\JS{\stepwise}}]%
+ {stepthru}{}{12bp}
+\end{center}
+
+
+\end{document}
diff --git a/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex5.pdf b/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex5.pdf
new file mode 100644
index 00000000..012a8932
--- /dev/null
+++ b/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex5.pdf
Binary files differ
diff --git a/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex5.tex b/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex5.tex
new file mode 100644
index 00000000..f155d89b
--- /dev/null
+++ b/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex5.tex
@@ -0,0 +1,469 @@
+% Acrobat required
+% use useacrobat option with pdftex and xetex if you have acrobat
+% ----------------
+%
+% Instructions for compiling this file
+% 1. Compile this file once, but do not make into a PDF yet.
+% 2. Open the two files children/target1.tex and children/target2.tex
+% and compile these two files several times to resolve the cross-
+% references. Now, make into PDFs.
+% 3. Return to this file and compile again to input cross-reference info
+% and make into a PDF via distiller.
+%
+\documentclass{article}
+\usepackage{xr-hyper}
+\usepackage[%
+% driver=dvips,
+ gopro,
+ web={designiv,usesf,tight},
+ attachsource={tex,dvi},
+ attachments={%
+ children/target1.pdf,% % AeB Attachment #1
+ children/target2.pdf,% % AeB Attachment #2
+ ../extras/aest.xls % AeB Attachment #3
+ },
+ linktoattachments,
+ eforms
+]{aeb_pro}
+
+\externaldocument[target1-]{children/target1}
+
+\DeclareDocInfo
+{
+ title=The AeB Pro Package\texorpdfstring{\\[1ex]}{: }Linking to Attachments,
+ author=D. P. Story,
+ university=Acro\negthinspace\TeX.Net,
+ email=dpstory@acrotex.net,
+ subject=Test file for the AeB Pro package,
+ keywords={Adobe Acrobat, JavaScript},
+ talksite=http://www.acrotex.net,
+ talkdate={January 12, 2007},
+ copyrightStatus=True,
+ copyrightNotice={Copyright (C) \the\year, D. P. Story},
+ copyrightInfoURL=http://www.acrotex.net
+}
+\talkdateLabel{Published:}
+
+\newcommand{\cs}[1]{\texttt{\char`\\#1}}
+\newcommand\newtopic{\par\ifdim\lastskip>0pt\relax\vskip-\lastskip\fi
+\par\vskip6pt\noindent}
+\def\aftersverbskip{\noindent}
+\newenvironment{sverbatim}
+{\par\small\verbatim}
+{\endverbatim\par\aftergroup\aftersverbskip}
+\newenvironment{ssverbatim}
+{\par\footnotesize\verbatim}
+{\endverbatim\par\aftergroup\aftersverbskip}
+\def\AcroTeX{Acro\negthinspace\TeX}
+
+%\autolabelNum{AeST}{3}
+%\autolabelNum{cooltarget}{3}
+%\autolabelNum{attach1}{1}
+%\autolabelNum{attach2}{2}
+%
+% \autolabelNum[mytarget]{1}
+% \autolabelNum*[mytarget]{1}{New Title}
+% \autolabelNum*[AeST]{3}{\u0022$|e^\u007B\u005Cln(17)\u007D|$\u0022 beep}
+% \labelName{cooltarget}{\u0022$|e^\u007B\u005Cln(17)\u007D|$\u0022}
+\begin{attachmentNames}
+\autolabelNum{1}
+%\autolabelNum{2}
+\autolabelNum*{2}{target2.pdf Attachment File}
+\autolabelNum*[AeST]{3}{AeBST Components}
+\labelName{cooltarget}{My (cool) $|x^3|$ ~ % '<attachment>'}
+\end{attachmentNames}
+% The use of \importDataObject should occur after the \texttt{attachmentNames} environment.
+%\def\u{\string\\u}%
+\begin{docassembly}
+var retn=\importDataObject({cName: "cooltarget",cDIPath: "aebpro_ex2.pdf"});
+if ( (app.viewerVersion>7) && retn )
+ this.getDataObject("cooltarget").description="\aref(cooltarget)";
+\end{docassembly}
+
+\def\preseti{bordercolor={0 0 1},highlight=outline,border=visible,linestyle=dashed,open=new}
+
+\begin{document}
+
+\maketitle
+
+\tableofcontents
+
+\section{Introduction}
+
+As we saw briefly in \texttt{aebpro\_ex3.tex}, it is possible to
+attach a document using the \texttt{docassembly} environment, as
+illustrated below,
+\begin{sverbatim}
+ \begin{docassembly}
+ \importDataObject({
+ cName: "cooltarget",
+ cDIPath: "aebpro_ex2.pdf"
+ });
+ \end{docassembly}
+\end{sverbatim}
+In the above, we use \cs{importDataObject}, set the path to be
+\texttt{cDIPath: "aebpro\_ex2.pdf"} (this can be absolute or
+relative), and give the attachment a name with \texttt{cName:}
+\texttt{"\cs{aref(cooltarget)}"}. The special command \cs{aref}, is
+used to reference the assigned name has as its argument the label
+name, \emph{delimited by parentheses}.
+
+The parameter \texttt{cName} in the above \texttt{docassembly} code
+is of particular importance. The value of \texttt{cName} is used in
+the names tree for embedded files. It is used to reference the
+attachment in the link code. After the file is imported, the value
+of \texttt{cName} is converted by Acrobat to Unicode. When
+referencing it, you must know the unicode of the value of the
+\texttt{cName} key.
+
+First, we insert into the preamble, the \texttt{linktoattachments} option.
+This brings in all the code and commands to be discussed in this document.
+(See the preamble of this file.)
+
+\section{Naming Attachments}
+
+For documents attached by the \texttt{attachments} option, AeB Pro
+assigns them ``names,'' which appear in the attachments tab of
+Acrobat/Reader as the Description.\footnote{The Description is
+important as it is the way embedded files are referenced
+internally.} The names assigned are \texttt{AeB Attachment 1},
+\texttt{AeB Attachment 2}, \texttt{AeB Attachment 3}, and so on.
+If you embedded the file using the \texttt{docassem\-bly} environment
+and the \cs{importDataObject} method, then you are free to assign a
+name of your preference. However it is done, the names must be
+converted to unicode on the {\TeX} side of things to set up the
+links, and there must be a \LaTeX-like way of referencing this
+unicode name, hence the development of the \texttt{attachmentNames}
+environment and the two commands \cs{autolabelNum} and
+\cs{labelName}.\footnote{It is important to note that
+these are not needed unless you are linking to the embedded
+files.}
+
+We describe these by example. In the preamble you will find
+\begin{sverbatim}
+ \begin{attachmentNames}
+ \autolabelNum{1}
+ \autolabelNum*{2}{target2.pdf Attachment File}
+ \autolabelNum*[AeST]{3}{AeBST Components}
+ \labelName{cooltarget}{My (cool) $|x^3|$ ~ % '<attachment>'}
+ \end{attachmentNames}
+\end{sverbatim}
+\textbf{\color{red}Note:} The \texttt{attachmentNames} environment
+and the commands \cs{autolabel\-Num} and \cs{labelName} should be
+used only in the parent document; for child documents they are not
+necessary.
+
+\begin{description}
+
+\item[\cs{autolabelNum}:] For PDFs (or other files) embedded using the
+\texttt{attachments} option, use the \cs{autolabelNum} command. The
+syntax is
+\begin{verbatim}
+ \autolabelNum[<label>]{<num>}
+\end{verbatim}
+The first optional argument is the label to be used to refer to this
+embedded file; the default is \texttt{attach<num>}. The second
+argument is the second is a number, 1, 2, 3.., which
+corresponds to the order the file is listed in the value of the
+\texttt{attachments} key.\footnote{To minimize the number of changes
+to the document, if you later add an attachment, add it to the end
+of the list so the earlier declarations are still valid.}
+
+\item[\cs{autolabelNum*}:] There is a star form of \cs{autolabelNum}, which
+allows to to change the description of the attachment.
+\begin{verbatim}
+ \autolabelNum*[<label>]{<num>}{<description>}
+\end{verbatim}
+By default, the first attachment has label name \texttt{attach<num>}
+and has a description of \texttt{AeB Attachment <num>}, This command
+allows you not only to change the label, but to change the description
+of the attachment as well.
+
+\item[\cs{labelName}:] For files that are embedded in using
+\cs{importDataObject}, use the command \cs{labelName} for assigning
+the name, and setting up the correspondence between the name and the
+label.
+\begin{verbatim}
+ \labelName{<label>}{<description>}
+\end{verbatim}
+The first argument is the label to be used to reference this
+embedded file. The second parameter you can assign an arbitrary
+name.
+\end{description}
+
+\newtopic The \texttt{<description>} parameter used in
+\cs{autolabelNum*} and \cs{labelName} can be an arbitrary string
+assigned to the description of this embedded file, the characters
+can be most anything in the Basic Latin unicode set, 0021--007E,
+with the exception of left and right braces \verb!{}!, backslash
+\verb!\! and double quotes \texttt{"}.
+
+You can also enter the unicode character codes directly by typing
+\cs{uXXXX} in the \texttt{<description>}, where \texttt{XXXX} are four hex digits. (Did I say not
+to use `\verb!\!'?) This is very useful when using the trouble making
+characters such as backslash, left and right braces, and double
+quotes, or using unicode above 00FF (Basic Latin + Latin-1). To illustrate, suppose we wish
+the description of \texttt{cooltarget} to be
+\begin{sverbatim}
+ "$|e^{\ln(17)}|$"
+\end{sverbatim}
+All the bad characters!
+\begin{sverbatim}
+\labelName{cooltarget}{\u0022$|e^\u007B\u005Cln(17)\u007D|$\u0022}
+\end{sverbatim}
+From the unicode character tables we see that
+\begin{itemize}
+\item left brace \cs{u007B}
+\item right brace \cs{u007D}
+\item backslash \cs{u005C}
+\item double quotes \cs{u0022}
+\end{itemize}
+See the example file \texttt{aebpro\_ex6.tex} for additional examples of the use
+of \cs{uXXXX} character codes.
+
+There are several ``helper'' commands as well: \cs{EURO}, \cs{DQUOTE}, \cs{BSLASH},
+\cs{LBRACE} and \cs{RBRACE}. When the \cs{u} is detected, an \cs{expandafter} is executed.
+This allows a command to appear immediately after the \cs{u}, things work out well if the
+command expands to four hex numbers, as it should. Thus, instead of typing
+\cs{u0022} you can type \verb!\u\DQUOTE!.
+
+\section{Linking to Embedded Files}\label{embed}
+
+This package defines two commands, \cs{ahyperref} and
+\cs{ahyperlink}, to create links between parent and child and child
+and child. The default behavior of \cs{ahyperref} (and
+\cs{ahyperlink}) is to set up a link from parent to child.
+\cs{ahyperlink} and \cs{ahyperref} are identical in all respects
+except for how it interprets the destination. (Refer to
+\Nameref{jump} for details.)
+
+\newtopic The commands each take three arguments, the
+first one of which is optional
+\begin{verbatim}
+ \ahyperref[<options>]{<target_label>}{<text>}
+ \ahyperlink[<options>]{<target_label>}{<text>}
+\end{verbatim}
+\noindent In the simplest case, we jump from the parent to the first page of a
+child file, like so \ahyperref{attach1}{target1.pdf}, given by\dots
+\begin{verbatim}
+ \ahyperref{attach1}{target1.pdf}
+\end{verbatim}
+This is the same as \ahyperref[goto=p2c]{attach1}{target1.pdf}, the code is\dots
+\begin{verbatim}
+ \ahyperref[goto=p2c]{attach1}{target1.pdf}
+\end{verbatim}
+The \texttt{goto} key is one of the key-value pairs taken by the
+optional argument. Permissible values for the \texttt{goto} key are
+\texttt{p2c} (the default), \texttt{c2p} (child to parent) and
+\texttt{c2c} (child to child).
+
+\newtopic
+\fcolorbox{blue}{webyellow}{\parbox{\linewidth-2\fboxsep-2\fboxrule}{\textbf{\textcolor{red}{TIP:}}
+After jumping to an attachment you can return to the point of origin
+(in the parent document) by selecting the menu item \texttt{View >
+Page Navigation > Previous View} or by using the keyboard shortcut of
+\texttt{Alt+Left Arrow}}}
+
+\newtopic Similarly, link to the other embedded files in this parent:
+\ahyperref{attach2}{target2.pdf} and \ahyperref{cooltarget}{aebpro\_ex2.pdf}
+
+In all cases above, the \cs{ahyperlink} command could have been used, because no
+\emph{named} destination was specified, without a named destination, the these links jump to page~1.
+
+
+\subsection{Jumping to a target}\label{jump}
+
+As you may know, {\LaTeX}, more exactly, \texttt{hyperref} has two
+methods of jumping to a target in another document, jump to a label
+(defined by \cs{label}) and jump to a target set by
+\cs{hypertarget}. Each of these is demonstrated for embedded files
+in the next two sections.
+
+\subsubsection{Jumping to a \texorpdfstring{\protect\cs{hypertarget}}{\textbackslash hypertarget}
+with \texorpdfstring{\protect\cs{ahyperlink}}{\textbackslash ahyperlink}}
+
+There is a destination defined by the hyperref command
+\texttt{hypertarget} in \texttt{target1.pdf} and we shall jump to
+it. Here we go! \ahyperlink[dest=mytarget]{attach1}{Jump!}. The
+code for this jump is
+\begin{verbatim}
+ \ahyperlink[dest=mytarget]{attach1}{Jump!}
+\end{verbatim}
+\noindent Note that \texttt{dest=mytarget}, where ``\texttt{mytarget}'' is the
+label assigned by the \cs{hypertarget} command in \texttt{target1.pdf}.
+
+\penalty-5000
+
+\subsubsection{Jumping to a \texorpdfstring{\protect\cs{label}}{\textbackslash label}
+with \texorpdfstring{\protect\cs{ahyperref}}{\textbackslash ahyperref}}
+
+{\LaTeX} has a cross-referencing system, to jump to a target set by
+the \cs{label} command we use the \textsf{xr-hyper} package that
+comes with \texttt{hyperref}. Using label referencing, we can jump to
+\ahyperref[dest=target1-s:intro]{attach1}{Section~\ref*{target1-s:intro}}
+on page~\pageref*{target1-s:intro} of the embedded file
+\texttt{target1.pdf}. Swave! The code for the jump is
+\begin{verbatim}
+ \ahyperref[dest=target1-s:intro]{attach1}
+ {Section~\ref*{target1-s:intro}}
+\end{verbatim}
+\noindent we set \verb!dest=target1-s:intro!
+
+The label in \texttt{target1.pdf} is \texttt{s:intro}, in the preamble of
+this document we have
+\begin{verbatim}
+ \externaldocument[target1-]{children/target1}
+\end{verbatim}
+\noindent which causes \textsf{xr-hyper} to append a prefix to the label (this
+avoids the possibility of duplication of labels, over multiple
+embedded files).
+
+\goodbreak
+\subsection{Optional Args of \texorpdfstring{\protect\cs{ahyperref}}{\textbackslash ahyperref}
+and \texorpdfstring{\protect\cs{ahyperlink}}{\textbackslash ahpyerlink}}
+
+The \cs{ahyperref} commands has a large number of optional arguments
+enabling you to create any link that the user interface of Acrobat
+Pro can create, and more. These are documented in
+\textsf{aeb\_pro.dtx} and well as the main documentation. Suffice it
+to have an example or two.
+
+By using the optional parameters, you can create any link the UI can create:
+\ahyperref[dest=target1-s:intro,bordercolor={0 1 0},highlight=outline,%
+border=visible,linestyle=dashed]{attach1}{Jump!}
+This link is given by\dots
+\begin{verbatim}
+ \ahyperref[%
+ dest=target1-s:intro,
+ bordercolor={0 1 0},
+ highlight=outline,
+ border=visible,
+ linestyle=dashed
+ ]{attach1}{Jump!}
+\end{verbatim}
+\noindent Now what do you think of that?
+
+\newtopic The argument list can be quite long, as shown above. If you have some favorite settings, you can
+save them in a macro, like so,
+\begin{sverbatim}
+ \def\preseti{bordercolor={0 0 1},highlight=outline,open=new,%
+ border=visible,linestyle=dashed}
+\end{sverbatim}
+\noindent Then, I can say, more simply, \ahyperref[dest=target1-s:intro,preset=\preseti]{attach1}{Jump!}
+This link is given by\dots
+\begin{sverbatim}
+\ahyperref[dest=target1-s:intro,preset=\preseti]{attach1}{Jump!}
+\end{sverbatim}
+\noindent I've defined a \texttt{preset} key so you can predefine some common settings you like to use,
+the enter these settings through preset key, like so \verb!preset=\preseti!. Cool.
+
+Note that in the second example, I've included \texttt{open=new}, this causes the embedded file to open
+in a new window. For Acrobat/Reader operating in MDI, a new child window will open; for SDI (version 8),
+and if the user preferences allows it, it will open in its Acrobat/Adobe Reader window.
+
+\newtopic
+\fcolorbox{blue}{webyellow}{\parbox{\linewidth-2\fboxsep-2\fboxrule}{\textbf{\textcolor{red}{TIP:}}
+After jumping to an attachment that opens a new window, just close the new window to
+return the parent document. \texttt{:-\textrm{\{})}}}
+
+\section{Opening and Saving with \texorpdfstring{\protect\cs{ahyperextract}}
+ {\textbackslash ahyperextract}}
+
+In addition to embedding and linking a PDF, you can embed most any
+file and programmatically (or through the UI) open and/or save it to
+the local file system.
+
+To attach a file to the parent PDF, you can use the
+\texttt{attachsource} or the \texttt{attachments} options of AeB
+Pro, or you can embed your own using the \texttt{importDataObject}
+method, as described earlier in this file.
+
+If an embedded file is a PDF, then you can link to it, using
+\cs{ahyperref} or \cs{ahyperlink}; we can jump to an embedded PDF
+and jump back. If the embedded file is not a PDF, then jumping to it
+makes no sense; the best we can do is to open the file (using an
+application to display the file) and/or save it to the local hard
+drive.
+
+The AeB Pro package has the command \cs{ahyperextract} to extract
+the embedded file, and to save it to the local hard drive, with an
+option to start the associated application and to display the file.
+The syntax for \cs{ahyperextract} is the same as that of the other two commands:
+\begin{verbatim}
+ \ahyperextract[<options>]{<target_label>}{<text>}
+\end{verbatim}
+\noindent The \texttt{<options>} are the same as \cs{ahyperref}, the \texttt{<target\_label>} is the one associated
+with the attachment name, and the \texttt{<text>} is the link text.
+
+\newtopic In addition to the standard options of \cs{ahyperref}, \cs{ahyperextract} recognizes one additional key, \texttt{launch}.
+This key accepts three values: \texttt{save} (the default), \texttt{view} and \texttt{viewnosave}. The following is a
+partial verbatim listing of the descriptions given in the \textsl{JavaScript for Acrobat API Reference}, in the section
+describing \texttt{importDataObject} method of the Doc object:
+\begin{itemize}
+ \item \texttt{save}: The file will not be launched after it is saved. The user is prompted for a save path.
+ \item \texttt{view}: The file will be saved and then launched.
+ Launching will prompt the user with a security alert warning
+ if the file is not a PDF file. The user will be prompted for a
+ save path.
+ \item \texttt{viewnosave}: The file will be temporarily saved and
+ then launched. Launching will prompt the user with a security
+ alert warning if the file is not a PDF file. A temporary path
+ is used, and the user will not be prompted for a save path.
+ The temporary file that is created will be deleted by Acrobat
+ upon application shutdown.
+\end{itemize}
+
+\newtopic Here is a series of examples of usage:
+\begin{enumerate}
+
+\item \ahyperextract[launch=view]{cooltarget}{aebpro\_ex2.pdf}: Launch
+ and view this PDF. The code is
+\begin{verbatim}
+\ahyperextract[launch=view]{cooltarget}{aebpro\_ex2.pdf}
+\end{verbatim}
+When you extract (or open) PDF in this way, any links created
+by \cs{ahyperref} or \cs{ahyperlink} as the PDF being viewed is no longer an embedded file of the
+parent.
+
+\item View the \ahyperextract[launch=viewnosave]{tex}{aebpro\_ex5.tex}. The code is
+\begin{verbatim}
+\ahyperextract[launch=viewnosave]{tex}{aebpro\_ex5.tex}
+\end{verbatim}
+Note that for attachments brought in by the \texttt{attachsource} option,
+the label for that attachment is the file extension, in this case
+\texttt{tex}.
+
+\item \ahyperextract[launch=save]{AeST}{AeBST Component List}: This is an Excel spreadsheet which lists
+the components of the {Acro\negthinspace\TeX} eDucation System
+Tools. Here you are prompted to save; the spreadsheet will not be launched:
+\begin{verbatim}
+\ahyperextract[launch=save]{AeST}{AeBST Component List}
+\end{verbatim}
+\end{enumerate}
+
+\section{Final Assembly}
+
+To assemble your parent document with all the cross-references to
+its embedded children, perform the following steps.
+\begin{enumerate}
+
+\item {\LaTeX} the parent document so that the auxiliary file
+ \cs{jobname\_xref.cut}. This file is read by the children when they
+ are {\LaTeX}ed.
+
+\item {\LaTeX} the child documents. The child documents will write
+ their own auxiliary file and read \cs{jobname\_xref.cut}. (Multiple
+ compiles may be necessary to bring the auxiliary document up to
+ date.)
+
+\item Make PDF for the child documents.
+
+\item Now {\LaTeX} the parent again, which will read in the
+ auxiliary files of the children, if needed. Distill and \textsl{Le
+ Voil\`{a}}, you have it!
+
+\item At this point you can clean up all auxiliary files.
+
+\end{enumerate}
+
+\end{document}
diff --git a/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex6.pdf b/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex6.pdf
new file mode 100644
index 00000000..6ad1f873
--- /dev/null
+++ b/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex6.pdf
Binary files differ
diff --git a/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex6.tex b/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex6.tex
new file mode 100644
index 00000000..66cbd350
--- /dev/null
+++ b/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex6.tex
@@ -0,0 +1,150 @@
+% Acrobat required
+% use useacrobat option with pdftex and xetex if you have acrobat
+\documentclass{article}
+\usepackage[%
+ gopro,
+ web={designiv,usesf,tight},
+ attachsource={tex},
+ attachments={%
+ children/theeuro.pdf, % AeB Attachment 1
+ children/explog.pdf, % AeB Attachment 2
+ ../extras/aest.xls, % AeB Attachment 3
+ ../extras/ease.pdf % AeB Attachment 4
+ },
+ linktoattachments,
+ eforms
+]{aeb_pro}
+
+\DeclareDocInfo
+{
+ title=The AeB Pro Package\texorpdfstring{\\[1ex]}{:} Creating a Package of Files,
+ author=D. P. Story,
+ university=Acro\negthinspace\TeX.Net,
+ email=dpstory@acrotex.net,
+ subject=Test file for the AeB Pro package,
+ keywords={Adobe Acrobat, JavaScript},
+ talksite=http://www.acrotex.net,
+ talkdate={January 12, 2007},
+ copyrightStatus=True,
+ copyrightNotice={Copyright (C) \the\year, D. P. Story},
+ copyrightInfoURL=http://www.acrotex.net
+}
+\talkdateLabel{Version}
+\version{1.0}\nocopyright
+
+\newcommand{\cs}[1]{\texttt{\char`\\#1}}
+\newcommand\newtopic{\par\ifdim\lastskip>0pt\relax\vskip-\lastskip\fi
+\par\vskip6pt\noindent}
+\def\aftersverbskip{\noindent}
+\newenvironment{sverbatim}
+{\par\small\verbatim}
+{\endverbatim\par\aftergroup\aftersverbskip}
+\def\AcroTeX{Acro\negthinspace\TeX}
+
+\begin{attachmentNames}
+\autolabelNum*{1}{European Currency \u\EURO}
+\autolabelNum*{2}{\u0022$|e^\u007B\u005Cln(17)\u007D|$\u0022}
+%\autolabelNum*{2}{\u\DQUOTE$|e^\u\LBRACE\u005Cln(17)\u\RBRACE|$\u\DQUOTE}
+\autolabelNum*[AeST]{3}{The AeBST Components}
+\autolabelNum*[atease]{4}{The @EASE Control Panel}
+\end{attachmentNames}
+
+\makePDFPackage{viewmode=tile} % tile, details, hidden
+% Try compiling with this option
+%\makePDFPackage{viewmode=tile,initview=attach1}
+
+% choose view > Portfolio > Cover Sheet to recover the cover sheet
+
+\optionalPageMatter
+{%
+ \par\bigskip
+ \begin{minipage}{.67\linewidth}
+ Link testing:
+ \begin{itemize}
+ \item See the \ahyperlink{attach1}{Euro}
+ \item See my \ahyperlink{attach2}{formerly favorite number}
+ \item See the \ahyperlink{atease}{@EASE Control Panel}
+ \item View the \ahyperextract[launch=view]{AeST}{AeST Components}
+ \end{itemize}
+ \end{minipage}
+}
+
+\begin{document}
+
+\maketitle
+
+\section*{The \protect\cs{makePDFPackage} command}
+
+The concept of a PDF Package is introduced in Acrobat~8.\footnote{The PDF Package
+has had several name changes, originally known as a Collection, a Portable Collection,
+a PDF Package, and finally a (PDF) Portfolio.} On first
+blush, it is nothing more than a fancy user interface to display
+embedded files; however, it is also used in the new email form data
+workflow. Using the new \textsf{Forms} menu, data contained in FDF
+files can be packaged, and summary data can be displayed in the user
+interface. Consequently, the way forms uses it, a PDF package can be
+used as a simple database.
+
+Unfortunately, at this time, the form feature/database feature of
+PDF Packages is inaccessible to the JavaScript API and AeB Pro.
+What AeB Pro provides is packaging of the embedded files with the
+nice UI.
+
+\newtopic The procedure is as follows: Embed all files files in the
+parent as described in \texttt{aebpro\_ex5.pdf}, and use the command
+\cs{makePDFPackage} to package the attachments. The syntax is
+\begin{verbatim}
+ \makePDFPackage{<key-values>}
+\end{verbatim}
+There are only two sets of key-value pairs
+\begin{description}
+ \item[\texttt{initview=<label>}:] Specifying a value for the
+ initview key determines which file will be used as the initial
+ view when the document is opened. If
+ \texttt{initview=attach2}, for this document, then the file
+ corresponding to the label \texttt{attach2}, as set up in the
+ \texttt{attachmentNames} environment is the initial view.
+ Listing \texttt{initview} with no value (or if
+ \texttt{initview} is not listed at all) causes the parent
+ document -- also called the \emph{cover sheet} -- to be
+ initially shown.
+
+ \item[\texttt{viewmode=details|tile|hidden}:] The
+ \texttt{viewmode} determines which of the three user
+ interfaces is to be used initially. In terms of the UI
+ terminology: $\texttt{details} = \textsf{View top}$;
+ $\texttt{tile} = \textsf{View left}$; and $\texttt{hidden} =
+ \textsf{Minimize view}$. The default is \texttt{details}.
+\end{description}
+If you use this command with an empty argument list,
+\verb!\makePDFPackage{}!, you create a PDF package with the
+defaults.
+
+When navigating a PDF Package (Portfolio) the cover sheet can be viewed by
+accessed through the menu item \texttt{View > Portfolio > Cover Sheet}.
+
+\newtopic\textbf{\textcolor{red}{TIP:}} Use the \cs{autolabelNum*}
+command to assign a more informative description of the attachments,
+like so.
+\begin{sverbatim}
+ \autolabelNum*{1}{European Currency \u20AC}
+ \autolabelNum*{2}{\u0022$|e^\u007B\u005Cln(17)\u007D|$\u0022}
+ \autolabelNum*[AeST]{3}{The AeBST Components}
+ \autolabelNum*[atease]{4}{The @EASE Control Panel}
+\end{sverbatim}
+
+Note that there is an alternative that is commented out to the assignment of the
+second attachment, it is
+\begin{sverbatim}
+ \autolabelNum*
+ {2}{\u\DQUOTE$|e^\u\LBRACE\u005Cln(17)\u\RBRACE|$\u\DQUOTE}
+\end{sverbatim}
+One can use the ``helper'' commands, as described in \texttt{aeb\_pro.tex}; however,
+there is a slight problem. Within the \texttt{<description>} argument, we obey spaces, so
+if we were to say \verb!\u\LBRACE\u\BSLASH ln(17)\u\RBRACE! there would be a space
+after the backslash. This is the reason we used \cs{u005C}.
+
+\newtopic That's it! Hope you enjoy this feature and find a good
+use for it.
+
+\end{document}
diff --git a/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex7.pdf b/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex7.pdf
new file mode 100644
index 00000000..cccf3cbf
--- /dev/null
+++ b/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex7.pdf
Binary files differ
diff --git a/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex7.tex b/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex7.tex
new file mode 100644
index 00000000..655c1883
--- /dev/null
+++ b/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex7.tex
@@ -0,0 +1,161 @@
+% use useacrobat option with pdftex and xetex if you have acrobat
+% use nopro if you don't have acrobat (the attachsource silently fails)
+\documentclass{article}
+\usepackage[
+ gopro,
+ web={designv,nodirectory,usesf},
+ eforms, % only needed for \toggleAttachmentsPanel
+ attachsource={tex}
+]{aeb_pro}
+\usepackage{array}
+\newcommand{\cs}[1]{\texttt{\char`\\#1}}
+
+
+\begin{comment}
+ The layoutmag key has values:
+ navitab=UseNone,UseOutlines,UseThumbs,UseOC,UseAttachments
+ pagelayout=SinglePage,OneColumn,TwoColumnLeft,TwoColumnRight,TwoPageLeft,TwoPageRight
+ mag=ActualSize,FitPage,FitWidth,FitHeight,FitVisible, or positive number (e.g., mag = 50)
+ openatpage = page number (base 1)
+
+ The windowoptions key has values:
+ fit,center,showtitle,fullscreen
+
+ The uioptions key has values:
+ hidetoolbar,hidemenubar,hidewindowui
+\end{comment}
+
+\DeclareInitView
+{%
+ layoutmag={openatpage=2,mag=ActualSize,pagelayout=TwoPageRight},
+ windowoptions={fit,center,showtitle},
+ uioptions={hidetoolbar,hidemenubar,hidewindowui}
+}
+\DeclareDocInfo
+{%
+ title=AcroTeX Fun with Initial View,
+ university=Acro\negthinspace\TeX.Net,
+ author=D. P. Story,
+ email=dpstory@acrotex.net,
+ subject=Testing total control,
+ talksite=\url{www.acrotex.net},
+ version=1.0,
+ keywords={Initial View tab, Document Properties}
+}
+\nocopyright
+
+\optionalPageMatter
+{%
+ \par\bigskip
+ \begin{center}
+ \toggleAttachmentsPanel{red}{View the attachment}
+ \end{center}
+}
+
+
+
+\begin{document}
+
+\maketitle
+
+\noindent The \cs{DeclareInitView} command is a companion to
+\cs{DeclareDocInfo}, each of these fills a tab of the
+\textsf{Document Properties} dialog box.
+
+\begin{verbatim}
+\DeclareInitView
+{%
+ layoutmag={openatpage=2,mag=ActualSize,pagelayout=TwoPageRight},
+ windowoptions={fit,center,showtitle},
+ uioptions={hidetoolbar,hidemenubar,hidewindowui}
+}
+\DeclareDocInfo
+{%
+ title=AcroTeX Fun with Initial View,
+ university=Acro\negthinspace\TeX.Net,
+ author=D. P. Story,
+ email=dpstory@acrotex.net,
+ subject=Testing total control,
+ talksite=\url{www.acrotex.net},
+ version=1.0,
+ keywords={Initial View tab, Document Properties}
+}
+\end{verbatim}
+Use this document to experiment with the various
+properties of set by \cs{DeclareInitView}.
+
+\newpage
+
+\begin{itemize}
+
+ \item \texttt{layoutmag}: This key sets the initial page layout and magnification
+ of the document. The values of this key are themselves key-values:
+
+ \begin{small}\setlength{\extrarowheight}{3pt}
+ \begin{tabular}{|>{\ttfamily}l>{\raggedright}p{1.85in}p{2.15in}<{\raggedright}|}\hline
+ \multicolumn{1}{|l}{Key} &\multicolumn{1}{l}{Value(s)} & Description \\\hline
+ navitab & \texttt{UseNone}, \texttt{UseOutlines}, \texttt{UseThumbs},
+ \texttt{UseOC}, \texttt{UseAttachments}
+ & The UI for these are Page Only, Bookmarks Panel
+ and Page, Pages Panel and Page, Layers Panel and
+ Page, Attachments Panel and Page, respectively. The
+ default is \texttt{UseNone}\\
+ pagelayout & \texttt{SinglePage}, \texttt{OneColumn}, \texttt{TwoPageLeft},
+ \texttt{TwoColumnLeft}, \texttt{TwoPageRight}, \texttt{TwoColumnRight}
+ & The UI for these are Single Page, Single Page
+ Continuous, Two-Up (Facing), Two-Up Continuous
+ (Facing), Two-Up (Cover Page), Two-Up Continuous
+ (Cover Page), respectively. The default is user's
+ preferences.\\
+ mag & \texttt{ActualSize}, \texttt{FitPage}, \texttt{FitWidth},
+ \texttt{FitHeight}, \texttt{FitVisible}, or \texttt{<positive number>}
+ & The UI for these are Actual Size, Fit Page, Fit
+ Width, Fit Height, Fit Visible, respectively. If a
+ positive number is provided, this is interpreted as
+ a magnification percentage. The default is to use
+ user's preferences. \\
+ openatpage & \texttt{<positive number>}
+ & The page number (base 1) to open the document at. Default is page 1.\\\hline
+ \end{tabular}
+ \end{small}%
+
+\newpage
+
+ \item \texttt{windowoptions}: The Window Options region of the
+ Initial View tab consists of a series of check boxes, which when
+ checked modifies the initial state of the document window. These are
+ not really Boolean keys. If the key is present, the
+ corresponding box in the UI will be checked, otherwise, the box
+ remains cleared.
+
+ \begin{tabular}{|>{\ttfamily}lp{2in}|}\hline
+ Key & Description \\\hline
+ fit & Resize window to initial page\\
+ center & Center window on screen \\
+ fullscreen & Open in Full Screen mode\\
+ showtitle & Show document title in the title bar\\\hline
+ \end{tabular}
+
+ Note that you can open the document in Full Screen mode using the
+ \texttt{fullscreen} key above, or by using the \texttt{fullscreen} key
+ of the \cs{setDefaultFS}. Either will work.
+
+\newpage
+
+ \item \texttt{uioptions}: The User Interface Options region of
+ the Initial View tab consists of a series of check boxes, which
+ when checked hides a UI control. These are not really Boolean
+ keys. If the key is present, the corresponding box in the UI
+ will be checked, otherwise, the box remains cleared.
+
+ \begin{tabular}{|>{\ttfamily}lp{2in}|}\hline
+ Key & Description \\\hline
+ hidemenubar & Hide menu bar\\
+ hidetoolbar & Hide tool bars\\
+ hidewindowui & Hide window controls\\\hline
+ \end{tabular}
+
+\end{itemize}
+
+
+\end{document}
diff --git a/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex8.pdf b/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex8.pdf
new file mode 100644
index 00000000..116c2a75
--- /dev/null
+++ b/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex8.pdf
Binary files differ
diff --git a/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex8.tex b/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex8.tex
new file mode 100644
index 00000000..3565c239
--- /dev/null
+++ b/texmf-dist/doc/latex/aeb-pro/examples/aebpro_ex8.tex
@@ -0,0 +1,218 @@
+% Acrobat required
+% use useacrobat option with pdftex and xetex if you have acrobat
+\documentclass{article}
+\usepackage[
+ web={designv,forcolorpaper,pro,tight,usesf},
+ eforms,
+ linktoattachments,
+ attachsource={tex},
+ aebxmp,
+]{aeb_pro}
+
+\DeclareDocInfo
+{
+ university={Acro\negthinspace\TeX.Net},
+ title={A Note on Entering Unicode into a Form Field},
+ author={D. P. Story},
+ email={dpstory@acrotex.net},
+ subject={White Paper that discusses how to use AeB Pro to create form fields with unicode strings},
+ talksite={\url{www.acrotex.net}},
+ version={1.0},
+ keywords={AeB, AcroForm, unicode, AcroTeX, AcroTeX.Net},
+ copyrightStatus=True,
+ copyrightNotice={Copyright (C) \the\year, D. P. Story},
+ copyrightInfoURL={http://www.acrotex.net}
+}
+\nocopyright
+
+
+\newcommand{\cs}[1]{\texttt{\char`\\#1}}
+\newcommand{\cS}[2]{\textField[\Ff\FfReadOnly\textSize{10}\textFont{Arial}\uDV{FEFF#2}\uV{FEFF#2}\BC{}]{#1}{20bp}{11bp}}
+
+\parskip6pt
+\parindent0pt
+
+\labelName{coolDPS}{Donald \u20AC. Story}
+\labelName{myCoolIV}{\u0022\u20AC|e^\u007B\u005Cln(17)\u007D|$\u0022}
+\labelName{Reset myCoolIV}{Reset the \u0022\u20AC|e^\u007B\u005Cln(17)\u007D|$\u0022 field}
+
+\begin{document}
+
+\makeinlinetitle
+%\maketitle
+
+\section{The Basics}
+
+This document demonstrates how to use some of the new commands that
+come with AeB Pro, and some of the new keys in the eforms package
+that are designed to enter unicode hex encoding. In all cases, you must have
+the font that contains the glyph represented by the unicode hex.
+
+You need AeB Pro with the \texttt{linktoattachments} and the eforms package, see
+preamble above.
+
+The first step is to use the \cs{labelName} command to define your unicode string
+and associate a label with it. In the preamble, the following definition can be found.
+\begin{verbatim}
+\labelName{coolDPS}{Donald \u20AC. Story}
+\end{verbatim}
+The string can be a combination of characters from Basic Latin. As
+described in the AeB Pro manual, the string can be entered using
+keyboard keystrokes, or unicode notation \cs{uXXXX}, as above.
+Spaces are eaten up, so you must enter the unicode for a space
+\cs{u0020}. The command \cs{labelName} creates a macro that contains
+the pure encoding of the string. You can use \cs{aref} to access
+this encoding.
+The Unicode for the string \verb!Donald \u20AC. Story! is
+\begin{quote}
+\unicodeStr(coolDPS)
+\end{quote}
+The hex code is computed from a table of unicodes defined in AeB Pro, with allowances for enter
+a ``raw unicode'' using a \cs{u} escape sequence.
+
+Next, create an AcroForm field, a text field, in this example, and
+use the command \cs{unicodeStr} to reference the label enclosed
+in matching parentheses, like so
+\begin{verbatim}
+\textField[\Ff\FfReadOnly\textSize{10}\textFont{Arial}\W0
+ \uDV{\unicodeStr(coolDPS)}\uV{\unicodeStr(coolDPS)}\BC{}
+]{dps}{1in}{11bp}
+\end{verbatim}
+The result of the above code is
+
+\textField[\Ff\FfReadOnly\textSize{10}\textFont{Arial}\W0
+ \uDV{\unicodeStr(coolDPS)}\uV{\unicodeStr(coolDPS)}\BC{}
+]{dps}{1in}{11bp}
+
+
+The technique uses some of the code brought in by the the
+\texttt{linktoattachments} option of AeB Pro, and a new command,
+named \cs{unicodeStr}, designed to make it simple to enter unicode
+encoded strings into a form field.
+
+The above field is set to read only, the one below is not:
+
+\textField[\textSize{10}\textFont{Arial}
+ \uDV{\unicodeStr(myCoolIV)}\uV{\unicodeStr(myCoolIV)}
+]{myCoolIV}{1.5in}{12bp}\pushButton[\textSize{10}\textFont{Arial}\uCA{FEFF20AC}
+ \uAC{FEFF20AA}\uRC{FEFF00A5}\uTU{\unicodeStr(Reset myCoolIV)}\A{\JS{this.resetForm(["myCoolIV"])}}]{reset}{.5in}{12bp}
+
+Edit the box above, then click on the reset button. (Notice the
+tooltip for the reset button.)
+
+The eforms uses an optional first argument to change the appearance
+of a form field, add in action (usually JavaScript action) or to
+initialize the field value. In the above form fields, several
+unicode counterparts to the standard keys were used.
+\begin{itemize}
+ \item \cs{uV} and \cs{uDV} were used instead of \cs{V} and
+ \cs{DV} for giving the field a value and a default value,
+ respectively. The ``u'' versions are used when the string is in
+ unicode.
+
+ \item Button face text for the reset button was entered with
+ \cs{uCA}, \cs{uAC} and \cs{uRC} rather than \cs{CA}, \cs{AC} and
+ \cs{RC}. You can mix these two types together. The normal face
+ caption could be defined by \cs{uCA} and the others defined by
+ \cs{AC} and \cs{RC}.
+
+ \item The ``tooltip'', as used in the reset button, normally uses
+ the \cs{TU} key. When the string is meant to be unicode, use the
+ \cs{uTU} key.
+\end{itemize}
+
+\section{More Advanced}
+
+For combo boxes and list boxes, things are slightly more
+complicated. In the example below, we define a combo box. First,
+define the appearance values of the combo box (the string that is
+seen listed in the combo box).
+\begin{verbatim}
+\labelName{myEuro}{\u20AC (Euro)}
+\labelName{myYen}{\u00A5 (Yen)}
+\labelName{mySheqel}{\u20AA (Sheqel)}
+\labelName{myPound}{\u00A3 (Pound)}
+\labelName{myFranc}{\u20A3 (Franc)}
+\end{verbatim}
+
+\labelName{myEuro}{\u20AC (Euro)}
+\labelName{myYen}{\u00A5 (Yen)}
+\labelName{mySheqel}{\u20AA (Sheqel)}
+\labelName{myPound}{\u00A3 (Pound)}
+\labelName{myFranc}{\u20A3 (Franc)}
+
+Then we can define our combo box. According to the PDF file format,
+unicode strings should be enclosed in angle brackets
+\verb!<XXXXXXXXXXXX>!. In initializing the combo box below, the
+\cs{unicodeStr} command is used, but this time it is enclosed in
+angle brackets. (That is all the ``u'' versions of the keys do above
+is to automatically insert the angle brackets for you. Here we have
+to do it ourselves. (I suppose one could have a helper command, but
+you can handle it.)
+\begin{verbatim}
+\comboBox[\Ff\FfEdit\DV{1}\V{Euro}\textFont{Arial}
+\BG{0.98 0.92 0.73}\BC{0 .6 0}]{myCombo}{1in}{11bp}
+{*{[(Euro)<\unicodeStr(myEuro)>]%
+ [(Yen)<\unicodeStr(myYen)>]%
+ [(Sheqel)<\unicodeStr(mySheqel)>]%
+ [(Pound)<\unicodeStr(myPound)>]%
+ [(Franc)<\unicodeStr(myFranc)>]}
+}
+\end{verbatim}
+where the \texttt{*} in the position shown above is a token that signals the
+passing of a raw form of the value options of a combo or list box; it is
+defined in \textsf{eforms}.
+
+The result is
+\comboBox[\Ff\FfEdit\DV{1}\V{Euro}\textFont{Arial}
+\BG{0.98 0.92 0.73}\BC{0 .6 0}]{myCombo}{1in}{11bp}
+{*{[(Euro)<\unicodeStr(myEuro)>]%
+ [(Yen)<\unicodeStr(myYen)>]%
+ [(Sheqel)<\unicodeStr(mySheqel)>]%
+ [(Pound)<\unicodeStr(myPound)>]%
+ [(Franc)<\unicodeStr(myFranc)>]}
+}
+
+Very swave!
+
+\section{More Advanced Still}
+
+You can also enter raw hex yourself (without using \cs{labelName}) if you have the patience to do
+it, and in some cases, it is the easiest.
+
+For the purpose of the table below, the following definition was given in the preamble:
+
+\begin{verbatim}
+\newcommand{\cS}[2]{%
+ \textField[
+ \Ff\FfReadOnly\BC{}\textSize{10}\textFont{Arial}
+ \uDV{FEFF#2}\uV{FEFF#2}
+ ]{#1}{20bp}{11bp}}
+\end{verbatim}
+Again the \cs{uDV} and \cs{uV} keys are used but without
+\cs{unicodeStr}. In this case, we must do it ourselves. As was
+mentioned earlier, the ``u'' versions of these keys automatically
+insert the angle brackets. Inside the angle brackets is the raw
+unicode hex code. What wasn't mentioned before is that the first
+four hex digits must be \texttt{FEFF} to signal the beginning of
+unicode. Here, we insert these digits ourselves, followed, through
+parameter replacement, by the unicode hex digits of the characters
+desired. The result is the table you see below. (Again the field is
+readonly, the table is the one that appears in manual of usage for the
+JJ\_Game class (\texttt{jjg\_man.pdf}).
+
+\begin{center}
+\begin{tabular}{lll||lll}
+Description & Unicode & Symbol & Description & Unicode & Symbol \\\hline
+Dollar Sign & \cs{u0024}& \cS{Dollar}{0024} & Lira Sign & \cs{u20A4} &\cS{Lira}{20A4}\\
+Pound Sign & \cs{u00A3}& \cS{Pound}{00A3} & Peseta Sign & \cs{u20A7} &\cS{Pesta}{20A7}\\
+Currency Sign & \cs{u00A4}& \cS{Currency}{00A4} & New Sheqel Sign & \cs{u20AA} &\cS{Sheqel}{20AA}\\
+Yen Sign & \cs{u00A5}& \cS{Yen}{00A5} & Dong Sign & \cs{u20AB} & \cS{Dong}{20AB}\\
+French Franc & \cs{u20A3}& \cS{Franc}{20A3} & Euro Sign & \cs{u20AC} &\cS{Euro}{20AC}\\
+\end{tabular}
+\end{center}
+
+FYI: See \url{http://jrgraphix.net/research/unicode_blocks.php?block=0} for a display of unicode characters.
+
+
+\end{document}
diff --git a/texmf-dist/doc/latex/aeb-pro/examples/aebpro_index_ex.tex b/texmf-dist/doc/latex/aeb-pro/examples/aebpro_index_ex.tex
new file mode 100644
index 00000000..40933cb4
--- /dev/null
+++ b/texmf-dist/doc/latex/aeb-pro/examples/aebpro_index_ex.tex
@@ -0,0 +1,44 @@
+\documentclass{article}
+\usepackage[web={tight,pro}]{aeb_pro}
+
+\newcommand{\cs}[1]{\texttt{\char`\\#1}}
+\newcommand\newtopic{\par\ifdim\lastskip>0pt\relax\vskip-\lastskip\fi
+\vskip\medskipamount\noindent}
+
+\parindent0pt
+\parskip6pt
+
+\begin{document}
+
+
+\section{Index of Example Files}
+
+The following is a list of the example files that illustrate and test various
+features of AeB Pro.
+
+\begin{enumerate}
+ \item \texttt{aebpro\_ex1.tex}: Illustrates the document and page
+ open/close actions and fullscreen support of AeB Pro.
+
+ \item \texttt{aebpro\_ex2.tex}: Demonstrates the features of the
+ \texttt{pro} option of the \textsf{web} package, including enhanced control
+ over the layout of section headings and the title page.
+
+ \item \texttt{aebpro\_ex3.tex}: Highlights the attachments options and the
+ doc assembly methods.
+
+ \item \texttt{aebpro\_ex4.tex}: A discussion of layers, rollovers and animation.
+
+ \item \texttt{aebpro\_ex5.tex}: Linking to attachments: The \cs{ahyperref}, \cs{ahyperlink}
+ and the \cs{ahyperextract} commands.
+
+ \item \texttt{aebpro\_ex6.tex}: Learn how to create a PDF Package out of your attachments.
+
+ \item \texttt{aebpro\_ex7.tex}: Explore the \cs{DeclareInitView} command, documentation included
+ in this file.
+
+ \item \texttt{aebpro\_ex8.tex}: Details of how to use unicode to set the initial value(s) of field, or as
+ captions on a button.
+\end{enumerate}
+
+\end{document}
diff --git a/texmf-dist/doc/latex/aeb-pro/examples/children/explog.pdf b/texmf-dist/doc/latex/aeb-pro/examples/children/explog.pdf
new file mode 100644
index 00000000..7ecab32f
--- /dev/null
+++ b/texmf-dist/doc/latex/aeb-pro/examples/children/explog.pdf
Binary files differ
diff --git a/texmf-dist/doc/latex/aeb-pro/examples/children/target1.pdf b/texmf-dist/doc/latex/aeb-pro/examples/children/target1.pdf
new file mode 100644
index 00000000..d898ea16
--- /dev/null
+++ b/texmf-dist/doc/latex/aeb-pro/examples/children/target1.pdf
Binary files differ
diff --git a/texmf-dist/doc/latex/aeb-pro/examples/children/target1.tex b/texmf-dist/doc/latex/aeb-pro/examples/children/target1.tex
new file mode 100644
index 00000000..61b19a24
--- /dev/null
+++ b/texmf-dist/doc/latex/aeb-pro/examples/children/target1.tex
@@ -0,0 +1,72 @@
+\documentclass{article}
+\usepackage{xr-hyper}
+\usepackage[%
+% driver=dvips,
+ web={usesf,designiv},
+ linktoattachments,
+ childof={../aebpro_ex5},
+ eforms
+]{aeb_pro}
+
+\externaldocument[target2-]{target2}
+
+\newcommand{\cs}[1]{\texttt{\char`\\#1}}
+\newcommand\newtopic{\par\ifdim\lastskip>0pt\relax\vskip-\lastskip\fi
+\par\noindent}
+\def\aftersverbskip{\vskip-\parskip}
+\newenvironment{sverbatim}
+{\par\vskip-\parskip\parskip0pt\footnotesize\verbatim}
+{\endverbatim\par\aftergroup\aftersverbskip}
+\def\AcroTeX{Acro\negthinspace\TeX}
+
+\pagestyle{empty}
+\parindent0pt
+\parskip6pt
+
+\begin{document}
+\makebox[0pt][l]{D.P. Story}\hfill\textbf{Attaching and Linking}\hfill\makebox[0pt][r]{\url{www.acrotex.net}}
+
+\bigskip
+
+Welcome to \texttt{target1.pdf}!
+
+Now, return to \ahyperref[goto=c2p]{}{parent document}
+
+Jump to the other attached file \ahyperref[goto=c2c]{attach2}{target2.pdf}
+
+\newpage
+
+\section{Instructions}\label{s:intro}
+
+Instructions to set up links from the child are straight forward. First, you insert a new option
+into the option list of \texttt{aeb\_pro}:
+\begin{sverbatim}
+\usepackage[%
+ ...
+ linktoattachments,
+ childof={../aebpro_ex5},
+]{aeb_pro}
+\end{sverbatim}
+In addition to the \texttt{linktoattachments}, we also include the
+\texttt{childof} key along with its value,
+\verb!childof={../aebpro_ex5}!, the path to the parent. Do not
+include any extension, just the base name will do fine, just fine.
+Second, well, you're done, there is no second.
+
+For child to child, \ahyperref[goto=c2c]{attach2}{target2.pdf}\\
+\verb!\ahyperref[goto=c2c]{attach2}{target2.pdf}!\\
+and for child to \ahyperref[goto=c2p]{}{parent document}\\
+\verb!\ahyperref[goto=c2p]{}{parent document}!
+
+Let's jump to a \verb!\label{target2-targetsection}!: \ahyperref[goto=c2c,dest=target2-targetsection]{attach2}
+{Section~\ref*{target2-targetsection}} in the document \texttt{target2.pdf} on page~\pageref*{target2-targetsection}.
+
+\newpage
+
+On this page we set a \hypertarget{mytarget}{\cs{hypertarget}}, and expect to jump here from the parent
+document.
+
+Now, let's jump to a target defined by \cs{hypertarget}: \ahyperlink[goto=c2c,dest=myhypertarget]{attach2}{Away!}
+
+
+\end{document}
diff --git a/texmf-dist/doc/latex/aeb-pro/examples/children/target2.pdf b/texmf-dist/doc/latex/aeb-pro/examples/children/target2.pdf
new file mode 100644
index 00000000..a37fdee4
--- /dev/null
+++ b/texmf-dist/doc/latex/aeb-pro/examples/children/target2.pdf
Binary files differ
diff --git a/texmf-dist/doc/latex/aeb-pro/examples/children/target2.tex b/texmf-dist/doc/latex/aeb-pro/examples/children/target2.tex
new file mode 100644
index 00000000..560baa50
--- /dev/null
+++ b/texmf-dist/doc/latex/aeb-pro/examples/children/target2.tex
@@ -0,0 +1,43 @@
+\documentclass{article}
+\usepackage{xr-hyper}
+\usepackage[%
+% driver=dvips,
+ web={usesf,designiv},
+ linktoattachments,
+ childof={../aebpro_ex5},
+ eforms
+]{aeb_pro}
+
+\externaldocument[attach1-]{target1}
+
+\newcommand{\cs}[1]{\texttt{\char`\\#1}}
+
+\pagestyle{empty}
+\parindent0pt
+\parskip6pt
+
+\begin{document}
+\makebox[0pt][l]{D.P. Story}\hfill\textbf{Attaching and Linking}\hfill\makebox[0pt][r]{\url{www.acrotex.net}}
+
+\bigskip
+
+Welcome to \texttt{target2.pdf}.
+
+
+Now, return to \ahyperref[goto=c2p]{}{parent document}
+
+Jump to the other attached file \ahyperref[goto=c2c]{attach1}{target1.pdf}
+
+\newpage
+\section{Target Section}\label{targetsection}
+
+This is \texttt{target2.pdf}, you should have arrived here via a child-to-child link from
+\texttt{target1.pdf}. This is a test of \cs{ahyperref}. And \ahyperref[goto=c2c,dest=target1-s:intro]
+{attach1}{return!}
+
+\newpage
+One this page, we'll create a
+\hypertarget{myhypertarget}{hypertarget}. We'll test child to child
+jumping to a destination using \cs{ahyperlink}. And \ahyperlink[goto=c2c,dest=mytarget]{attach1}{return!}
+
+\end{document}
diff --git a/texmf-dist/doc/latex/aeb-pro/examples/children/theeuro.pdf b/texmf-dist/doc/latex/aeb-pro/examples/children/theeuro.pdf
new file mode 100644
index 00000000..d66a5989
--- /dev/null
+++ b/texmf-dist/doc/latex/aeb-pro/examples/children/theeuro.pdf
Binary files differ
diff --git a/texmf-dist/doc/latex/aeb-pro/examples/extras.zip.txt b/texmf-dist/doc/latex/aeb-pro/examples/extras.zip.txt
new file mode 100644
index 00000000..1bdc0430
--- /dev/null
+++ b/texmf-dist/doc/latex/aeb-pro/examples/extras.zip.txt
Binary files differ
diff --git a/texmf-dist/doc/latex/aeb-pro/examples/myCoverPage.pdf b/texmf-dist/doc/latex/aeb-pro/examples/myCoverPage.pdf
new file mode 100644
index 00000000..df933661
--- /dev/null
+++ b/texmf-dist/doc/latex/aeb-pro/examples/myCoverPage.pdf
Binary files differ
diff --git a/texmf-dist/doc/latex/aeb-pro/examples/myCoverPage.tex b/texmf-dist/doc/latex/aeb-pro/examples/myCoverPage.tex
new file mode 100644
index 00000000..1be13778
--- /dev/null
+++ b/texmf-dist/doc/latex/aeb-pro/examples/myCoverPage.tex
@@ -0,0 +1,16 @@
+\documentclass{article}
+\usepackage[web=designiv]{aeb_pro}
+
+\thispagestyle{empty}
+
+\begin{document}
+
+\null\vfill
+
+\begin{center}\sffamily\Huge\bfseries
+ If you see this, the test worked! AeB Pro is installed correctly.
+\end{center}
+
+\vfill
+
+\end{document} \ No newline at end of file
diff --git a/texmf-dist/doc/latex/aeb-pro/examples/test_install.pdf b/texmf-dist/doc/latex/aeb-pro/examples/test_install.pdf
new file mode 100644
index 00000000..07cfd9fe
--- /dev/null
+++ b/texmf-dist/doc/latex/aeb-pro/examples/test_install.pdf
Binary files differ
diff --git a/texmf-dist/doc/latex/aeb-pro/examples/test_install.tex b/texmf-dist/doc/latex/aeb-pro/examples/test_install.tex
new file mode 100644
index 00000000..20a2216f
--- /dev/null
+++ b/texmf-dist/doc/latex/aeb-pro/examples/test_install.tex
@@ -0,0 +1,27 @@
+\documentclass{article}
+\usepackage[web=designiv,eforms]{aeb_pro}
+
+\begin{defineJS}{\insertSomePages}
+aebTrustedFunctions( this, aebInsertPages, {nPage: -1,cPath: "myCoverPage.pdf",nStart: 0} );
+\end{defineJS}
+
+\thispagestyle{empty}
+\parindent0pt\parskip6pt
+
+\begin{document}
+
+This is a file to test your AeB Pro installation.
+
+To test the \textsf{AeB Pro} installation, press this button: \pushButton[\CA{Test AeB
+Pro}\A{\JS{\insertSomePages}}]{btnTest}{}{11bp}
+
+Upon pressing the button, if you have installed the \texttt{aeb\_pro.js} file
+correctly, a cover page should be inserted as the first page. If the cover
+page does not appear, check the \textsf{Acrobat} console window
+\texttt{Ctrl+J} for an error message. If you did place \texttt{aeb\_pro.js}
+in the use JavaScript folder, and the file was not imported, then either you
+haven't closed and opened \textsf{Acrobat} after you installed \texttt{aeb\_pro.js},
+or the cover page document \texttt{myCoverPage.pdf} does not exist or has
+been moved from this folder
+
+\end{document}
diff --git a/texmf-dist/doc/latex/aeb-pro/install_jsfiles.pdf b/texmf-dist/doc/latex/aeb-pro/install_jsfiles.pdf
new file mode 100644
index 00000000..d55c3e30
--- /dev/null
+++ b/texmf-dist/doc/latex/aeb-pro/install_jsfiles.pdf
Binary files differ