summaryrefslogtreecommitdiff
path: root/texmf-dist/doc/latex/graphicxsp/examples/grxsp_forms_aeb.tex
diff options
context:
space:
mode:
Diffstat (limited to 'texmf-dist/doc/latex/graphicxsp/examples/grxsp_forms_aeb.tex')
-rw-r--r--texmf-dist/doc/latex/graphicxsp/examples/grxsp_forms_aeb.tex199
1 files changed, 199 insertions, 0 deletions
diff --git a/texmf-dist/doc/latex/graphicxsp/examples/grxsp_forms_aeb.tex b/texmf-dist/doc/latex/graphicxsp/examples/grxsp_forms_aeb.tex
new file mode 100644
index 00000000..675c6b5b
--- /dev/null
+++ b/texmf-dist/doc/latex/graphicxsp/examples/grxsp_forms_aeb.tex
@@ -0,0 +1,199 @@
+\documentclass{article}
+\usepackage[designiv,usetemplates]{web}
+\usepackage{eforms}
+\usepackage{graphicxsp}
+\usepackage{fancyvrb}
+
+%\previewMiKTeX
+
+%\textBgColor{cornsilk}
+
+\title{\textsf{GraphicxSP}\texorpdfstring{\\}{:} Forms}
+\author{D. P. Story}
+\university{Acro\negthinspace\TeX.Net}
+\email{dpstory@acrotex.net}
+\subject{Form XObjects and BP, EP and SP operators, transparency}
+\keywords{Distiller, Form XObjects, BP, EP, and SP operators,transparency}
+
+\newcommand{\cs}[1]{\texttt{\char`\\#1}}
+\let\pkg\textsf
+
+\embedEPS[hiresbb,transparencyGroup]{AdobeDon}{graphics/AdobeDon}
+\embedEPS{3Dcheck}{graphics/3Dcheck}
+\embedEPS{3Dx}{graphics/3Dx}
+
+% Normal,Multiply, Screen, Screen, Darken, Lighten, ColorDodge, ColorBurn, HardLight,
+% SoftLight, Difference, Exclusion
+
+\begin{createImage}{\bboxOf{3Dcheck}}{on3Dcheck}
+ [ {3Dcheck} /SP pdfmark
+\end{createImage}
+\begin{createImage}{\bboxOf{3Dx}}{off3Dx}
+ [ {3Dx} /SP pdfmark
+\end{createImage}
+
+\begin{createImage}{\bboxOf{AdobeDon}}{nAdobeDon}
+ [ {AdobeDon} /SP pdfmark
+\end{createImage}
+
+\begin{createImage}{\bboxOf{AdobeDon}}{dAdobeDon}
+ [ /ca .3 /SetTransparency pdfmark
+ [ {AdobeDon} /SP pdfmark
+\end{createImage}
+
+\begin{createImage}{\bboxOf{AdobeDon}}{rAdobeDon}
+ [ /ca .5 /SetTransparency pdfmark
+ [ {AdobeDon} /SP pdfmark
+\end{createImage}
+
+\begin{createImage}{0 0 100 100}{xO}
+.7529 setgray 0 0 100 100 rectfill 1 setgray 2 2 moveto 2 98 lineto 98 98 lineto
+96 96 lineto 4 96 lineto 4 4 lineto fill 0.34 setgray 98 98 moveto 98 2 lineto
+2 2 lineto 4 4 lineto 96 4 lineto 96 96 lineto fill
+0 setgray 22.5 22.5 moveto 1 0 0 setrgbcolor /Helvetica 72 selectfont (O) show
+\end{createImage}
+
+\begin{createImage}{0 0 100 100}{xX}
+.7529 setgray 0 0 100 100 rectfill 1 setgray 2 2 moveto 2 98 lineto 98 98 lineto
+96 96 lineto 4 96 lineto 4 4 lineto fill 0.34 setgray 98 98 moveto 98 2 lineto
+2 2 lineto 4 4 lineto 96 4 lineto 96 96 lineto fill
+0 setgray 27 22.5 moveto 0 0 1 setrgbcolor /Helvetica 72 selectfont (X) show
+\end{createImage}
+
+\parindent0pt
+\setlength{\fboxsep}{0pt}
+
+\begin{insDLJS}[_setApp]{setapp}{Turn off highlighting}
+var _setApp = true;
+try { app.runtimeHighlight=false } catch(e) {};
+\end{insDLJS}
+
+\begin{document}
+
+\maketitle
+
+In the preamble, we make the following definitions: We embed for EPS
+files, one of which are set a transparency group:
+{\small\begin{Verbatim}[fontsize=\small]
+\embedEPS[hiresbb,transparencyGroup]{AdobeDon}{graphics/AdobeDon}
+\embedEPS{3Dcheck}{graphics/3Dcheck}
+\embedEPS{3Dx}{graphics/3Dx}
+\end{Verbatim}
+}
+We also use the \texttt{createImage} environment to create more images, some new, others made
+from the embedded files.\medskip
+
+Create variations on \texttt{AdobeDon} by giving the image various degrees of opacity:
+\begin{Verbatim}[fontsize=\scriptsize]
+\begin{createImage}{\bboxOf{AdobeDon}}{nAdobeDon} % normal appearance
+ [ {AdobeDon} /SP pdfmark
+\end{createImage}
+
+\begin{createImage}{\bboxOf{AdobeDon}}{dAdobeDon} % down appearance
+ [ /ca .3 /SetTransparency pdfmark
+ [ {AdobeDon} /SP pdfmark
+\end{createImage}
+
+\begin{createImage}{\bboxOf{AdobeDon}}{rAdobeDon} % rollover appearance
+ [ /ca .5 /SetTransparency pdfmark
+ [ {AdobeDon} /SP pdfmark
+\end{createImage}
+\end{Verbatim}
+
+
+\newpage
+
+Now create two new graphic images using raw PostScript. In all cases we use
+the \texttt{createImage} environment, first optional argument is the bounding box,
+the second is the symbolic name for the graphic. The symbolic name can be used
+in the \cs{includegraphics} command or the \cs{insertEPS} command.
+\begin{Verbatim}[fontsize=\scriptsize]
+\begin{createImage}{0 0 100 100}{xO}
+.7529 setgray 0 0 100 100 rectfill 1 setgray 2 2 moveto 2 98 lineto 98 98 lineto
+96 96 lineto 4 96 lineto 4 4 lineto fill 0.34 setgray 98 98 moveto 98 2 lineto
+2 2 lineto 4 4 lineto 96 4 lineto 96 96 lineto fill
+0 setgray 22.5 22.5 moveto 1 0 0 setrgbcolor /Helvetica 72 selectfont (O) show
+\end{createImage}
+
+\begin{createImage}{0 0 100 100}{xX}
+.7529 setgray 0 0 100 100 rectfill 1 setgray 2 2 moveto 2 98 lineto 98 98 lineto
+96 96 lineto 4 96 lineto 4 4 lineto fill 0.34 setgray 98 98 moveto 98 2 lineto
+2 2 lineto 4 4 lineto 96 4 lineto 96 96 lineto fill
+0 setgray 27 22.5 moveto 0 0 1 setrgbcolor /Helvetica 72 selectfont (X) show
+\end{createImage}
+\end{Verbatim}
+Subsequent pages demonstrate how to use these images in the context of form fields.\medskip
+
+Here are more traditional uses for a checkbox, but this time using
+custom checks and crosses.\bigskip
+
+\noindent\hspace*{20pt}\resizebox{11bp}{!}{\checkBox[%
+ \A{\JS{%
+ var f = this.getField("reportCk");\r
+ f.value = !!event.target.isBoxChecked(0);\t
+ this.dirty=false;
+ }}
+ \V{Off}\DV{Off}\AS{Off}\H{N}\autoCenter{n}
+ \AP{/N << /Yes {xX} /Off {xO} >> }
+]{ckBoxXO}{\widthOf{xX}bp}{\heightOf{xX}bp}{Yes}}
+\textField[\Q1\Ff\FfReadOnly\autoCenter{n}]{reportCk}{.5in}{11bp}\cgBdry[6pt]
+\resizebox{11bp}{!}{\checkBox[%
+ \A{\JS{%
+ var f = this.getField("reportCk3D");\r
+ f.value = !!event.target.isBoxChecked(0);\r
+ this.dirty=false;
+ }}
+ \V{Off}\DV{Off}\AS{Off}\H{N}\autoCenter{n}
+ \AP{/N << /Yes {on3Dcheck} /Off {off3Dx} >> }
+]{ckBox3D}{\widthOf{3Dcheck}bp}{\heightOf{3Dcheck}bp}{Yes}}
+\textField[\Q1\Ff\FfReadOnly\autoCenter{n}]{reportCk3D}{.5in}{11bp}\medskip
+
+The verbatim listing of the second check box is, for example,
+\begin{Verbatim}[fontsize=\small,commandchars=!()]
+\resizebox{11bp}{!}{\checkBox[\A{\JS{(!normalfont!itshape(JS code not shown))}}
+ \V{Off}\DV{Off}\AS{Off}\H{N}\autoCenter{n}
+ \AP{/N << /Yes {on3Dcheck} /Off {off3Dx} >> }
+]{ckBox3D}{\widthOf{3Dcheck}bp}{\heightOf{3Dcheck}bp}{Yes}}
+\textField[\Q1\Ff\FfReadOnly\autoCenter{n}]{reportCk3D}{.5in}{11bp}
+\end{Verbatim}
+We use \cs{resizebox} from the \textsf{graphicx} package to adjust
+the sizes of the appearances.\medskip
+
+For \pkg{eforms} dated 2018/11/27 or later, the above check box code can be simplified
+as follows:
+\begin{Verbatim}[fontsize=\small,commandchars=!()]
+\resizebox{11bp}{!}{\checkBox[\A{\JS{(!normalfont!itshape(JS code not shown))}}
+ \V{Off}\DV{Off}\AS{Off}\H{N}\autoCenter{n}
+ \AP{\N{\On{Yes}{\on3Dcheck}\Off{\off3Dx}}}
+]{ckBox3D}{\widthOf{3Dcheck}bp}{\heightOf{3Dcheck}bp}{Yes}}
+\textField[\Q1\Ff\FfReadOnly\autoCenter{n}]{reportCk3D}{.5in}{11bp}
+\end{Verbatim}
+\newpage
+
+
+One last example, this one uses transparency. We now we create a push
+button with the face of AdobeDon as the normal appearance (somewhat
+paradoxically), AdobeDon at 50\% opacity for the rollover
+appearance, and AdobeDon at 30\% for the down appearance. Will it
+work, we'll see:\medskip
+
+Push button: \raisebox{-3pt}{\resizebox{.5in}{!}{\pushButton[%
+ \autoCenter{y}\BC{}\S{S}
+ \A{\JS{app.alert("AcroTeX rocks the world!"); this.dirty=false;}}
+ \I{nAdobeDon}\RI{dAdobeDon}\IX{rAdobeDon}\TP{1}\FB{true}
+]{pbAdobeDon}{\widthOf{AdobeDon}bp}{\heightOf{AdobeDon}bp}}}
+
+
+\medskip The verbatim listing is
+\begin{small}
+\begin{Verbatim}[fontsize=\small]
+Push button: \raisebox{-3pt}{\resizebox{.5in}{!}{\pushButton[%
+ \autoCenter{y}\BC{}\S{S}
+ \A{\JS{app.alert("AcroTeX rocks the world!");
+ this.dirty=false;}}
+ \I{nAdobeDon}\RI{dAdobeDon}\IX{rAdobeDon}\TP{1}\FB{true}
+]{pbAdobeDon}{\widthOf{AdobeDon}bp}{\heightOf{AdobeDon}bp}}}
+\end{Verbatim}
+\end{small}
+
+\end{document}