\documentclass{article} \usepackage[designv,tight]{web} \usepackage{eforms} \usepackage{graphicxsp}[2018/11/20] \usepackage{icon-appr} %\previewOn\pmpvOn \title{Creating icon appearances for button fields\texorpdfstring{\\[1ex]}{ }using EPS methods} \author{D. P. Story} \university{Acro\TeX.Net} \email{dpstory@acrotex.net} \subject{Techniques for creating icon appearances for button fields} \keywords{icon appearances of button fields} \version{1.0} \norevisionLabel \newcommand{\cs}[1]{\texttt{\char`\\#1}} \begin{embedding} \embedEPS[hiresbb,name=mani]{../graphics/man1} \embedEPS[hiresbb,name=girl]{../graphics/girl} \embedEPS[hiresbb,name=scot]{../graphics/scot} \end{embedding} \begin{document} \maketitle \section{Introduction} Forxx the \textsf{\textbf{pdfmark}}-type drivers (\textsf{dvips} and \textsf{dvipsone}), there are two ways to create an icon appearance: (1) JavaScript methods and (2) EPS methods. The JavaScript methods are demonstrated in \texttt{icons-appr-pb.tex}. A shortcoming of the JavaScript method is that \textsf{Acrobat} and \textsf{Distiller}) are needed, and the methods do not apply to check box and radio button fields. The advantage of EPS methods is they apply to all button fields. \section{Push button fields} \noindent\begin{minipage}[t]{100bp}\kern0pt \pushButton[\BC{}\BG{}\autoCenter{n} % \A{\JS{app.alert("AcroTeX rocks!")}} \TP{1}\BG{}\S{S} \I{\mani} \RI{\girl} \IX{\scot} ]{myButton}{100bp}{100bp} \end{minipage}\cgBdry[6bp]\raisebox{-.5\baselineskip}{\begin{minipage}[t]{\linewidth-108bp} \textbf{Comments on PDF creation.} The file can be distilled and viewed in \textsf{Acrobat} and saved for others to view in another PDF viewer; however, you can also use \textsf{ps2pdf} to produce a PDF file; however, the resulting PDF does not display correctly in \textsf{PDF-XChange Editor} (or \textsf{Viewer}). In this case, open the file in \textsf{Adobe Reader DC} (or \textsf{Acrobat}) and save it. It will now view correctly in \textsf{PDF-XChange}. This file does view correctly for \textsf{SumatraPDF}; however, the buttons have the correct appearances, but are not functional. \end{minipage}} \section{A check box button field} \checkBox[\BC{}\BG{} \V{Off}\DV{Off}\AS{Off}\H{N}\autoCenter{y} \AP{\N{\On{Man}{\mani} \Off{\girl}}} ]{myCkBx}{22bp}{22bp}{Man}\quad(Girl is `off', Man is `on')\hfill \pushButton[\CA{Reset}\A{\JS{this.resetForm();}}]{reset}{}{11bp} \section{A radio button field} \radioButton[\BC{}\BG{} \V{Off}\DV{Off}\AS{Off}\H{N}\autoCenter{y} \AP{\N{\On{Man}{\mani} \Off{\girl}}} ]{myRadBtn}{22bp}{22bp}{Man}\quad \radioButton[\BC{}\BG{} \V{Off}\DV{Off}\AS{Off}\H{N}\autoCenter{y} \AP{\N{\On{Man}{\mani} \Off{\girl}}} ]{myRadBtn}{22bp}{22bp}{Man}\quad\radioButton[\BC{}\BG{} \V{Off}\DV{Off}\AS{Off}\H{N}\autoCenter{y} \AP{\N{\On{Man}{\mani} \Off{\girl}}} ]{myRadBtn}{22bp}{22bp}{Man}\quad(Girl is `off', Man is `on')\hfill \pushButton[\CA{Reset}\A{\JS{this.resetForm();}}]{reset}{}{11bp} \section{Icons in this document} Use the button below to cycle through all icons in this document. % Note, compare this code and fields with that of icon-appr-exmpl.tex % in the latter file, we include a caption, where here, we do not % include a caption. \begin{defineJS}{\cycleJS} if (typeof indexIcon == "undefined") var indexIcon=0; var oIconName=this.icons[indexIcon].name; var f=this.getField("iconContainer"); var oIcon=this.getIcon(oIconName); f.buttonSetIcon(oIcon); indexIcon = (indexIcon+1) \% (this.icons.length); \end{defineJS} \begin{center} \pushButton[\BG{}\autoCenter{n} \TP{1}\I{}\S{S}]{iconContainer}{100bp}{100bp}\vcgBdry[6bp] \pushButton[\CA{Cycle}\AAmouseup{\cycleJS}]{cycleBtn}{}{11bp} \end{center} \end{document}