From 14ce8b68fe7df49e8a8891bb94c63b9a846da232 Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Sun, 29 Sep 2019 03:00:46 +0000 Subject: CTAN sync 201909290300 --- macros/latex/contrib/acrotex/doc/aeb_man.pdf | Bin 1355814 -> 1362922 bytes macros/latex/contrib/acrotex/doc/aeb_man.tex | 50 +++++++---- macros/latex/contrib/acrotex/doc/eformman.pdf | Bin 989810 -> 995308 bytes macros/latex/contrib/acrotex/doc/eformman.tex | 99 +++++++++++++++++---- .../latex/contrib/acrotex/doc/install_jsfiles.pdf | Bin 237391 -> 236764 bytes 5 files changed, 116 insertions(+), 33 deletions(-) (limited to 'macros/latex/contrib/acrotex/doc') diff --git a/macros/latex/contrib/acrotex/doc/aeb_man.pdf b/macros/latex/contrib/acrotex/doc/aeb_man.pdf index a9d5a9fc24..794013af9e 100644 Binary files a/macros/latex/contrib/acrotex/doc/aeb_man.pdf and b/macros/latex/contrib/acrotex/doc/aeb_man.pdf differ diff --git a/macros/latex/contrib/acrotex/doc/aeb_man.tex b/macros/latex/contrib/acrotex/doc/aeb_man.tex index ecc2638b1a..679358f2e0 100644 --- a/macros/latex/contrib/acrotex/doc/aeb_man.tex +++ b/macros/latex/contrib/acrotex/doc/aeb_man.tex @@ -232,10 +232,10 @@ \university{{\AcroT} Software Development Team} \email{dpstory@acrotex.net} \versionLabel{Dated:} -\version{2019/05/24} +\version{2019/08/13} \copyrightyears{1999-\the\year} \nocopyright -\prepared{2019/05/24} +\prepared{2019/08/13} \revisionLabel{Distribution Dated:} \copyrightStatus{True} @@ -1695,7 +1695,7 @@ The syntax \cs{optionalPageMatter} is\dots \begin{dCmd}[commandchars=!()]{\bxSize} \optionalPageMatter[!ameta(vspace)]{!ameta(content)} \end{dCmd} -\eVerb where \ameta{content} content to be displayed in middle title region, and +\smallskip\eVerb where \ameta{content} content to be displayed in middle title region, and \texttt{[\ameta{vspace}]} consists of one (or more) \cs{vspace} commands. The default is \begin{Verbatim}[xleftmargin=\amtIndent] @@ -8087,7 +8087,25 @@ credit of zero, and may as well not be included in the list of words. extensive examples, and discusses techniques of searching using regular expressions. +\subsubsection{\texorpdfstring{\protect\cs{RespBoxEssay}}% + {\textbackslash RespBoxEssay}: Extended Responses}\label{ss:respboxessay} +The \cs{RespBoxEssay} command is used to provide space for the student to +type in an extended response to a question. The student's response is not +evaluated, it must be reviewed by the instructor, who can assign additional +credit. +\aebdimen0pt\bVerb\takeMeasure{\string\RespBoxEssay[\ameta{options}]\ameta{dest}\darg{\ameta{wd}}\darg{\ameta{ht}}}% +\begin{dCmd}[commandchars=!()]{\bxSize} +\RespBoxEssay[!ameta(options)]!ameta(dest){!ameta(wd)}{!ameta(ht)} +\end{dCmd} +\medskip\eVerb The first (optional) parameter (\ameta{options}) is used to pass key-value +pairs to the form field. The second (optional) argument (\ameta{dest}) takes +on one of two forms: (1) a named destination \texttt{[\meta{dest}]} to the +solution (if provided), were \meta{dest} is a string the document author +specifies; or (2) an asterisk (\texttt*), where the named destination is +automatically generated by \pkg{exerquiz}. The third and fourth parameters +are the width and height of the field. The field is, by default, a +multi-line text field. \subsection{Some Enhancements}\label{enhancements} @@ -8110,7 +8128,7 @@ than the default variable of $x$. \begin{oQuestion}{sine2} \redpoint Differentiate\\[1ex] $\dfrac d{dt} \sin^2(t) =$ -\RespBoxMath{2*sin(t)*cos(t)}(t){4}{.0001}{0}{1}\cgBdry\CorrAnsButton{2*sin(t)*cos(t)} +\RespBoxMath{2*sin(t)*cos(t)}(t){4}{.0001}{0}{1}\olBdry\CorrAnsButton{2*sin(t)*cos(t)} \end{oQuestion} \medskip\noindent @@ -8118,14 +8136,14 @@ The listing follows: \begin{Verbatim}[xleftmargin=\amtIndent] \begin{oQuestion}{sine2}\\[1ex] \redpoint Differentiate $\dfrac d{dt} \sin^2(t) =$ -\RespBoxMath{2*sin(t)*cos(t)}(t){4}{.0001}{0}{1}\cgBdry +\RespBoxMath{2*sin(t)*cos(t)}(t){4}{.0001}{0}{1}\olBdry \CorrAnsButton{2*sin(t)*cos(t)} \end{oQuestion} \end{Verbatim} \noindent The \cs{CorrAnsButton} takes one parameter, the correct answer. This answer is (usually) the same as the one given as the second -argument (the optional argument is the first) in the \cs{RespBoxMath} +argument (the optional argument is the first) in the \cs{RespBoxMath}r command. \redpoint The \cs{CorrAnsButton} also controls access to the (optional) solution, see @@ -8196,7 +8214,7 @@ An example of this optional parameter is \redpoint Perform the indicated operation, and enter result into the box.\\[1ex] $ \text{9} + \text{8} =$ -\RespBoxMath{9 + 8}{1}{.0001}{[0,1]}\cgBdry\CorrAnsButton{9 + 8}*{EvalCorrAnsButton}\cgBdry +\RespBoxMath{9 + 8}{1}{.0001}{[0,1]}\olBdry\CorrAnsButton{9 + 8}*{EvalCorrAnsButton}\olBdry \sqTallyBox \end{oQuestion} @@ -8207,8 +8225,8 @@ The listing follows: \redpoint Perform the indicated operation, and enter result into the box.\\[1ex] $ 9 + 8 = $ -\RespBoxMath{9 + 8}{1}{.0001}{[0,1]}\cgBdry - \CorrAnsButton{9 + 8}*{EvalCorrAnsButton}\cgBdry +\RespBoxMath{9 + 8}{1}{.0001}{[0,1]}\olBdry + \CorrAnsButton{9 + 8}*{EvalCorrAnsButton}\olBdry \sqTallyBox \end{oQuestion} \end{Verbatim} @@ -8224,7 +8242,7 @@ For example, \begin{oQuestion}{sine4} \redpoint \hypertarget{exofT}{Differentiate}\\[1ex] $\dfrac d{dx} \sin^2(x) =$ -\RespBoxMath{2*sin(x)*cos(x)}{4}{.0001}{0}{1}\cgBdry\CorrAnsButton{2*sin(x)*cos(x)}\cgBdry +\RespBoxMath{2*sin(x)*cos(x)}{4}{.0001}{0}{1}\olBdry\CorrAnsButton{2*sin(x)*cos(x)}\olBdry \sqTallyBox \end{oQuestion} @@ -8234,8 +8252,8 @@ The listing follows: \begin{oQuestion}{sine4} \redpoint Differentiate\\[1ex] $\dfrac d{dx} \sin^2(x) =$ -\RespBoxMath{2*sin(x)*cos(x)}{4}{.0001}{0}{1}\cgBdry -\CorrAnsButton{2*sin(x)*cos(x)}\cgBdry +\RespBoxMath{2*sin(x)*cos(x)}{4}{.0001}{0}{1}\olBdry +\CorrAnsButton{2*sin(x)*cos(x)}\olBdry \sqTallyBox \end{oQuestion} \end{Verbatim} @@ -8254,8 +8272,8 @@ insert \cs{sqClearButton}. \begin{oQuestion}{sine5} \redpoint Differentiate\\[1ex] $\dfrac d{dx} \sin^2(x) =$ -\RespBoxMath{2*sin(x)*cos(x)}{4}{.0001}{0}{1}\kern1bp\CorrAnsButton{2*sin(x)*cos(x)}\cgBdry -\sqTallyBox\cgBdry\sqClearButton +\RespBoxMath{2*sin(x)*cos(x)}{4}{.0001}{0}{1}\olBdry\CorrAnsButton{2*sin(x)*cos(x)}\olBdry +\sqTallyBox\olBdry\sqClearButton \end{oQuestion} @@ -8266,8 +8284,8 @@ The listing follows: \redpoint Differentiate\\[1ex] $\dfrac d{dx} \sin^2(x) =$ \RespBoxMath{2*sin(x)*cos(x)}{4}{.0001}{0}{1}% -\CorrAnsButton{2*sin(x)*cos(x)}\cgBdry -\sqTallyBox\cgBdry\sqClearButton +\CorrAnsButton{2*sin(x)*cos(x)}\olBdry +\sqTallyBox\olBdry\sqClearButton \end{oQuestion} \end{Verbatim} diff --git a/macros/latex/contrib/acrotex/doc/eformman.pdf b/macros/latex/contrib/acrotex/doc/eformman.pdf index 7bdd9b3f7d..c3532cfb43 100644 Binary files a/macros/latex/contrib/acrotex/doc/eformman.pdf and b/macros/latex/contrib/acrotex/doc/eformman.pdf differ diff --git a/macros/latex/contrib/acrotex/doc/eformman.tex b/macros/latex/contrib/acrotex/doc/eformman.tex index 7538e0a20c..ecfbb3d835 100644 --- a/macros/latex/contrib/acrotex/doc/eformman.tex +++ b/macros/latex/contrib/acrotex/doc/eformman.tex @@ -6,8 +6,10 @@ forcolorpaper,latextoc,pro,useui}, exerquiz,aebxmp ]{aeb_pro} +\usepackage{forms16be} \usepackage[dblevel=0]{aeb_mlink} \usepackage[altbullet]{lucidbry} +\usepackage{pifont} %\usepackage{myriadpro} \setlength{\marginparpush}{3pt} @@ -79,7 +81,7 @@ subject={Documentation for the eforms and insdljs packages}, talksite={\url{www.acrotex.net}}, version={2.0}, - prepared={2019/05/24}, + prepared={2019/08/06}, preparedLabel={Distribution Dated:}, keywords={LaTeX, hyperref, PDF, exercises, quizzes}, copyrightStatus=True, @@ -517,13 +519,27 @@ declarative command \cs{pmpvMrk\darg{\ameta{mrk}}} that takes one argument \amet to be used. The package declares \verb|\pmpvMrk{X}|, another good choice is \verb|\pmpvMrk{$\checkmark$}|. +\newtopic\indent\textbf{Finer control over enhanced preview.} When enhanced +preview is on (\cs{previewOn}\allowbreak \cs{pmpvOn}), the caption for {\pbs} +may be turned off with \cs{pmpvCAOff}\FmtMP{\cs{pmpvCAOff}} (and may be +turned back on again with \cs{pmpvCAOn}). Enhanced preview for all other +field types is controlled with \cs{pmpvVOff}\FmtMP{\cs{pmpvVOff}} (and +\cs{pmpvVOn}). Turning off enhanced preview may be become an issue when the +preview text is too wide for the preview rectangle +{\previewOn\pmpvOn\textField[\autoCenter{y}\BC{}\Ff{\FfReadOnly}\V{We initialize this field}\DV{We +initialize this field}]{V2Big}{1in}{11bp}}. We can turn off enhanced preview +for this field only by passing \cs{cmd\darg{\cs{pmpvVOff}}} in the optional +argument of the field, or turn it off globally by expanding \cs{pmpvVOff} +prior to expanding the \cs{textField} command. + \newtopic\textbf{\textcolor{red}{Final Preparation.}} In the modern era of {\LaTeX}, it is customary by some to use \app{sumatraPDF} or some other non-conforming {\PDF} reader during development; however, you should always open your final {\PDF} (which was built with \cs{previewOff}\cs{pmpvOff}) in \app{Adobe Reader DC} (or in \app{Acrobat}), save it to obtain the correct appearances of the fields -placed in the document. +placed in the document. Other suggestions can be found in the +\href{\urlAcroTeXBlog}{\AcroBlog} article cited below. %http://www.acrotex.net/blog/?p=1404 \exAeBBlogPDF{p=1404} Refer to the article titled \textit{\href{\urlAcroTeXBlog/?p=1404}{eforms: Enhanced Previews}} for more technical @@ -2841,7 +2857,7 @@ The \hypertarget{\pkg{insdljs}}{insdljsPkg} package provides support to {\LaTeX} for inserting \app{Acrobat} JavaScript into a PDF file created from a \LaTeX{} source. This package works correctly for users of \textsf{pdftex} (and \app{luatex}), \textsf{dvipdfm}, \textsf{dvipdfmx}, and \texttt{xetex}. -For\marginpar{\small\raggedleft\app{Acrobat} required for +For\FmtMP{\app{Acrobat} required for \app{dvips}} those who use either \app{dvips} or \app{dvipsone} to produce a postscript file, which is then distilled, you are required to have \app{Acrobat}~5.0 (or later). @@ -2862,12 +2878,20 @@ of the JavaScripts. JavaScript. This might be useful, for creating a paper document that is not interactive. For a non-interactive paper document, no JS is needed. -\item\NH\texttt{execJS} is a very useful option/feature if you know how to use - it. Any JavaScript that is written in an \env{execJS} environment is - executed once when the document is first opened in \app{Acrobat}, then - discarded. AeB uses this for post-distillation document processing. The - default is that the JavaScript in an \texttt{execJS} environment is not - executed; using this option turns on this feature. +\item\NH\texttt{execJS} is a very useful option/feature if you know how to + use it. Any JavaScript that is written in an \env{execJS} environment + is executed once when the document is first opened in \app{Acrobat}, + then discarded. AeB uses this for post-creation document processing. + The default is that the JavaScript in an \texttt{execJS} environment is + not executed; using this option turns on this feature. Two convenience + commands are also defined: \FmtMP{\cs{execJSOn}} \cs{execJSOn} (the + equivalent of passing the \opt{execJS} option to the \pkg{insdljs} + package) and \FmtMP{\cs{execJSOff}}\cs{execJSOff} (for turning off + JavaScript execution within an \env{execJS} environment). Both have no + effect outside the preamble of the document. + + For information on the \env{execJS} environment, read + Section~\ref{s:execJS} on page~\pageref{s:execJS}. \end{description} \section{The \texttt{insDLJS} and \texttt{insDLJS*} Environments} @@ -3235,8 +3259,20 @@ When \cs{thisPageAction} is executed in the preamble, the \texttt{} argument gets passed to the \cs{OpenAction} command. -\section{The \textsf{execJS} Environment} +\section{The \textsf{execJS} Environment}\label{s:execJS} + +\textbf{Purpose.} The\FmtMP{`\texttt{\eqbs}' and `\texttt{\%}' characters available} \env{execJS} takes JavaScript as content. This +JavaScript is executed the first time the newly created PDF is opened in +\app{Acrobat}. This environment is a variation on \env{insDLJS}; +consequently, +the escape character is `\texttt{\eqbs}' and the comment character is +`\texttt{\%}'. +\newtopic +\textbf{Requirements.} For the script to be executed, the document must be compiled under +the \opt{execJS} option of \pkg{eforms}. + +\newtopic This is an environment useful to PDF developers who want to tap into the power of JavaScript. To use this environment, the developer needs \app{Acrobat}~5.0 or higher. \textsf{pdftex} or \textsf{dvipdfm} can @@ -3244,8 +3280,8 @@ be used to produce the PDF document, but the developer needs the \app{Acrobat} product for this environment to do anything. The \texttt{execJS} is used primarily for post-distillation -processing (post-creation processing, in the case of \textsf{pdftex} -and \textsf{dvipdfm}). The \texttt{execJS} environment can be used, +processing (post-creation processing, in the case of \textsf{pdflatex} +and \textsf{xelatex}). The \texttt{execJS} environment can be used, for example, to automatically import named icons into the document, which can, in turn, be used for an animation. @@ -3259,18 +3295,22 @@ by the \textsf{execJS} environment is imported, and the JavaScript executed. This JavaScript is \emph{not} saved with the document. The syntax of this environment is\dots -\settowidth{\aebdimen}{\ttfamily\string\begin\darg{execJS}\darg{\meta{name}}} +\settowidth{\aebdimen}{\ttfamily\string\begin\darg{execJS}[\ameta{\cs{cmd}}]\darg{\meta{name}}} \begin{dCmd}[commandchars=!()]{\aebdimen+2\fboxsep+2\fboxrule} -\begin{execJS}{!meta(name)} +\begin{execJS}[!ameta(\cmd)]{!meta(name)} .... -!anglemeta(JavaScript code) +!ameta(JavaScript code) .... \end{execJS} \end{dCmd} -\PD The environment takes one required argument, the base name of the -auxiliary files to be generated. +\PD The environment takes one required argument (\meta{name}), the base name +of the auxiliary files to be generated. The \env{execJS} environment now has +an optional argument, the optional argument must be a command +\ameta{\cs{cmd}}. The purpose of \ameta{\cs{cmd}} is to make special +definitions at the time the script is expanded. +\newtopic\indent Many of the more useful JavaScript methods have security restrictions, the developer must create folder JavaScript that can be used to \emph{raise the privilege} of the methods. @@ -3331,6 +3371,31 @@ app.endPriv(); \end{Verbatim} \newtopic AeB Pro, the {Acro\!\TeX} Presentation Bundle and @EASE use these execJS techniques. +\Example In this example, we give a simple example of the use of the optional argument (\ameta{\cs{cmd}}). +We define a command \cs{myDefns} which gives a special meaning to \cs{oct}. This definition +are made within a group so it has no effect outside the environment. +\begin{Verbatim}[xleftmargin=\amtIndent,commandchars={!~@}] +... +\execJSOn +!textbf~\def\myDefns{\let\oct\eqbs}@ +\begin{execJS}[!textbf~\myDefns@]{tst} +var str="Hello J!textbf~\oct@374rgen! \u263A"; // \u already defined +console.show(); +console.println(str); +\end{execJS} +\begin{document} +... +\end{document} +\end{Verbatim} +\defUniStr{myInitValue}{Hello J\u00FCrgen! \u263A}% +%\previewOn\pmpvOn +When the document is first opened, the console window appears and the message, \ding{172} +\begin{quote} +\textField[\cmd{\let\pmpvFmt\footnotesize}\Ff\FfReadOnly\BC{}\V{\tops{Hello J\"{u}rgen! \protect\ding{172}}{\unicodeStr(myInitValue)}} +\DV{\unicodeStr(myInitValue)}]{HJSmiley}{67.68bp}{11bp} +\end{quote} +is written to the console window. + \section{The \textsf{defineJS} Environment}\label{defineJS} When you create a form element (button, text field, etc.), you diff --git a/macros/latex/contrib/acrotex/doc/install_jsfiles.pdf b/macros/latex/contrib/acrotex/doc/install_jsfiles.pdf index 7b2d3fab78..221ba16fdb 100644 Binary files a/macros/latex/contrib/acrotex/doc/install_jsfiles.pdf and b/macros/latex/contrib/acrotex/doc/install_jsfiles.pdf differ -- cgit v1.2.3