diff options
author | Karl Berry <karl@freefriends.org> | 2007-09-30 18:24:50 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2007-09-30 18:24:50 +0000 |
commit | 44a40e758a3234d9bb165b0484abb4d5d51911f0 (patch) | |
tree | 4f24192eeaa7d70dc51a98109c28e36d8cfb43cd /Master/texmf-doc | |
parent | a2467719a97586f196d0061be818169d669e27bb (diff) |
pdf-forms-tutorial-en (10jun07)
git-svn-id: svn://tug.org/texlive/trunk@5068 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-doc')
44 files changed, 3326 insertions, 0 deletions
diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/README b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/README new file mode 100644 index 00000000000..61cb1f1cec5 --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/README @@ -0,0 +1,61 @@ +CONTENTS +======== + +1. Author, Copyright and License +2. Bug reports, corrections +3. Package contents + + +1. Author, Copyright and License +-------------------------------- +Author: Dirk Krause +Copyright: Copyright (C) 2007 Dirk Krause +License: Gnu Free Documentation License + see the file fdl.txt in this directory for license terms. +Contact: http://www.fh-schmalkalden.de/url.php?/page/1026/select_wert/3023 + + +2. Bug reports, corrections +--------------------------- + +Please use the web form +http://www.fh-schmalkalden.de/url.php?/page/1026/select_wert/3023 +to submit bug reports and suggestions. + +English is not my native language, so the english versions of the tutorial +and the examples may need corrections in spelling, grammar and style. +Volunteers are welcome, please use the web form as described above +for suggestions. + + +3. Package contents +------------------- + +This package contains a tutorial and examples how to create PDF forms +using pdflatex with the hyperref and insdljs packages. The files +de/forms.pdf and en/forms.pdf are the german and english version of the +tutorial, the de/examples and en/examples directories contain the +LaTeX sources for the example forms. + +We have three forms: +- ex00... is a form to request keys for employees. + This form is developed step-by-step: + ex0001: The initial version, contains all the form elements but looks ugly. + ex0002: Form elements aligned in a table. + ex0003: Equal widths for form elements, space between elements added. + ex0004: Equal y-position for form elements and labels. + ex0005: Form element border color changed. + ex0006: Document level JavaScript added, processing Doc/Open event. + ex0007: German umlauts corrected in the german version. + \usepackage[...]{inputenc} is not longer used. + ex0008: Processing WillPrint and DidPrint events (showing a message box). + ex0009: Processing WillPrint and DidPrint events (color and font changes). + ex0010: Processing form element events (validation). + ex0011: Final version, the choice list is now editable (combo box style). + +- ex0101 is a form to request software licenses and installations. + This example shows how to initialize a choice list using + JavaScript variables. + +- ex0201 is an interactive application for investment calculations. + This example shows how to respond to a button click event. diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/Makefile b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/Makefile new file mode 100644 index 00000000000..982a6755f02 --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/Makefile @@ -0,0 +1,21 @@ + +ALLFORMS1= ex0001.pdf ex0002.pdf ex0003.pdf ex0004.pdf ex0005.pdf ex0006.pdf +ALLFORMS2= ex0007.pdf ex0008.pdf ex0009.pdf ex0010.pdf ex0011.pdf ex0101.pdf +ALLFORMS3= ex0201.pdf ex0301.pdf +ALLFORMS= $(ALLFORMS1) $(ALLFORMS2) $(ALLFORMS3) + +all: allforms + +allforms: $(ALLFORMS) + +.SUFFIXES: + +.SUFFIXES: .pdf .tex + +.tex.pdf: + pdflatex $* + pdflatex $* + pdflatex $* + +clean: + -rm -fr *.bbl *.blg *.out *.djs ex00*.pdf ex00*.aux ex00*.log diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0001.tex b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0001.tex new file mode 100644 index 00000000000..959667e1d0a --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0001.tex @@ -0,0 +1,40 @@ +\documentclass[ngerman,a4paper]{scrartcl} +\usepackage[latin1]{inputenc} +\usepackage[T1]{fontenc} +\usepackage{textcomp} +\usepackage{mathptmx} +\usepackage[scaled=.92]{helvet} +\usepackage{courier} +\renewcommand*{\familydefault}{phv} +\usepackage[left=25mm,top=25mm,bottom=10mm,right=10mm]{geometry} +\usepackage{fancyhdr} +\lhead{ABC, Inc.}\chead{}\rhead{XYZ Dept.} +\lfoot{}\cfoot{}\rfoot{} +\pagestyle{fancy} +\usepackage{graphicx} +\usepackage{color} +\usepackage[ + pdftex,a4paper=true,colorlinks=true, + pdftitle={Key form},pdfsubject={Key}, + pdfauthor={ich},pdfpagemode=UseNone,pdfstartview=FitH, + pagebackref,pdfhighlight={/N} +]{hyperref} +\begin{document} +\section*{Request for a key} +\begin{Form} +\textbf{Employee}\\ +First name: \TextField[name=vorname]{}\\ +Name: \TextField[name=name]{}\\ +Department: \ChoiceMenu[name=abt]{}{% +Sales=v,Production=f,Service=s}\\ +\textbf{Time}\\ +Time: \ChoiceMenu[name=zeit]{}{% +limited=b,unlimited=u}\\ +from: \TextField[name=from]{}\\ +until: \TextField[name=until]{}\\ +\textbf{Doors}\\ +Front door: \CheckBox[name=ht]{}\\ +Ground floor: \CheckBox[name=e1]{}\\ +First floor: \CheckBox[name=e2]{}\\ +\end{Form} +\end{document} diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0002.tex b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0002.tex new file mode 100644 index 00000000000..986e48c68cf --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0002.tex @@ -0,0 +1,55 @@ +\documentclass[ngerman,a4paper]{scrartcl} +\usepackage[latin1]{inputenc} +\usepackage[T1]{fontenc} +\usepackage{textcomp} +\usepackage{mathptmx} +\usepackage[scaled=.92]{helvet} +\usepackage{courier} +\renewcommand*{\familydefault}{phv} +\usepackage[left=25mm,top=25mm,bottom=10mm,right=10mm]{geometry} +\usepackage{fancyhdr} +\lhead{ABC, Inc.}\chead{}\rhead{XYZ Dept.} +\lfoot{}\cfoot{}\rfoot{} +\pagestyle{fancy} +\usepackage{graphicx} +\usepackage{color} +\usepackage[ + pdftex,a4paper=true,colorlinks=true, + pdftitle={Key form},pdfsubject={Key}, + pdfauthor={ich},pdfpagemode=UseNone,pdfstartview=FitH, + pagebackref,pdfhighlight={/N} +]{hyperref} +\begin{document} +\section*{Request for a key} +\begin{Form} +\begin{tabular}{|rl|} +\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Employee}}\\ +First name:&% +\TextField[name=vorname]{}\\ +Name:&% +\TextField[name=name]{}\\ +Department:&% +\ChoiceMenu[name=abt]{}{% +Sales=v,Production=f,Service=s}\\ +\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Time}}\\ +Time:&% +\ChoiceMenu[name=zeit]{}{% +limited=b,unlimited=u}\\ +from:&% +\TextField[name=from]{}\\ +until:&% +\TextField[name=until]{}\\ +\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Doors}}\\ +Front door:&% +\CheckBox[name=ht,width=1.2em]{}\\ +Ground floor:&% +\CheckBox[name=e1,width=1.2em]{}\\ +First floor:&% +\CheckBox[name=e2,width=1.2em]{}\\ +\hline +\end{tabular} +\end{Form} +\end{document} diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0003.tex b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0003.tex new file mode 100644 index 00000000000..fd35ecd9a28 --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0003.tex @@ -0,0 +1,56 @@ +\documentclass[ngerman,a4paper]{scrartcl} +\usepackage[latin1]{inputenc} +\usepackage[T1]{fontenc} +\usepackage{textcomp} +\usepackage{mathptmx} +\usepackage[scaled=.92]{helvet} +\usepackage{courier} +\renewcommand*{\familydefault}{phv} +\usepackage[left=25mm,top=25mm,bottom=10mm,right=10mm]{geometry} +\usepackage{fancyhdr} +\lhead{ABC, Inc.}\chead{}\rhead{XYZ Dept.} +\lfoot{}\cfoot{}\rfoot{} +\pagestyle{fancy} +\usepackage{graphicx} +\usepackage{color} +\usepackage[ + pdftex,a4paper=true,colorlinks=true, + pdftitle={Key form},pdfsubject={Key}, + pdfauthor={ich},pdfpagemode=UseNone,pdfstartview=FitH, + pagebackref,pdfhighlight={/N} +]{hyperref} +\begin{document} +\section*{Request for a key} +\begin{Form} +\begin{tabular}{|rl|} +\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Employee}}\\ +&\\*[-0.9em]First name:&% +\TextField[name=vorname,width=20em]{}\\ +&\\*[-0.9em]Name:&% +\TextField[name=name,width=20em]{}\\ +&\\*[-0.9em]Department:&% +\ChoiceMenu[{}={},name=abt,width=20em,popdown=true]{}{% +Sales=v,Production=f,Service=s}\\ +&\\*[-0.9em]\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Time}}\\ +&\\*[-0.9em]Time:&% +\ChoiceMenu[name=zeit,width=20em,popdown=true]{}{% +limited=b,unlimited=u}\\ +&\\*[-0.9em]from:&% +\TextField[name=from,width=10em]{}\\ +&\\*[-0.9em]until:&% +\TextField[name=until,width=10em]{}\\ +&\\*[-0.9em]\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Doors}}\\ +&\\*[-0.9em]Front door:&% +\CheckBox[name=ht,width=1.2em]{}\\ +&\\*[-0.9em]Ground floor:&% +\CheckBox[name=e1,width=1.2em]{}\\ +&\\*[-0.9em]First floor:&% +\CheckBox[name=e2,width=1.2em]{}\\ +&\\ +\hline +\end{tabular} +\end{Form} +\end{document} diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0004.tex b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0004.tex new file mode 100644 index 00000000000..88f7f3a5d99 --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0004.tex @@ -0,0 +1,60 @@ +\documentclass[ngerman,a4paper]{scrartcl} +\usepackage[latin1]{inputenc} +\usepackage[T1]{fontenc} +\usepackage{textcomp} +\usepackage{mathptmx} +\usepackage[scaled=.92]{helvet} +\usepackage{courier} +\renewcommand*{\familydefault}{phv} +\usepackage[left=25mm,top=25mm,bottom=10mm,right=10mm]{geometry} +\usepackage{fancyhdr} +\lhead{ABC, Inc.}\chead{}\rhead{XYZ Dept.} +\lfoot{}\cfoot{}\rfoot{} +\pagestyle{fancy} +\usepackage{graphicx} +\usepackage{color} +\usepackage[ + pdftex,a4paper=true,colorlinks=true, + pdftitle={Key form},pdfsubject={Key}, + pdfauthor={ich},pdfpagemode=UseNone,pdfstartview=FitH, + pagebackref,pdfhighlight={/N} +]{hyperref} +\newcommand{\textforlabel}[2]{% +\TextField[name={#1},value={#2},width=7em,% +align=2,bordercolor={1 1 1},readonly=true]{}% +} +\begin{document} +\section*{Request for a key} +\begin{Form} +\begin{tabular}{|rl|} +\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Employee}}\\ +&\\*[-0.9em]\textforlabel{vn}{First name:}&% +\TextField[name=vorname,width=20em]{}\\ +&\\*[-0.9em]\textforlabel{nn}{Name:}&% +\TextField[name=name,width=20em]{}\\ +&\\*[-0.9em]\textforlabel{ab}{Department:}&% +\ChoiceMenu[name=abt,width=20em,popdown=true,value=v]{}{% +Sales=v,Production=f,Service=s}\\ +&\\*[-0.9em]\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Time}}\\ +&\\*[-0.9em]\textforlabel{z}{Time:}&% +\ChoiceMenu[name=zeit,width=20em,popdown=true,value=u]{}{% +unlimited=u,limited=b}\\ +&\\*[-0.9em]\textforlabel{v}{from:}&% +\TextField[name=from,width=10em]{}\\ +&\\*[-0.9em]\textforlabel{b}{until:}&% +\TextField[name=until,width=10em]{}\\ +&\\*[-0.9em]\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Doors}}\\ +&\\*[-0.9em]\textforlabel{th}{Front door:}&% +\CheckBox[name=ht,width=1.2em]{}\\ +&\\*[-0.9em]\textforlabel{t1}{Ground floor:}&% +\CheckBox[name=e1,width=1.2em]{}\\ +&\\*[-0.9em]\textforlabel{t2}{First floor:}&% +\CheckBox[name=e2,width=1.2em]{}\\ +&\\ +\hline +\end{tabular} +\end{Form} +\end{document} diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0005.tex b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0005.tex new file mode 100644 index 00000000000..f9198c82579 --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0005.tex @@ -0,0 +1,70 @@ +\documentclass[ngerman,a4paper]{scrartcl} +\usepackage[latin1]{inputenc} +\usepackage[T1]{fontenc} +\usepackage{textcomp} +\usepackage{mathptmx} +\usepackage[scaled=.92]{helvet} +\usepackage{courier} +\renewcommand*{\familydefault}{phv} +\usepackage[left=25mm,top=25mm,bottom=10mm,right=10mm]{geometry} +\usepackage{fancyhdr} +\lhead{ABC, Inc.}\chead{}\rhead{XYZ Dept.} +\lfoot{}\cfoot{}\rfoot{} +\pagestyle{fancy} +\usepackage{graphicx} +\usepackage{color} +\usepackage[ + pdftex,a4paper=true,colorlinks=true, + pdftitle={Key form},pdfsubject={Key}, + pdfauthor={ich}, + pdfpagemode=UseNone,pdfstartview=FitH,pagebackref,pdfhighlight={/N} +]{hyperref} +\newcommand{\textforlabel}[2]{% +\TextField[name={#1},value={#2},width=7em,align=2,% +bordercolor={1 1 1},readonly=true]{}% +} +\begin{document} +\section*{Request for a key} +\begin{Form} +\begin{tabular}{|rl|} +\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Employee}}\\ +&\\*[-0.9em]\textforlabel{vn}{First name:}&% +\TextField[name=vorname,width=20em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{nn}{Name:}&% +\TextField[name=name,width=20em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{ab}{Department:}&% +\ChoiceMenu[name=abt,width=20em,popdown=true,value=v,% +bordercolor={0.65 0.79 0.94}]{}{% +Sales=v,Production=f,Service=s}\\ +&\\*[-0.9em]\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Time}}\\ +&\\*[-0.9em]\textforlabel{z}{Time:}&% +\ChoiceMenu[name=zeit,width=20em,popdown=true,value=u,% +bordercolor={0.65 0.79 0.94}]{}{% +unlimited=u,limited=b}\\ +&\\*[-0.9em]\textforlabel{v}{from:}&% +\TextField[name=from,width=10em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{b}{until:}&% +\TextField[name=until,width=10em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{% +\textbf{Doors}}\\ +&\\*[-0.9em]\textforlabel{th}{Front door:}&% +\CheckBox[name=ht,width=1.2em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{t1}{Ground floor:}&% +\CheckBox[name=e1,width=1.2em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{t2}{First floor:}&% +\CheckBox[name=e2,width=1.2em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\ +\hline +\end{tabular} +\end{Form} +\end{document} diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0006.tex b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0006.tex new file mode 100644 index 00000000000..4bdd4ab0317 --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0006.tex @@ -0,0 +1,87 @@ +\documentclass[ngerman,a4paper]{scrartcl} +\usepackage[latin1]{inputenc} +\usepackage[T1]{fontenc} +\usepackage{textcomp} +\usepackage{mathptmx} +\usepackage[scaled=.92]{helvet} +\usepackage{courier} +\renewcommand*{\familydefault}{phv} +\usepackage[left=25mm,top=25mm,bottom=10mm,right=10mm]{geometry} +\usepackage{fancyhdr} +\lhead{ABC, Inc.}\chead{}\rhead{XYZ Dept.} +\lfoot{}\cfoot{}\rfoot{} +\pagestyle{fancy} +\usepackage{graphicx} +\usepackage{color} +\usepackage[ + pdftex,a4paper=true,colorlinks=true, + pdftitle={Key form},pdfsubject={Key}, + pdfauthor={ich}, + pdfpagemode=UseNone,pdfstartview=FitH, + pagebackref,pdfhighlight={/N} +]{hyperref} +\usepackage[pdftex]{insdljs} +\begin{insDLJS}[exaaaa]{exaaaa}{Document Level JavaScript} + +// indicate that the function was not yet run +var done = 0; + +// function to run when opening the document +function myFirstJavaScriptFunction() +{ + if(!done) { + done = 1; + app.alert("The form was opened."); + } +} +\end{insDLJS} +\OpenAction{/S /JavaScript /JS (myFirstJavaScriptFunction();)} +\newcommand{\textforlabel}[2]{% +\TextField[name={#1},value={#2},width=7em,align=2,% +bordercolor={1 1 1},readonly=true]{}% +} +\begin{document} +\section*{Request for a key} +\begin{Form} +\begin{tabular}{|rl|} +\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Employee}}\\ +&\\*[-0.9em]\textforlabel{vn}{First name:}&% +\TextField[name=vorname,width=20em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{nn}{Name:}&% +\TextField[name=name,width=20em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{ab}{Department:}&% +\ChoiceMenu[name=abt,width=20em,popdown=true,value=v,% +bordercolor={0.65 0.79 0.94}]{}{% +Sales=v,Production=f,Service=s}\\ +&\\*[-0.9em]\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Time}}\\ +&\\*[-0.9em]\textforlabel{z}{Time:}&% +\ChoiceMenu[name=zeit,width=20em,popdown=true,value=u,% +bordercolor={0.65 0.79 0.94}]{}{% +unlimited=u,limited=b}\\ +&\\*[-0.9em]\textforlabel{v}{from:}&% +\TextField[name=from,width=10em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{b}{until:}&% +\TextField[name=until,width=10em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{% +Doors}}\\ +&\\*[-0.9em]\textforlabel{th}{Front door:}&% +\CheckBox[name=ht,width=1.2em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{t1}{Ground floor:}&% +\CheckBox[name=e1,width=1.2em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{t2}{First floor:}&% +\CheckBox[name=e2,width=1.2em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\ +\hline +\end{tabular} +\end{Form} +\end{document} diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0007.tex b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0007.tex new file mode 100644 index 00000000000..9ba5c5122e7 --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0007.tex @@ -0,0 +1,86 @@ +\documentclass[ngerman,a4paper]{scrartcl} +\usepackage[T1]{fontenc} +\usepackage{textcomp} +\usepackage{mathptmx} +\usepackage[scaled=.92]{helvet} +\usepackage{courier} +\renewcommand*{\familydefault}{phv} +\usepackage[left=25mm,top=25mm,bottom=10mm,right=10mm]{geometry} +\usepackage{fancyhdr} +\lhead{ABC, Inc.}\chead{}\rhead{XYZ Dept.} +\lfoot{}\cfoot{}\rfoot{} +\pagestyle{fancy} +\usepackage{graphicx} +\usepackage{color} +\usepackage[ + pdftex,a4paper=true,colorlinks=true, + pdftitle={Key form},pdfsubject={Key}, + pdfauthor={ich}, + pdfpagemode=UseNone,pdfstartview=FitH, + pagebackref,pdfhighlight={/N} +]{hyperref} +\usepackage[pdftex]{insdljs} +\begin{insDLJS}[exaaab]{exaaab}{Document Level JavaScript} + +// indicate that the function was not yet run +var done = 0; + +// function to run when opening the document +function myFirstJavaScriptFunction() +{ + if(!done) { + done = 1; + app.alert("The form was opened."); + } +} +\end{insDLJS} +\OpenAction{/S /JavaScript /JS (myFirstJavaScriptFunction();)} +\newcommand{\textforlabel}[2]{% +\TextField[name={#1},value={#2},width=7em,align=2,% +bordercolor={1 1 1},readonly=true]{}% +} +\begin{document} +\section*{Request for a key} +\begin{Form} +\begin{tabular}{|rl|} +\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Employee}}\\ +&\\*[-0.9em]\textforlabel{vn}{First name:}&% +\TextField[name=vorname,width=20em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{nn}{Name:}&% +\TextField[name=name,width=20em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{ab}{Department:}&% +\ChoiceMenu[name=abt,width=20em,popdown=true,value=v,% +bordercolor={0.65 0.79 0.94}]{}{% +Sales=v,Production=f,Service=s}\\ +&\\*[-0.9em]\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Time}}\\ +&\\*[-0.9em]\textforlabel{z}{Time:}&% +\ChoiceMenu[name=zeit,width=20em,popdown=true,value=u,% +bordercolor={0.65 0.79 0.94}]{}{% +unlimited=u,limited=b}\\ +&\\*[-0.9em]\textforlabel{v}{from:}&% +\TextField[name=from,width=10em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{b}{until:}&% +\TextField[name=until,width=10em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{% +\textbf{Doors}}\\ +&\\*[-0.9em]\textforlabel{th}{Front door:}&% +\CheckBox[name=ht,width=1.2em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{t1}{Ground floor:}&% +\CheckBox[name=e1,width=1.2em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{t2}{First floor:}&% +\CheckBox[name=e2,width=1.2em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\ +\hline +\end{tabular} +\end{Form} +\end{document} diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0008.tex b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0008.tex new file mode 100644 index 00000000000..373a7835a4f --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0008.tex @@ -0,0 +1,103 @@ +\documentclass[ngerman,a4paper]{scrartcl} +\usepackage[T1]{fontenc} +\usepackage{textcomp} +\usepackage{mathptmx} +\usepackage[scaled=.92]{helvet} +\usepackage{courier} +\renewcommand*{\familydefault}{phv} +\usepackage[left=25mm,top=25mm,bottom=10mm,right=10mm]{geometry} +\usepackage{fancyhdr} +\lhead{ABC, Inc.}\chead{}\rhead{XYZ Dept.} +\lfoot{}\cfoot{}\rfoot{} +\pagestyle{fancy} +\usepackage{graphicx} +\usepackage{color} +\usepackage[ + pdftex,a4paper=true,colorlinks=true, + pdftitle={Key form},pdfsubject={Key}, + pdfauthor={ich}, + pdfpagemode=UseNone,pdfstartview=FitH, + pagebackref,pdfhighlight={/N} +]{hyperref} +\usepackage[pdftex]{insdljs} +\immediate\pdfobj { +<< + /WP << /S /JavaScript /JS (willPrint();) >> + /DP << /S /JavaScript /JS (didPrint();) >> +>> +} +\pdfcatalog{/AA \the\pdflastobj\space 0 R} +\begin{insDLJS}[exaaac]{exaaac}{Document Level JavaScript} + +// indicate that the function was not yet run +var done = 0; + +function willPrint() +{ + app.alert("The document will be printed."); +} + +function didPrint() +{ + app.alert("The document was printed."); +} + +// function to run when opening the document +function myFirstJavaScriptFunction() +{ + if(!done) { + done = 1; + app.alert("The form was opened."); + } +} +\end{insDLJS} +\OpenAction{/S /JavaScript /JS (myFirstJavaScriptFunction();)} +\newcommand{\textforlabel}[2]{% +\TextField[name={#1},value={#2},width=7em,align=2,% +bordercolor={1 1 1},readonly=true]{}% +} +\begin{document} +\section*{Request for a key} +\begin{Form} +\begin{tabular}{|rl|} +\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Employee}}\\ +&\\*[-0.9em]\textforlabel{vn}{First name:}&% +\TextField[name=vorname,width=20em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{nn}{Name:}&% +\TextField[name=name,width=20em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{ab}{Department:}&% +\ChoiceMenu[name=abt,width=20em,popdown=true,value=v,% +bordercolor={0.65 0.79 0.94}]{}{% +Sales=v,Production=f,Service=s}\\ +&\\*[-0.9em]\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Time}}\\ +&\\*[-0.9em]\textforlabel{z}{Time:}&% +\ChoiceMenu[name=zeit,width=20em,popdown=true,value=u,% +bordercolor={0.65 0.79 0.94}]{}{% +unlimited=u,limited=b}\\ +&\\*[-0.9em]\textforlabel{v}{from:}&% +\TextField[name=from,width=10em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{b}{until:}&% +\TextField[name=until,width=10em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{% +\textbf{Doors}}\\ +&\\*[-0.9em]\textforlabel{th}{Front door:}&% +\CheckBox[name=ht,width=1.2em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{t1}{Ground floor:}&% +\CheckBox[name=e1,width=1.2em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{t2}{First floor:}&% +\CheckBox[name=e2,width=1.2em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\ +\hline +\end{tabular} +\end{Form} +\end{document} diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0009.tex b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0009.tex new file mode 100644 index 00000000000..8c5468ef833 --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0009.tex @@ -0,0 +1,174 @@ +\documentclass[ngerman,a4paper]{scrartcl} +\usepackage[T1]{fontenc} +\usepackage{textcomp} +\usepackage{mathptmx} +\usepackage[scaled=.92]{helvet} +\usepackage{courier} +\renewcommand*{\familydefault}{phv} +\usepackage[left=25mm,top=25mm,bottom=10mm,right=10mm]{geometry} +\usepackage{fancyhdr} +\lhead{ABC, Inc.}\chead{}\rhead{XYZ Dept.} +\lfoot{}\cfoot{}\rfoot{} +\pagestyle{fancy} +\usepackage{graphicx} +\usepackage{color} +\usepackage[ + pdftex,a4paper=true,colorlinks=true, + pdftitle={Key form},pdfsubject={Key}, + pdfauthor={ich}, + pdfpagemode=UseNone,pdfstartview=FitH, + pagebackref,pdfhighlight={/N} +]{hyperref} +\usepackage[pdftex]{insdljs} +\immediate\pdfobj { +<< + /WP << /S /JavaScript /JS (willPrint();) >> + /DP << /S /JavaScript /JS (didPrint();) >> +>> +} +\pdfcatalog{/AA \the\pdflastobj\space 0 R} +\begin{insDLJS}[exaaad]{exaaad}{Document Level JavaScript} + +// indicate that the function was not yet run +var done = 0; + +function colorsPrinting() +{ + this.getField("vorname").fillColor = color.white; + this.getField("name").fillColor = color.white; + this.getField("abt").fillColor = color.white; + this.getField("zeit").fillColor = color.white; + this.getField("from").fillColor = color.white; + this.getField("until").fillColor = color.white; + this.getField("ht").fillColor = color.white; + this.getField("e1").fillColor = color.white; + this.getField("e2").fillColor = color.white; + + this.getField("vorname").strokeColor = color.black; + this.getField("name").strokeColor = color.black; + this.getField("abt").strokeColor = color.black; + this.getField("zeit").strokeColor = color.black; + this.getField("from").strokeColor = color.black; + this.getField("until").strokeColor = color.black; + this.getField("ht").strokeColor = color.black; + this.getField("e1").strokeColor = color.black; + this.getField("e2").strokeColor = color.black; + + this.getField("vorname").textFont = font.Helv; + this.getField("name").textFont = font.Helv; + this.getField("abt").textFont = font.Helv; + this.getField("zeit").textFont = font.Helv; + this.getField("from").textFont = font.Helv; + this.getField("until").textFont = font.Helv; +} + +function colorsScreen() +{ + + var newcolor = [ "RGB", 0.65, 0.79, 0.94]; + this.getField("vorname").fillColor = newcolor; + this.getField("name").fillColor = newcolor; + this.getField("abt").fillColor = newcolor; + this.getField("zeit").fillColor = newcolor; + this.getField("from").fillColor = newcolor; + this.getField("until").fillColor = newcolor; + this.getField("ht").fillColor = newcolor; + this.getField("e1").fillColor = newcolor; + this.getField("e2").fillColor = newcolor; + + this.getField("vorname").strokeColor = newcolor; + this.getField("name").strokeColor = newcolor; + this.getField("abt").strokeColor = newcolor; + this.getField("zeit").strokeColor = newcolor; + this.getField("from").strokeColor = newcolor; + this.getField("until").strokeColor = newcolor; + this.getField("ht").strokeColor = newcolor; + this.getField("e1").strokeColor = newcolor; + this.getField("e2").strokeColor = newcolor; + + this.getField("vorname").textFont = font.HelvB; + this.getField("name").textFont = font.HelvB; + this.getField("abt").textFont = font.HelvB; + this.getField("zeit").textFont = font.HelvB; + this.getField("from").textFont = font.HelvB; + this.getField("until").textFont = font.HelvB; +} + +function willPrint() +{ + this.delay = true; + colorsPrinting(); + this.delay = false; +} + +function didPrint() +{ + this.delay = true; + colorsScreen(); + this.delay = false; +} + +// function to run when opening the document +function myFirstJavaScriptFunction() +{ + if(!done) { + done = 1; + this.delay = true; + colorsScreen(); + this.getField("abt").currentValueIndices = 0; + this.getField("zeit").currentValueIndices = 0; + this.getField("vorname").setFocus(); + this.delay = false; + } +} +\end{insDLJS} +\OpenAction{/S /JavaScript /JS (myFirstJavaScriptFunction();)} +\newcommand{\textforlabel}[2]{% +\TextField[name={#1},value={#2},width=7em,align=2,% +bordercolor={1 1 1},readonly=true]{}% +} +\begin{document} +\section*{Request for a key} +\begin{Form} +\begin{tabular}{|rl|} +\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Employee}}\\ +&\\*[-0.9em]\textforlabel{vn}{First name:}&% +\TextField[name=vorname,width=20em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{nn}{Name:}&% +\TextField[name=name,width=20em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{ab}{Department:}&% +\ChoiceMenu[name=abt,width=20em,popdown=true,value=v,% +bordercolor={0.65 0.79 0.94}]{}{% +Sales=v,Production=f,Service=s}\\ +&\\*[-0.9em]\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Time}}\\ +&\\*[-0.9em]\textforlabel{z}{Time:}&% +\ChoiceMenu[name=zeit,width=20em,popdown=true,value=u,% +bordercolor={0.65 0.79 0.94}]{}{% +unlimited=u,limited=b}\\ +&\\*[-0.9em]\textforlabel{v}{from:}&% +\TextField[name=from,width=10em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{b}{until:}&% +\TextField[name=until,width=10em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{% +\textbf{Doors}}\\ +&\\*[-0.9em]\textforlabel{th}{Front door:}&% +\CheckBox[name=ht,width=1.2em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{t1}{Ground floor:}&% +\CheckBox[name=e1,width=1.2em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{t2}{First floor:}&% +\CheckBox[name=e2,width=1.2em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\ +\hline +\end{tabular} +\end{Form} +\end{document} diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0010.tex b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0010.tex new file mode 100644 index 00000000000..f21eaf14156 --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0010.tex @@ -0,0 +1,193 @@ +\documentclass[ngerman,a4paper]{scrartcl} +\usepackage[T1]{fontenc} +\usepackage{textcomp} +\usepackage{mathptmx} +\usepackage[scaled=.92]{helvet} +\usepackage{courier} +\renewcommand*{\familydefault}{phv} +\usepackage[left=25mm,top=25mm,bottom=10mm,right=10mm]{geometry} +\usepackage{fancyhdr} +\lhead{ABC, Inc.}\chead{}\rhead{XYZ Dept.} +\lfoot{}\cfoot{}\rfoot{} +\pagestyle{fancy} +\usepackage{graphicx} +\usepackage{color} +\usepackage[ + pdftex,a4paper=true,colorlinks=true, + pdftitle={Key form},pdfsubject={Key}, + pdfauthor={ich}, + pdfpagemode=UseNone,pdfstartview=FitH, + pagebackref,pdfhighlight={/N} +]{hyperref} +\usepackage[pdftex]{insdljs} +\immediate\pdfobj { +<< + /WP << /S /JavaScript /JS (willPrint();) >> + /DP << /S /JavaScript /JS (didPrint();) >> +>> +} +\pdfcatalog{/AA \the\pdflastobj\space 0 R} +\begin{insDLJS}[exaaae]{exaaae}{Document Level JavaScript} + +// indicate that the function was not yet run +var done = 0; + +function colorsPrinting() +{ + this.getField("vorname").fillColor = color.white; + this.getField("name").fillColor = color.white; + this.getField("abt").fillColor = color.white; + this.getField("zeit").fillColor = color.white; + this.getField("from").fillColor = color.white; + this.getField("until").fillColor = color.white; + this.getField("ht").fillColor = color.white; + this.getField("e1").fillColor = color.white; + this.getField("e2").fillColor = color.white; + + this.getField("vorname").strokeColor = color.black; + this.getField("name").strokeColor = color.black; + this.getField("abt").strokeColor = color.black; + this.getField("zeit").strokeColor = color.black; + this.getField("from").strokeColor = color.black; + this.getField("until").strokeColor = color.black; + this.getField("ht").strokeColor = color.black; + this.getField("e1").strokeColor = color.black; + this.getField("e2").strokeColor = color.black; + + this.getField("vorname").textFont = font.Helv; + this.getField("name").textFont = font.Helv; + this.getField("abt").textFont = font.Helv; + this.getField("zeit").textFont = font.Helv; + this.getField("from").textFont = font.Helv; + this.getField("until").textFont = font.Helv; + this.getField("from").textColor = color.black; + this.getField("until").textColor = color.black; +} + +function colorsScreen() +{ + + var newcolor = [ "RGB", 0.65, 0.79, 0.94]; + this.getField("vorname").fillColor = newcolor; + this.getField("name").fillColor = newcolor; + this.getField("abt").fillColor = newcolor; + this.getField("zeit").fillColor = newcolor; + this.getField("from").fillColor = newcolor; + this.getField("until").fillColor = newcolor; + this.getField("ht").fillColor = newcolor; + this.getField("e1").fillColor = newcolor; + this.getField("e2").fillColor = newcolor; + + this.getField("vorname").strokeColor = newcolor; + this.getField("name").strokeColor = newcolor; + this.getField("abt").strokeColor = newcolor; + this.getField("zeit").strokeColor = newcolor; + this.getField("from").strokeColor = newcolor; + this.getField("until").strokeColor = newcolor; + this.getField("ht").strokeColor = newcolor; + this.getField("e1").strokeColor = newcolor; + this.getField("e2").strokeColor = newcolor; + + this.getField("vorname").textFont = font.HelvB; + this.getField("name").textFont = font.HelvB; + this.getField("abt").textFont = font.HelvB; + this.getField("zeit").textFont = font.HelvB; + this.getField("from").textFont = font.HelvB; + this.getField("from").textColor = color.black; + this.getField("until").textColor = color.black; + this.getField("until").textFont = font.HelvB; +} + +function validateTime() +{ + this.delay = true; + if((event.value == "u") || (event.value == "unlimited")) { + this.getField("from").display = display.hidden; + this.getField("until").display = display.hidden; + } else { + this.getField("from").display = display.visible; + this.getField("until").display = display.visible; + this.getField("from").setFocus(); + } + this.delay = false; +} + +function willPrint() +{ + this.delay = true; + colorsPrinting(); + this.delay = false; +} + +function didPrint() +{ + this.delay = true; + colorsScreen(); + this.delay = false; +} + +// function to run when opening the document +function myFirstJavaScriptFunction() +{ + if(!done) { + done = 1; + this.delay = true; + colorsScreen(); + this.getField("abt").currentValueIndices = 0; + this.getField("zeit").currentValueIndices = 0; + this.getField("vorname").setFocus(); + this.delay = false; + } +} +\end{insDLJS} +\OpenAction{/S /JavaScript /JS (myFirstJavaScriptFunction();)} +\newcommand{\textforlabel}[2]{% +\TextField[name={#1},value={#2},width=7em,align=2,% +bordercolor={1 1 1},readonly=true]{}% +} +\begin{document} +\section*{Request for a key} +\begin{Form} +\begin{tabular}{|rl|} +\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Employee}}\\ +&\\*[-0.9em]\textforlabel{vn}{First name:}&% +\TextField[name=vorname,width=20em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{nn}{Name:}&% +\TextField[name=name,width=20em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{ab}{Department:}&% +\ChoiceMenu[name=abt,width=20em,popdown=true,value=v,% +bordercolor={0.65 0.79 0.94}]{}{% +Sales=v,Production=f,Service=s}\\ +&\\*[-0.9em]\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Time}}\\ +&\\*[-0.9em]\textforlabel{z}{Time:}&% +\ChoiceMenu[name=zeit,width=20em,popdown=true,value=u,% +validate={validateTime();},% +bordercolor={0.65 0.79 0.94}]{}{% +unlimited=u,limited=b}\\ +&\\*[-0.9em]\textforlabel{v}{from:}&% +\TextField[name=from,width=10em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{b}{until:}&% +\TextField[name=until,width=10em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{% +\textbf{Doors}}\\ +&\\*[-0.9em]\textforlabel{th}{Front door:}&% +\CheckBox[name=ht,width=1.2em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{t1}{Ground floor:}&% +\CheckBox[name=e1,width=1.2em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{t2}{First floor:}&% +\CheckBox[name=e2,width=1.2em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\ +\hline +\end{tabular} +\end{Form} +\end{document} diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0011.tex b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0011.tex new file mode 100644 index 00000000000..64349d9f3d8 --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0011.tex @@ -0,0 +1,194 @@ +\documentclass[ngerman,a4paper]{scrartcl} +\usepackage[T1]{fontenc} +\usepackage{textcomp} +\usepackage{mathptmx} +\usepackage[scaled=.92]{helvet} +\usepackage{courier} +\renewcommand*{\familydefault}{phv} +\usepackage[left=25mm,top=25mm,bottom=10mm,right=10mm]{geometry} +\usepackage{fancyhdr} +\lhead{ABC, Inc.}\chead{}\rhead{XYZ Dept.} +\lfoot{}\cfoot{}\rfoot{} +\pagestyle{fancy} +\usepackage{graphicx} +\usepackage{color} +\usepackage[ + pdftex,a4paper=true,colorlinks=true, + pdftitle={Key form},pdfsubject={Key}, + pdfauthor={ich}, + pdfpagemode=UseNone,pdfstartview=FitH, + pagebackref,pdfhighlight={/N} +]{hyperref} +\usepackage[pdftex]{insdljs} +\immediate\pdfobj { +<< + /WP << /S /JavaScript /JS (willPrint();) >> + /DP << /S /JavaScript /JS (didPrint();) >> +>> +} +\pdfcatalog{/AA \the\pdflastobj\space 0 R} +\begin{insDLJS}[exaaae]{exaaae}{Document Level JavaScript} + +// indicate that the function was not yet run +var done = 0; + +function colorsPrinting() +{ + this.getField("vorname").fillColor = color.white; + this.getField("name").fillColor = color.white; + this.getField("abt").fillColor = color.white; + this.getField("zeit").fillColor = color.white; + this.getField("from").fillColor = color.white; + this.getField("until").fillColor = color.white; + this.getField("ht").fillColor = color.white; + this.getField("e1").fillColor = color.white; + this.getField("e2").fillColor = color.white; + + this.getField("vorname").strokeColor = color.black; + this.getField("name").strokeColor = color.black; + this.getField("abt").strokeColor = color.black; + this.getField("zeit").strokeColor = color.black; + this.getField("from").strokeColor = color.black; + this.getField("until").strokeColor = color.black; + this.getField("ht").strokeColor = color.black; + this.getField("e1").strokeColor = color.black; + this.getField("e2").strokeColor = color.black; + + this.getField("vorname").textFont = font.Helv; + this.getField("name").textFont = font.Helv; + this.getField("abt").textFont = font.Helv; + this.getField("zeit").textFont = font.Helv; + this.getField("from").textFont = font.Helv; + this.getField("until").textFont = font.Helv; + this.getField("from").textColor = color.black; + this.getField("until").textColor = color.black; +} + +function colorsScreen() +{ + + var newcolor = [ "RGB", 0.65, 0.79, 0.94]; + this.getField("vorname").fillColor = newcolor; + this.getField("name").fillColor = newcolor; + this.getField("abt").fillColor = newcolor; + this.getField("zeit").fillColor = newcolor; + this.getField("from").fillColor = newcolor; + this.getField("until").fillColor = newcolor; + this.getField("ht").fillColor = newcolor; + this.getField("e1").fillColor = newcolor; + this.getField("e2").fillColor = newcolor; + + this.getField("vorname").strokeColor = newcolor; + this.getField("name").strokeColor = newcolor; + this.getField("abt").strokeColor = newcolor; + this.getField("zeit").strokeColor = newcolor; + this.getField("from").strokeColor = newcolor; + this.getField("until").strokeColor = newcolor; + this.getField("ht").strokeColor = newcolor; + this.getField("e1").strokeColor = newcolor; + this.getField("e2").strokeColor = newcolor; + + this.getField("vorname").textFont = font.HelvB; + this.getField("name").textFont = font.HelvB; + this.getField("abt").textFont = font.HelvB; + this.getField("zeit").textFont = font.HelvB; + this.getField("from").textFont = font.HelvB; + this.getField("from").textColor = color.black; + this.getField("until").textColor = color.black; + this.getField("until").textFont = font.HelvB; +} + +function validateTime() +{ + this.delay = true; + if((event.value == "u") || (event.value == "unlimited")) { + this.getField("from").display = display.hidden; + this.getField("until").display = display.hidden; + } else { + this.getField("from").display = display.visible; + this.getField("until").display = display.visible; + this.getField("from").setFocus(); + } + this.delay = false; +} + +function willPrint() +{ + this.delay = true; + colorsPrinting(); + this.delay = false; +} + +function didPrint() +{ + this.delay = true; + colorsScreen(); + this.delay = false; +} + +// function to run when opening the document +function myFirstJavaScriptFunction() +{ + if(!done) { + done = 1; + this.delay = true; + colorsScreen(); + this.getField("abt").currentValueIndices = 0; + this.getField("abt").editable = true; + this.getField("zeit").currentValueIndices = 0; + this.getField("vorname").setFocus(); + this.delay = false; + } +} +\end{insDLJS} +\OpenAction{/S /JavaScript /JS (myFirstJavaScriptFunction();)} +\newcommand{\textforlabel}[2]{% +\TextField[name={#1},value={#2},width=7em,align=2,% +bordercolor={1 1 1},readonly=true]{}% +} +\begin{document} +\section*{Request for a key} +\begin{Form} +\begin{tabular}{|rl|} +\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Employee}}\\ +&\\*[-0.9em]\textforlabel{vn}{First name:}&% +\TextField[name=vorname,width=20em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{nn}{Name:}&% +\TextField[name=name,width=20em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{ab}{Department:}&% +\ChoiceMenu[name=abt,width=20em,popdown=true,combo=true,value=v,% +bordercolor={0.65 0.79 0.94}]{}{% +Sales=v,Production=f,Service=s}\\ +&\\*[-0.9em]\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Time}}\\ +&\\*[-0.9em]\textforlabel{z}{Time:}&% +\ChoiceMenu[name=zeit,width=20em,popdown=true,value=u,% +validate={validateTime();},% +bordercolor={0.65 0.79 0.94}]{}{% +unlimited=u,limited=b}\\ +&\\*[-0.9em]\textforlabel{v}{from:}&% +\TextField[name=from,width=10em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{b}{until:}&% +\TextField[name=until,width=10em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{% +\textbf{Doors}}\\ +&\\*[-0.9em]\textforlabel{th}{Front door:}&% +\CheckBox[name=ht,width=1.2em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{t1}{Ground floor:}&% +\CheckBox[name=e1,width=1.2em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{t2}{First floor:}&% +\CheckBox[name=e2,width=1.2em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\ +\hline +\end{tabular} +\end{Form} +\end{document} diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0101.tex b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0101.tex new file mode 100644 index 00000000000..4f26e5933e0 --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0101.tex @@ -0,0 +1,259 @@ +\documentclass[ngerman,a4paper]{scrartcl} +\usepackage[T1]{fontenc} +\usepackage{textcomp} +\usepackage{mathptmx} +\usepackage[scaled=.92]{helvet} +\usepackage{courier} +\renewcommand*{\familydefault}{phv} +\usepackage[left=25mm,top=25mm,bottom=10mm,right=10mm]{geometry} +\usepackage{fancyhdr} +\lhead{ABC, Inc.}\chead{}\rhead{XYZ Dept.} +\lfoot{}\cfoot{}\rfoot{} +\pagestyle{fancy} +\usepackage{graphicx} +\usepackage{color} +\usepackage[ + pdftex,a4paper=true,colorlinks=true, + pdftitle={Software installation request},pdfsubject={Software}, + pdfauthor={ich}, + pdfpagemode=UseNone,pdfstartview=FitH, + pagebackref,pdfhighlight={/N} +]{hyperref} +\usepackage[pdftex]{insdljs} +\immediate\pdfobj { +<< + /WP << /S /JavaScript /JS (willPrint();) >> + /DP << /S /JavaScript /JS (didPrint();) >> +>> +} +\pdfcatalog{/AA \the\pdflastobj\space 0 R} +\begin{insDLJS}[exaaba]{exaaba}{Document Level JavaScript} + +// indicate that the function was not yet run +var done = 0; + +function colorsPrinting() +{ + this.getField("vorname").fillColor = color.white; + this.getField("vorname").strokeColor = color.black; + this.getField("vorname").textFont = font.Helv; + this.getField("name").fillColor = color.white; + this.getField("name").strokeColor = color.black; + this.getField("name").textFont = font.Helv; + this.getField("inventory").fillColor = color.white; + this.getField("inventory").strokeColor = color.black; + this.getField("inventory").textFont = font.Helv; + this.getField("sw01").fillColor = color.white; + this.getField("sw01").strokeColor = color.black; + this.getField("sw01").textFont = font.Helv; + this.getField("sw02").fillColor = color.white; + this.getField("sw02").strokeColor = color.black; + this.getField("sw02").textFont = font.Helv; + this.getField("sw03").fillColor = color.white; + this.getField("sw03").strokeColor = color.black; + this.getField("sw03").textFont = font.Helv; + this.getField("sw04").fillColor = color.white; + this.getField("sw04").strokeColor = color.black; + this.getField("sw04").textFont = font.Helv; + this.getField("sw05").fillColor = color.white; + this.getField("sw05").strokeColor = color.black; + this.getField("sw05").textFont = font.Helv; + this.getField("sw06").fillColor = color.white; + this.getField("sw06").strokeColor = color.black; + this.getField("sw06").textFont = font.Helv; + this.getField("sw07").fillColor = color.white; + this.getField("sw07").strokeColor = color.black; + this.getField("sw07").textFont = font.Helv; + this.getField("sw08").fillColor = color.white; + this.getField("sw08").strokeColor = color.black; + this.getField("sw08").textFont = font.Helv; + this.getField("sw09").fillColor = color.white; + this.getField("sw09").strokeColor = color.black; + this.getField("sw09").textFont = font.Helv; + this.getField("sw10").fillColor = color.white; + this.getField("sw10").strokeColor = color.black; + this.getField("sw10").textFont = font.Helv; +} + +function colorsScreen() +{ + + var newcolor = [ "RGB", 0.65, 0.79, 0.94]; + this.getField("vorname").fillColor = newcolor; + this.getField("vorname").strokeColor = newcolor; + this.getField("vorname").textFont = font.HelvB; + this.getField("name").fillColor = newcolor; + this.getField("name").strokeColor = newcolor; + this.getField("name").textFont = font.HelvB; + this.getField("inventory").fillColor = newcolor; + this.getField("inventory").strokeColor = newcolor; + this.getField("inventory").textFont = font.HelvB; + this.getField("sw01").fillColor = newcolor; + this.getField("sw01").strokeColor = newcolor; + this.getField("sw01").textFont = font.HelvB; + this.getField("sw02").fillColor = newcolor; + this.getField("sw02").strokeColor = newcolor; + this.getField("sw02").textFont = font.HelvB; + this.getField("sw03").fillColor = newcolor; + this.getField("sw03").strokeColor = newcolor; + this.getField("sw03").textFont = font.HelvB; + this.getField("sw04").fillColor = newcolor; + this.getField("sw04").strokeColor = newcolor; + this.getField("sw04").textFont = font.HelvB; + this.getField("sw05").fillColor = newcolor; + this.getField("sw05").strokeColor = newcolor; + this.getField("sw05").textFont = font.HelvB; + this.getField("sw06").fillColor = newcolor; + this.getField("sw06").strokeColor = newcolor; + this.getField("sw06").textFont = font.HelvB; + this.getField("sw07").fillColor = newcolor; + this.getField("sw07").strokeColor = newcolor; + this.getField("sw07").textFont = font.HelvB; + this.getField("sw08").fillColor = newcolor; + this.getField("sw08").strokeColor = newcolor; + this.getField("sw08").textFont = font.HelvB; + this.getField("sw09").fillColor = newcolor; + this.getField("sw09").strokeColor = newcolor; + this.getField("sw09").textFont = font.HelvB; + this.getField("sw10").fillColor = newcolor; + this.getField("sw10").strokeColor = newcolor; + this.getField("sw10").textFont = font.HelvB; +} + +function willPrint() +{ + this.delay = true; + colorsPrinting(); + this.delay = false; +} + +function didPrint() +{ + this.delay = true; + colorsScreen(); + this.delay = false; +} + +var softwareAuswahl = [ + [ "", ""], + [ "Operating system", "os" ], + [ "Text processing", "tp" ], + [ "Spreadsheet calculation", "sc" ], + [ "Präsentationsprogramm", "pp" ], + [ "E-mail client", "mc" ], + [ "Web browser", "wb" ], + [ "Mathematics software", "ms" ], + [ "PDF viewer", "pv" ] +]; + +// function to run when opening the document +function myFirstJavaScriptFunction() +{ + if(!done) { + done = 1; + this.delay = true; + colorsScreen(); + this.getField("sw01").setItems(softwareAuswahl); + this.getField("sw01").currentValueIndices = 0; + this.getField("sw01").editable = true; + this.getField("sw02").setItems(softwareAuswahl); + this.getField("sw02").currentValueIndices = 0; + this.getField("sw02").editable = true; + this.getField("sw03").setItems(softwareAuswahl); + this.getField("sw03").currentValueIndices = 0; + this.getField("sw03").editable = true; + this.getField("sw04").setItems(softwareAuswahl); + this.getField("sw04").currentValueIndices = 0; + this.getField("sw04").editable = true; + this.getField("sw05").setItems(softwareAuswahl); + this.getField("sw05").currentValueIndices = 0; + this.getField("sw05").editable = true; + this.getField("sw06").setItems(softwareAuswahl); + this.getField("sw06").currentValueIndices = 0; + this.getField("sw06").editable = true; + this.getField("sw07").setItems(softwareAuswahl); + this.getField("sw07").currentValueIndices = 0; + this.getField("sw07").editable = true; + this.getField("sw08").setItems(softwareAuswahl); + this.getField("sw08").currentValueIndices = 0; + this.getField("sw08").editable = true; + this.getField("sw09").setItems(softwareAuswahl); + this.getField("sw09").currentValueIndices = 0; + this.getField("sw09").editable = true; + this.getField("sw10").setItems(softwareAuswahl); + this.getField("sw10").currentValueIndices = 0; + this.getField("sw10").editable = true; + this.getField("vorname").setFocus(); + this.delay = false; + } +} +\end{insDLJS} +\OpenAction{/S /JavaScript /JS (myFirstJavaScriptFunction();)} +\newcommand{\textforlabel}[2]{% +\TextField[name={#1},value={#2},width=9em,align=2,% +bordercolor={1 1 1},readonly=true]{}% +} +\begin{document} +\section*{Request for software licenses and installation} +\begin{Form} +\begin{tabular}{|rr|} +\hline +\multicolumn{2}{|c|}{}\\*[-0.9em] +\multicolumn{2}{|c|}{\textbf{Systems owner}}\\ +&\\*[-0.9em]\textforlabel{l01}{First name:}&\TextField[% +name=vorname,width=20em,bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{l02}{Name:}&\TextField[% +name=name,width=20em,bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\hline +\multicolumn{2}{|c|}{}\\*[-0.9em] +\multicolumn{2}{|c|}{\textbf{PC}}\\ +&\\*[-0.9em]\textforlabel{l03}{inventory number:}% +&\TextField[name=inventory,width=20em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\hline +\multicolumn{2}{|c|}{}\\*[-0.9em] +\multicolumn{2}{|c|}{\textbf{Software}}\\ +\multicolumn{2}{|c|}{}\\*[-0.9em] +\multicolumn{2}{|r|}{\ChoiceMenu[name=sw01,width=30em,% +popdown=true,combo=true,value={},% +bordercolor={0.65 0.79 0.94}]{}{}}\\ +\multicolumn{2}{|c|}{}\\*[-0.9em] +\multicolumn{2}{|r|}{\ChoiceMenu[name=sw02,width=30em,% +popdown=true,combo=true,value={},% +bordercolor={0.65 0.79 0.94}]{}{}}\\ +\multicolumn{2}{|c|}{}\\*[-0.9em] +\multicolumn{2}{|r|}{\ChoiceMenu[name=sw03,width=30em,% +popdown=true,combo=true,value={},% +bordercolor={0.65 0.79 0.94}]{}{}}\\ +\multicolumn{2}{|c|}{}\\*[-0.9em] +\multicolumn{2}{|r|}{\ChoiceMenu[name=sw04,width=30em,% +popdown=true,combo=true,value={},% +bordercolor={0.65 0.79 0.94}]{}{}}\\ +\multicolumn{2}{|c|}{}\\*[-0.9em] +\multicolumn{2}{|r|}{\ChoiceMenu[name=sw05,width=30em,% +popdown=true,combo=true,value={},% +bordercolor={0.65 0.79 0.94}]{}{}}\\ +\multicolumn{2}{|c|}{}\\*[-0.9em] +\multicolumn{2}{|r|}{\ChoiceMenu[name=sw06,width=30em,% +popdown=true,combo=true,value={},% +bordercolor={0.65 0.79 0.94}]{}{}}\\ +\multicolumn{2}{|c|}{}\\*[-0.9em] +\multicolumn{2}{|r|}{\ChoiceMenu[name=sw07,width=30em,% +popdown=true,combo=true,value={},% +bordercolor={0.65 0.79 0.94}]{}{}}\\ +\multicolumn{2}{|c|}{}\\*[-0.9em] +\multicolumn{2}{|r|}{\ChoiceMenu[name=sw08,width=30em,% +popdown=true,combo=true,value={},% +bordercolor={0.65 0.79 0.94}]{}{}}\\ +\multicolumn{2}{|c|}{}\\*[-0.9em] +\multicolumn{2}{|r|}{\ChoiceMenu[name=sw09,width=30em,% +popdown=true,combo=true,value={},% +bordercolor={0.65 0.79 0.94}]{}{}}\\ +\multicolumn{2}{|c|}{}\\*[-0.9em] +\multicolumn{2}{|r|}{\ChoiceMenu[name=sw10,width=30em,% +popdown=true,combo=true,value={},% +bordercolor={0.65 0.79 0.94}]{}{}}\\ +\multicolumn{2}{|c|}{~}\\*\hline +\end{tabular} +\end{Form} +\end{document} diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0201.tex b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0201.tex new file mode 100644 index 00000000000..7108782c55d --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0201.tex @@ -0,0 +1,107 @@ +\documentclass{scrartcl} +\setcounter{secnumdepth}{0} +\usepackage[T1]{fontenc} +\usepackage{textcomp} +\usepackage{mathptmx} +\usepackage[scaled=.92]{helvet} +\usepackage{courier} +\setlength{\paperwidth}{5.2075in} +\setlength{\paperheight}{3.75in} +\renewcommand*{\familydefault}{phv} +\usepackage[pdftex,margin=0.5in]{geometry} +\usepackage{fancyhdr} +\lhead{Big Money, Inc.}\chead{} +\rhead{Promises Dept.} +\lfoot{}\cfoot{}\rfoot{} +\pagestyle{fancy} +\usepackage{graphicx} +\usepackage{color} +\usepackage[pdftex,pdfpagelayout=SinglePage,% +pdftitle={Investment calculation},pdfsubject={Investment}% +]{hyperref} +\definecolor{background}{rgb}{0.99,0.98,0.85} +\pagecolor{background} +\setlength{\parindent}{0.0cm} +\usepackage[pdftex]{insdljs} +\begin{insDLJS}[exaaca]{exaaca}{JavaScript} +var done = 0; + +function docOpen() +{ + if(!done) { + done = 1; + var newcolor = [ "RGB", 0.99, 0.98, 0.85]; + var borcolor = [ "RGB", 0.65, 0.79, 0.94] + this.getField("l01").fillColor = newcolor; + this.getField("l01").strokeColor = newcolor; + this.getField("l02").fillColor = newcolor; + this.getField("l02").strokeColor = newcolor; + this.getField("l03").fillColor = newcolor; + this.getField("l03").strokeColor = newcolor; + this.getField("l04").fillColor = newcolor; + this.getField("l04").strokeColor = newcolor; + this.getField("zeit").currentValueIndices = 0; + this.getField("zeit").fillColor = newcolor; + this.getField("summe").fillColor = newcolor; + this.getField("zins").fillColor = newcolor; + this.getField("ergebnis").fillColor = newcolor; + } +} + +function doCalculation() +{ + var summe = 0.0 + this.getField("summe").value; + var zins = 0.0 + this.getField("zins").value; + var zeit = 0 + this.getField("zeit").value; + var i, faktor, wert; + faktor = 1.0 + 0.01 * zins; + for(i = 0; i < zeit; i++) { + summe = summe * faktor; + } + wert = Math.round(100.0 * summe); + wert = 0.01 * wert; + wert = wert.toFixed(2); + wert = wert.toString(); + this.getField("ergebnis").value = wert; +} +\end{insDLJS} +\OpenAction{/S /JavaScript /JS (docOpen();)} +\newcommand{\textforlabel}[2]{% +\TextField[name={#1},value={#2},width=9em,align=2,% +bordercolor={0.99 0.98 0.85},% +fillcolor={0.99 0.98 0.85},readonly=true]{}% +} +\begin{document} +\begin{Form} +\begin{tabular}{|rl|} +\hline +\multicolumn{2}{|c|}{}\\*[-0.8em]\multicolumn{2}{|c|}{% +\textsc{I\,n\,p\,u\,t~D\,a\,t\,a}% +}\\ +&\\*[-0.8em]\textforlabel{l01}{Investment capital:}&\TextField[% +name=summe,width=10em,bordercolor={0.65 0.79 0.94}]{}% +~\texteuro\\ +&\\*[-0.8em]\textforlabel{l02}{Zins:}&\TextField[% +name=zins,width=10em,bordercolor={0.65 0.79 0.94}]{}~\%\\ +&\\*[-0.8em]\textforlabel{l03}{Investment time:}&% +\ChoiceMenu[name=zeit,popdown=true,bordercolor={0.65 0.79 0.94}% +]{}{{1}={1},{2}={2},{3}={3},{4}={4},{5}={5},% +{6}={6},{7}={7},{8}={8},{9}={9},{10}={10}}~years\\ +&\\*[-0.8em]\hline +\multicolumn{2}{|c|}{}\\*[-0.8em] +\multicolumn{2}{|c|}{\textsc{C\,a\,l\,c\,u\,l\,a\,t\,i\,o\,n}}\\ +\multicolumn{2}{|c|}{}\\*[-0.8em] +\multicolumn{2}{|c|}{\PushButton[name=start,% +onclick={doCalculation()},bordercolor={0.65 0.79 0.94},% +fillcolor={0.5 0.5 0.5}]{Start}}\\ +\multicolumn{2}{|c|}{}\\*[-0.8em]\hline +\multicolumn{2}{|c|}{}\\*[-0.8em] +\multicolumn{2}{|c|}{\textsc{R\,e\,s\,u\,l\,t}}\\ +\multicolumn{2}{|c|}{}\\*[-0.8em]\textforlabel{l04}{% +Result:}&\TextField[name=ergebnis,width=10em,% +bordercolor={0 0 0},readonly=true]{}~\texteuro\\ +\multicolumn{2}{|c|}{}\\ +\hline +\end{tabular} +\end{Form} +\end{document} diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0202.tex b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0202.tex new file mode 100644 index 00000000000..45275430788 --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0202.tex @@ -0,0 +1,114 @@ +\documentclass{scrartcl} +\setcounter{secnumdepth}{0} +\usepackage[T1]{fontenc} +\usepackage{textcomp} +\usepackage{mathptmx} +\usepackage[scaled=.92]{helvet} +\usepackage{courier} +\setlength{\paperwidth}{5.2075in} +\setlength{\paperheight}{3.75in} +\renewcommand*{\familydefault}{phv} +\usepackage[pdftex,margin=0.5in]{geometry} +\usepackage{fancyhdr} +\lhead{Big Money, Inc.}\chead{} +\rhead{Department f\"{u}r Versprechungen} +\lfoot{}\cfoot{}\rfoot{} +\pagestyle{fancy} +\usepackage{graphicx} +\usepackage{color} +\usepackage[pdftex,pdfpagelayout=SinglePage,% +pdftitle={Anlageberechnung},pdfsubject={Formular}% +]{hyperref} +\definecolor{background}{rgb}{0.99,0.98,0.85} +\pagecolor{background} +\setlength{\parindent}{0.0cm} +\usepackage[pdftex]{insdljs} +\begin{insDLJS}[exaacb]{exaacb}{JavaScript functions} +var done = 0; + +function docOpen() +{ + if(!done) { + done = 1; + var newcolor = [ "RGB", 0.99, 0.98, 0.85]; + var borcolor = [ "RGB", 0.65, 0.79, 0.94] + this.getField("l01").fillColor = newcolor; + this.getField("l01").strokeColor = newcolor; + this.getField("l02").fillColor = newcolor; + this.getField("l02").strokeColor = newcolor; + this.getField("l03").fillColor = newcolor; + this.getField("l03").strokeColor = newcolor; + this.getField("l04").fillColor = newcolor; + this.getField("l04").strokeColor = newcolor; + this.getField("zeit").currentValueIndices = 0; + this.getField("zeit").fillColor = newcolor; + this.getField("summe").fillColor = newcolor; + this.getField("zins").fillColor = newcolor; + this.getField("ergebnis").fillColor = newcolor; + } +} + +function restrictDecimalDigits(s,n) +{ + var back = s; + return back; +} + +function doCalculation() +{ + var summe = 0.0 + this.getField("summe").value; + var zins = 0.0 + this.getField("zins").value; + var zeit = 0 + this.getField("zeit").value; + var i, faktor, wert; + faktor = 1.0 + 0.01 * zins; + for(i = 0; i < zeit; i++) { + summe = summe * faktor; + } + wert = Math.round(100.0 * summe); + wert = wert.toFixed(0); + wert = 0.01 * wert; + wert = wert.toString(); + wert = restrictDecimalDigits(wert, 2); + this.getField("ergebnis").value = wert; +} +\end{insDLJS} +\OpenAction{/S /JavaScript /JS (docOpen();)} +\newcommand{\textforlabel}[2]{% +\TextField[name={#1},value={#2},width=9em,align=2,% +bordercolor={0.99 0.98 0.85},% +fillcolor={0.99 0.98 0.85},readonly=true]{}% +} +\begin{document} +\begin{Form} +\begin{tabular}{|rl|} +\hline +\multicolumn{2}{|c|}{}\\*[-0.8em]\multicolumn{2}{|c|}{% +\textsc{E\,i\,n\,g\,a\,b\,e\,d\,a\,t\,e\,n}% +}\\ +&\\*[-0.8em]\textforlabel{l01}{Investment capital:}&\TextField[% +name=summe,width=10em,bordercolor={0.65 0.79 0.94}]{}% +~\texteuro\\ +&\\*[-0.8em]\textforlabel{l02}{Zins:}&\TextField[% +name=zins,width=10em,bordercolor={0.65 0.79 0.94}]{}~\%\\ +&\\*[-0.8em]\textforlabel{l03}{Investment time:}&% +\ChoiceMenu[name=zeit,popdown=true,bordercolor={0.65 0.79 0.94}% +]{}{{1}={1},{2}={2},{3}={3},{4}={4},{5}={5},% +{6}={6},{7}={7},{8}={8},{9}={9},{10}={10}}~Jahre\\ +&\\*[-0.8em]\hline +\multicolumn{2}{|c|}{}\\*[-0.8em] +\multicolumn{2}{|c|}{\textsc{B\,e\,r\,e\,c\,h\,n\,u\,n\,g}}\\ +\multicolumn{2}{|c|}{}\\*[-0.8em] +\multicolumn{2}{|c|}{\PushButton[name=start,% +onclick={doCalculation()},bordercolor={0.65 0.79 0.94},% +fillcolor={0.5 0.5 0.5}]{Start}}\\ +\multicolumn{2}{|c|}{}\\*[-0.8em]\hline +\multicolumn{2}{|c|}{}\\*[-0.8em] +\multicolumn{2}{|c|}{\textsc{A\,u\,s\,g\,a\,b\,e}}\\ +\multicolumn{2}{|c|}{}\\*[-0.8em]\textforlabel{l04}{% +Result:}&\TextField[name=ergebnis,width=10em,% +bordercolor={0 0 0}]{}~\texteuro\\ +\multicolumn{2}{|c|}{}\\ +\hline +\end{tabular} +\end{Form} +\end{document} diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0301.tex b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0301.tex new file mode 100644 index 00000000000..d0b26763c61 --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/ex0301.tex @@ -0,0 +1,59 @@ +\documentclass[ngerman,a4paper]{scrartcl} +\usepackage[latin1]{inputenc} +\usepackage{mathptmx} +\usepackage[scaled=.92]{helvet} +\usepackage{courier} +\usepackage[T1]{fontenc} +\usepackage{textcomp} +\renewcommand*{\familydefault}{phv} +\usepackage[left=25mm,top=25mm,bottom=10mm,right=10mm]{geometry} +\usepackage{fancyhdr} +\lhead{Test}\chead{}\rhead{inputenc and insdljs} +\lfoot{}\cfoot{}\rfoot{} +\pagestyle{fancy} +\usepackage{graphicx} +\usepackage{color} +\usepackage[ + pdftex,a4paper=true,colorlinks=true, + pdftitle={insdljs und inputenc},pdfsubject={Test}, + pdfauthor={ich}, + pdfpagemode=UseNone,pdfstartview=FitH, + pagebackref,pdfhighlight={/N} +]{hyperref} +\usepackage[pdftex]{insdljs} +\begin{insDLJS}[exaada]{exaada}{JavaScript auf Document Level} +// indicate that the function was not yet run +var done = 0; + +// text to show when file is opened +var theText = +"Test to show \u00E4\u00F6\u00FC\u00C4\u00D6\u00DC\u00DF"; + +// function to run when opening the document +function myFirstJavaScriptFunction() +{ + if(!done) { + done = 1; + app.alert(theText); + } +} +\end{insDLJS} +\OpenAction{/S /JavaScript /JS (myFirstJavaScriptFunction();)} +\newcommand{\textforlabel}[2]{% +\TextField[name={#1},value={#2},width=7em,align=2,% +bordercolor={1 1 1},readonly=true]{}% +} +\begin{document} +\section{Testing insdljs and inputenc} +This is a test whether insdljs and inputenc can be used combined. +The pop-up box should show the following german umlauts and ligatures: +\begin{itemize} +\item ä (ae) +\item ö (oe) +\item ü (ue) +\item Ä (Ae) +\item Ö (Oe) +\item Ü (Ue) +\item ß (sz) +\end{itemize} +\end{document} diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/xxx b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/xxx new file mode 100644 index 00000000000..b61d73e8716 --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/examples/xxx @@ -0,0 +1,114 @@ +\documentclass{scrartcl}
+\setcounter{secnumdepth}{0}
+\usepackage[T1]{fontenc}
+\usepackage{textcomp}
+\usepackage{mathptmx}
+\usepackage[scaled=.92]{helvet}
+\usepackage{courier}
+\setlength{\paperwidth}{5.2075in}
+\setlength{\paperheight}{3.75in}
+\renewcommand*{\familydefault}{phv}
+\usepackage[pdftex,margin=0.5in]{geometry}
+\usepackage{fancyhdr}
+\lhead{Big Money, Inc.}\chead{}
+\rhead{Department f\"{u}r Versprechungen}
+\lfoot{}\cfoot{}\rfoot{}
+\pagestyle{fancy}
+\usepackage{graphicx}
+\usepackage{color}
+\usepackage[pdftex,pdfpagelayout=SinglePage,%
+pdftitle={Anlageberechnung},pdfsubject={Formular}%
+]{hyperref}
+\definecolor{background}{rgb}{0.99,0.98,0.85}
+\pagecolor{background}
+\setlength{\parindent}{0.0cm}
+\usepackage[pdftex]{insdljs}
+\begin{insDLJS}[exaacb]{exaacb}{JavaScript functions}
+var done = 0;
+
+function docOpen()
+{
+ if(!done) {
+ done = 1;
+ var newcolor = [ "RGB", 0.99, 0.98, 0.85];
+ var borcolor = [ "RGB", 0.65, 0.79, 0.94]
+ this.getField("l01").fillColor = newcolor;
+ this.getField("l01").strokeColor = newcolor;
+ this.getField("l02").fillColor = newcolor;
+ this.getField("l02").strokeColor = newcolor;
+ this.getField("l03").fillColor = newcolor;
+ this.getField("l03").strokeColor = newcolor;
+ this.getField("l04").fillColor = newcolor;
+ this.getField("l04").strokeColor = newcolor;
+ this.getField("zeit").currentValueIndices = 0;
+ this.getField("zeit").fillColor = newcolor;
+ this.getField("summe").fillColor = newcolor;
+ this.getField("zins").fillColor = newcolor;
+ this.getField("ergebnis").fillColor = newcolor;
+ }
+}
+
+function restrictDecimalDigits(s,n)
+{
+ var back = s;
+ return back;
+}
+
+function doCalculation()
+{
+ var summe = 0.0 + this.getField("summe").value;
+ var zins = 0.0 + this.getField("zins").value;
+ var zeit = 0 + this.getField("zeit").value;
+ var i, faktor, wert;
+ faktor = 1.0 + 0.01 * zins;
+ for(i = 0; i < zeit; i++) {
+ summe = summe * faktor;
+ }
+ wert = Math.round(100.0 * summe);
+ wert = wert.toFixed(0);
+ wert = 0.01 * wert;
+ wert = wert.toString();
+ wert = restrictDecimalDigits(wert, 2);
+ this.getField("ergebnis").value = wert;
+}
+\end{insDLJS}
+\OpenAction{/S /JavaScript /JS (docOpen();)}
+\newcommand{\textforlabel}[2]{%
+\TextField[name={#1},value={#2},width=9em,align=2,%
+bordercolor={0.99 0.98 0.85},%
+fillcolor={0.99 0.98 0.85},readonly=true]{}%
+}
+\begin{document}
+\begin{Form}
+\begin{tabular}{|rl|}
+\hline
+\multicolumn{2}{|c|}{}\\*[-0.8em]\multicolumn{2}{|c|}{%
+\textsc{E\,i\,n\,g\,a\,b\,e\,d\,a\,t\,e\,n}%
+}\\
+&\\*[-0.8em]\textforlabel{l01}{Investment capital:}&\TextField[%
+name=summe,width=10em,bordercolor={0.65 0.79 0.94}]{}%
+~\texteuro\\
+&\\*[-0.8em]\textforlabel{l02}{Zins:}&\TextField[%
+name=zins,width=10em,bordercolor={0.65 0.79 0.94}]{}~\%\\
+&\\*[-0.8em]\textforlabel{l03}{Investment time:}&%
+\ChoiceMenu[name=zeit,popdown=true,bordercolor={0.65 0.79 0.94}%
+]{}{{1}={1},{2}={2},{3}={3},{4}={4},{5}={5},%
+{6}={6},{7}={7},{8}={8},{9}={9},{10}={10}}~Jahre\\
+&\\*[-0.8em]\hline
+\multicolumn{2}{|c|}{}\\*[-0.8em]
+\multicolumn{2}{|c|}{\textsc{B\,e\,r\,e\,c\,h\,n\,u\,n\,g}}\\
+\multicolumn{2}{|c|}{}\\*[-0.8em]
+\multicolumn{2}{|c|}{\PushButton[name=start,%
+onclick={doCalculation()},bordercolor={0.65 0.79 0.94},%
+fillcolor={0.5 0.5 0.5}]{Start}}\\
+\multicolumn{2}{|c|}{}\\*[-0.8em]\hline
+\multicolumn{2}{|c|}{}\\*[-0.8em]
+\multicolumn{2}{|c|}{\textsc{A\,u\,s\,g\,a\,b\,e}}\\
+\multicolumn{2}{|c|}{}\\*[-0.8em]\textforlabel{l04}{%
+Result:}&\TextField[name=ergebnis,width=10em,%
+bordercolor={0 0 0}]{}~\texteuro\\
+\multicolumn{2}{|c|}{}\\
+\hline
+\end{tabular}
+\end{Form}
+\end{document}
diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/fdl.txt b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/fdl.txt new file mode 100644 index 00000000000..d2c2e8d523d --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/fdl.txt @@ -0,0 +1,397 @@ + GNU Free Documentation License + Version 1.2, November 2002 + + + Copyright (C) 2000,2001,2002 Free Software Foundation, Inc. + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + +0. PREAMBLE + +The purpose of this License is to make a manual, textbook, or other +functional and useful document "free" in the sense of freedom: to +assure everyone the effective freedom to copy and redistribute it, +with or without modifying it, either commercially or noncommercially. +Secondarily, this License preserves for the author and publisher a way +to get credit for their work, while not being considered responsible +for modifications made by others. + +This License is a kind of "copyleft", which means that derivative +works of the document must themselves be free in the same sense. It +complements the GNU General Public License, which is a copyleft +license designed for free software. + +We have designed this License in order to use it for manuals for free +software, because free software needs free documentation: a free +program should come with manuals providing the same freedoms that the +software does. But this License is not limited to software manuals; +it can be used for any textual work, regardless of subject matter or +whether it is published as a printed book. We recommend this License +principally for works whose purpose is instruction or reference. + + +1. APPLICABILITY AND DEFINITIONS + +This License applies to any manual or other work, in any medium, that +contains a notice placed by the copyright holder saying it can be +distributed under the terms of this License. Such a notice grants a +world-wide, royalty-free license, unlimited in duration, to use that +work under the conditions stated herein. The "Document", below, +refers to any such manual or work. Any member of the public is a +licensee, and is addressed as "you". You accept the license if you +copy, modify or distribute the work in a way requiring permission +under copyright law. + +A "Modified Version" of the Document means any work containing the +Document or a portion of it, either copied verbatim, or with +modifications and/or translated into another language. + +A "Secondary Section" is a named appendix or a front-matter section of +the Document that deals exclusively with the relationship of the +publishers or authors of the Document to the Document's overall subject +(or to related matters) and contains nothing that could fall directly +within that overall subject. (Thus, if the Document is in part a +textbook of mathematics, a Secondary Section may not explain any +mathematics.) The relationship could be a matter of historical +connection with the subject or with related matters, or of legal, +commercial, philosophical, ethical or political position regarding +them. + +The "Invariant Sections" are certain Secondary Sections whose titles +are designated, as being those of Invariant Sections, in the notice +that says that the Document is released under this License. If a +section does not fit the above definition of Secondary then it is not +allowed to be designated as Invariant. The Document may contain zero +Invariant Sections. If the Document does not identify any Invariant +Sections then there are none. + +The "Cover Texts" are certain short passages of text that are listed, +as Front-Cover Texts or Back-Cover Texts, in the notice that says that +the Document is released under this License. A Front-Cover Text may +be at most 5 words, and a Back-Cover Text may be at most 25 words. + +A "Transparent" copy of the Document means a machine-readable copy, +represented in a format whose specification is available to the +general public, that is suitable for revising the document +straightforwardly with generic text editors or (for images composed of +pixels) generic paint programs or (for drawings) some widely available +drawing editor, and that is suitable for input to text formatters or +for automatic translation to a variety of formats suitable for input +to text formatters. A copy made in an otherwise Transparent file +format whose markup, or absence of markup, has been arranged to thwart +or discourage subsequent modification by readers is not Transparent. +An image format is not Transparent if used for any substantial amount +of text. A copy that is not "Transparent" is called "Opaque". + +Examples of suitable formats for Transparent copies include plain +ASCII without markup, Texinfo input format, LaTeX input format, SGML +or XML using a publicly available DTD, and standard-conforming simple +HTML, PostScript or PDF designed for human modification. Examples of +transparent image formats include PNG, XCF and JPG. Opaque formats +include proprietary formats that can be read and edited only by +proprietary word processors, SGML or XML for which the DTD and/or +processing tools are not generally available, and the +machine-generated HTML, PostScript or PDF produced by some word +processors for output purposes only. + +The "Title Page" means, for a printed book, the title page itself, +plus such following pages as are needed to hold, legibly, the material +this License requires to appear in the title page. For works in +formats which do not have any title page as such, "Title Page" means +the text near the most prominent appearance of the work's title, +preceding the beginning of the body of the text. + +A section "Entitled XYZ" means a named subunit of the Document whose +title either is precisely XYZ or contains XYZ in parentheses following +text that translates XYZ in another language. (Here XYZ stands for a +specific section name mentioned below, such as "Acknowledgements", +"Dedications", "Endorsements", or "History".) To "Preserve the Title" +of such a section when you modify the Document means that it remains a +section "Entitled XYZ" according to this definition. + +The Document may include Warranty Disclaimers next to the notice which +states that this License applies to the Document. These Warranty +Disclaimers are considered to be included by reference in this +License, but only as regards disclaiming warranties: any other +implication that these Warranty Disclaimers may have is void and has +no effect on the meaning of this License. + + +2. VERBATIM COPYING + +You may copy and distribute the Document in any medium, either +commercially or noncommercially, provided that this License, the +copyright notices, and the license notice saying this License applies +to the Document are reproduced in all copies, and that you add no other +conditions whatsoever to those of this License. You may not use +technical measures to obstruct or control the reading or further +copying of the copies you make or distribute. However, you may accept +compensation in exchange for copies. If you distribute a large enough +number of copies you must also follow the conditions in section 3. + +You may also lend copies, under the same conditions stated above, and +you may publicly display copies. + + +3. COPYING IN QUANTITY + +If you publish printed copies (or copies in media that commonly have +printed covers) of the Document, numbering more than 100, and the +Document's license notice requires Cover Texts, you must enclose the +copies in covers that carry, clearly and legibly, all these Cover +Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on +the back cover. Both covers must also clearly and legibly identify +you as the publisher of these copies. The front cover must present +the full title with all words of the title equally prominent and +visible. You may add other material on the covers in addition. +Copying with changes limited to the covers, as long as they preserve +the title of the Document and satisfy these conditions, can be treated +as verbatim copying in other respects. + +If the required texts for either cover are too voluminous to fit +legibly, you should put the first ones listed (as many as fit +reasonably) on the actual cover, and continue the rest onto adjacent +pages. + +If you publish or distribute Opaque copies of the Document numbering +more than 100, you must either include a machine-readable Transparent +copy along with each Opaque copy, or state in or with each Opaque copy +a computer-network location from which the general network-using +public has access to download using public-standard network protocols +a complete Transparent copy of the Document, free of added material. +If you use the latter option, you must take reasonably prudent steps, +when you begin distribution of Opaque copies in quantity, to ensure +that this Transparent copy will remain thus accessible at the stated +location until at least one year after the last time you distribute an +Opaque copy (directly or through your agents or retailers) of that +edition to the public. + +It is requested, but not required, that you contact the authors of the +Document well before redistributing any large number of copies, to give +them a chance to provide you with an updated version of the Document. + + +4. MODIFICATIONS + +You may copy and distribute a Modified Version of the Document under +the conditions of sections 2 and 3 above, provided that you release +the Modified Version under precisely this License, with the Modified +Version filling the role of the Document, thus licensing distribution +and modification of the Modified Version to whoever possesses a copy +of it. In addition, you must do these things in the Modified Version: + +A. Use in the Title Page (and on the covers, if any) a title distinct + from that of the Document, and from those of previous versions + (which should, if there were any, be listed in the History section + of the Document). You may use the same title as a previous version + if the original publisher of that version gives permission. +B. List on the Title Page, as authors, one or more persons or entities + responsible for authorship of the modifications in the Modified + Version, together with at least five of the principal authors of the + Document (all of its principal authors, if it has fewer than five), + unless they release you from this requirement. +C. State on the Title page the name of the publisher of the + Modified Version, as the publisher. +D. Preserve all the copyright notices of the Document. +E. Add an appropriate copyright notice for your modifications + adjacent to the other copyright notices. +F. Include, immediately after the copyright notices, a license notice + giving the public permission to use the Modified Version under the + terms of this License, in the form shown in the Addendum below. +G. Preserve in that license notice the full lists of Invariant Sections + and required Cover Texts given in the Document's license notice. +H. Include an unaltered copy of this License. +I. Preserve the section Entitled "History", Preserve its Title, and add + to it an item stating at least the title, year, new authors, and + publisher of the Modified Version as given on the Title Page. If + there is no section Entitled "History" in the Document, create one + stating the title, year, authors, and publisher of the Document as + given on its Title Page, then add an item describing the Modified + Version as stated in the previous sentence. +J. Preserve the network location, if any, given in the Document for + public access to a Transparent copy of the Document, and likewise + the network locations given in the Document for previous versions + it was based on. These may be placed in the "History" section. + You may omit a network location for a work that was published at + least four years before the Document itself, or if the original + publisher of the version it refers to gives permission. +K. For any section Entitled "Acknowledgements" or "Dedications", + Preserve the Title of the section, and preserve in the section all + the substance and tone of each of the contributor acknowledgements + and/or dedications given therein. +L. Preserve all the Invariant Sections of the Document, + unaltered in their text and in their titles. Section numbers + or the equivalent are not considered part of the section titles. +M. Delete any section Entitled "Endorsements". Such a section + may not be included in the Modified Version. +N. Do not retitle any existing section to be Entitled "Endorsements" + or to conflict in title with any Invariant Section. +O. Preserve any Warranty Disclaimers. + +If the Modified Version includes new front-matter sections or +appendices that qualify as Secondary Sections and contain no material +copied from the Document, you may at your option designate some or all +of these sections as invariant. To do this, add their titles to the +list of Invariant Sections in the Modified Version's license notice. +These titles must be distinct from any other section titles. + +You may add a section Entitled "Endorsements", provided it contains +nothing but endorsements of your Modified Version by various +parties--for example, statements of peer review or that the text has +been approved by an organization as the authoritative definition of a +standard. + +You may add a passage of up to five words as a Front-Cover Text, and a +passage of up to 25 words as a Back-Cover Text, to the end of the list +of Cover Texts in the Modified Version. Only one passage of +Front-Cover Text and one of Back-Cover Text may be added by (or +through arrangements made by) any one entity. If the Document already +includes a cover text for the same cover, previously added by you or +by arrangement made by the same entity you are acting on behalf of, +you may not add another; but you may replace the old one, on explicit +permission from the previous publisher that added the old one. + +The author(s) and publisher(s) of the Document do not by this License +give permission to use their names for publicity for or to assert or +imply endorsement of any Modified Version. + + +5. COMBINING DOCUMENTS + +You may combine the Document with other documents released under this +License, under the terms defined in section 4 above for modified +versions, provided that you include in the combination all of the +Invariant Sections of all of the original documents, unmodified, and +list them all as Invariant Sections of your combined work in its +license notice, and that you preserve all their Warranty Disclaimers. + +The combined work need only contain one copy of this License, and +multiple identical Invariant Sections may be replaced with a single +copy. If there are multiple Invariant Sections with the same name but +different contents, make the title of each such section unique by +adding at the end of it, in parentheses, the name of the original +author or publisher of that section if known, or else a unique number. +Make the same adjustment to the section titles in the list of +Invariant Sections in the license notice of the combined work. + +In the combination, you must combine any sections Entitled "History" +in the various original documents, forming one section Entitled +"History"; likewise combine any sections Entitled "Acknowledgements", +and any sections Entitled "Dedications". You must delete all sections +Entitled "Endorsements". + + +6. COLLECTIONS OF DOCUMENTS + +You may make a collection consisting of the Document and other documents +released under this License, and replace the individual copies of this +License in the various documents with a single copy that is included in +the collection, provided that you follow the rules of this License for +verbatim copying of each of the documents in all other respects. + +You may extract a single document from such a collection, and distribute +it individually under this License, provided you insert a copy of this +License into the extracted document, and follow this License in all +other respects regarding verbatim copying of that document. + + +7. AGGREGATION WITH INDEPENDENT WORKS + +A compilation of the Document or its derivatives with other separate +and independent documents or works, in or on a volume of a storage or +distribution medium, is called an "aggregate" if the copyright +resulting from the compilation is not used to limit the legal rights +of the compilation's users beyond what the individual works permit. +When the Document is included in an aggregate, this License does not +apply to the other works in the aggregate which are not themselves +derivative works of the Document. + +If the Cover Text requirement of section 3 is applicable to these +copies of the Document, then if the Document is less than one half of +the entire aggregate, the Document's Cover Texts may be placed on +covers that bracket the Document within the aggregate, or the +electronic equivalent of covers if the Document is in electronic form. +Otherwise they must appear on printed covers that bracket the whole +aggregate. + + +8. TRANSLATION + +Translation is considered a kind of modification, so you may +distribute translations of the Document under the terms of section 4. +Replacing Invariant Sections with translations requires special +permission from their copyright holders, but you may include +translations of some or all Invariant Sections in addition to the +original versions of these Invariant Sections. You may include a +translation of this License, and all the license notices in the +Document, and any Warranty Disclaimers, provided that you also include +the original English version of this License and the original versions +of those notices and disclaimers. In case of a disagreement between +the translation and the original version of this License or a notice +or disclaimer, the original version will prevail. + +If a section in the Document is Entitled "Acknowledgements", +"Dedications", or "History", the requirement (section 4) to Preserve +its Title (section 1) will typically require changing the actual +title. + + +9. TERMINATION + +You may not copy, modify, sublicense, or distribute the Document except +as expressly provided for under this License. Any other attempt to +copy, modify, sublicense or distribute the Document is void, and will +automatically terminate your rights under this License. However, +parties who have received copies, or rights, from you under this +License will not have their licenses terminated so long as such +parties remain in full compliance. + + +10. FUTURE REVISIONS OF THIS LICENSE + +The Free Software Foundation may publish new, revised versions +of the GNU Free Documentation License from time to time. Such new +versions will be similar in spirit to the present version, but may +differ in detail to address new problems or concerns. See +http://www.gnu.org/copyleft/. + +Each version of the License is given a distinguishing version number. +If the Document specifies that a particular numbered version of this +License "or any later version" applies to it, you have the option of +following the terms and conditions either of that specified version or +of any later version that has been published (not as a draft) by the +Free Software Foundation. If the Document does not specify a version +number of this License, you may choose any version ever published (not +as a draft) by the Free Software Foundation. + + +ADDENDUM: How to use this License for your documents + +To use this License in a document you have written, include a copy of +the License in the document and put the following copyright and +license notices just after the title page: + + Copyright (c) YEAR YOUR NAME. + Permission is granted to copy, distribute and/or modify this document + under the terms of the GNU Free Documentation License, Version 1.2 + or any later version published by the Free Software Foundation; + with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. + A copy of the license is included in the section entitled "GNU + Free Documentation License". + +If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts, +replace the "with...Texts." line with this: + + with the Invariant Sections being LIST THEIR TITLES, with the + Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST. + +If you have Invariant Sections without Cover Texts, or some other +combination of the three, merge those two alternatives to suit the +situation. + +If your document contains nontrivial examples of program code, we +recommend releasing these examples in parallel under your choice of +free software license, such as the GNU General Public License, +to permit their use in free software. diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/Makefile b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/Makefile new file mode 100644 index 00000000000..faacb19369d --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/Makefile @@ -0,0 +1,31 @@ +all: forms.pdf + +SOURCES= forms.tex\ + bib.bib\ + fde0001.tex\ + fde0002.tex\ + fde0003.tex\ + fde0004.tex\ + fde0005.tex\ + fde0006.tex\ + fde0007.tex\ + fde0008.tex\ + fde0009.tex\ + fde0010.tex\ + fde0011.tex\ + fde0012.tex\ + fde0013.tex\ + fde0014.tex\ + fde0015.tex\ + fde0016.tex\ + fde0017.tex\ + fde0018.tex + +forms.pdf: $(SOURCES) + pdflatex forms + bibtex forms + pdflatex forms + pdflatex forms + +clean: + -rm -fr *.bbl *.blg *.out *.djs ex00*.pdf diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/bib.bib b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/bib.bib new file mode 100644 index 00000000000..c944d944f5a --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/bib.bib @@ -0,0 +1,29 @@ +@Book{pdf:javascript, +author = "Adobe Technical Support", +title = "{A}crobat {J}ava{S}cript {O}bject {Specification} Version 5.1", +publisher = "Adobe Systems Incorporated", +year = "2003" +} +@Book{pdf:reference, +author = "{A}dobe {S}ystems {I}ncorporated", +title = "PDF {R}eference, third edition", +publisher = "Adobe Systems Incorporated", +year = "2001" +} +@Book{hyperref:manual, +author = "Sebastian Rahtz and Heiko Oberdiek", +title = "{H}ypertext marks in LaTeX: a manual for hyperref", +year = "2004" +} +@Book{pdf:scripting:guide, +author = "{A}dobe {D}eveloper {S}upport", +title = "Acrobat JavaScript Scripting Guide", +publisher = "Adobe Systems Incorporated", +year = "2005" +} +@Book{pdf:scripting:reference, +author = "{A}dobe {D}eveloper {S}upport", +title = "Acrobat JavaScript Scripting Reference", +publisher = "Adobe Systems Incorporated", +year = "2005" +} diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0001.tex b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0001.tex new file mode 100644 index 00000000000..39390ac6aa0 --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0001.tex @@ -0,0 +1,33 @@ +\subsection{Copyright} +Copyright (c) 2007 Dirk Krause\\*[0.5em] +Permission is granted to copy, distribute and/or modify this document +under the terms of the \textsc{gnu} Free Documentation License, Version 1.2 +or any later version published by the Free Software Foundation; with no +Invariant Sections, with no Front-Cover Texts, and with no Back-Cover +Texts.\\ +A copy of the license is included in the appendix in a section +named ``\textsc{gnu} Free Documentation License''. +\subsection{Purpose of this tutorial} +This tutorial shows how to create \textsc{pdf} forms using +pdf\LaTeX{}, hyperref and insdljs. The focus is set on forms +which are filled interactively on screen and printed. + +You need a \LaTeX{} distribution, pdflatex, hyperref and +insdljs must be installed. The insdljs package is a part of +the AcroTeX Education Bundle, see +\url{http://www.acrotex.net}. + +You should have the following additional documentation +available: +\begin{itemize} +\item the hyperref manual: \cite{hyperref:manual}, +\item guides, specifications and references for + Acrobat JavaScript: + \cite{pdf:javascript}, \cite{pdf:scripting:guide} + and \cite{pdf:scripting:reference} and +\item the \textsc{pdf} file format reference: \cite{pdf:reference}. + +This tutorial shows three examples, the first one is developed +step-by-step. The final versions of the forms are +``ex0011'', ``ex0101'' and ``ex0201''. +\end{itemize} diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0002.tex b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0002.tex new file mode 100644 index 00000000000..2873057b5a4 --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0002.tex @@ -0,0 +1,25 @@ +The hyperref package provides environments and macros to +create forms. The form elements must be placed in a +\texttt{Form} environment, \texttt{Form} environments are +limited to one \texttt{Form} environment per document. +The following macros can be used to create form elements: +\begin{itemize} +\item \texttt{\textbackslash{}TextField[}\textit{Parameter}\texttt{]}\texttt{\{}\textit{Text}\texttt{\}}\\ +creates a text field. +\item \texttt{\textbackslash{}CheckBox[}\textit{Parameter}\texttt{]}\texttt{\{}\textit{Text}\texttt{\}}\\ +creates a check box. +\item \texttt{\textbackslash{}ChoiceMenu[}\textit{Parameter}\texttt{]}\texttt{\{}\textit{Text}\texttt{\}\{}\textit{Auswahl-Optionen}\texttt{\}}\\ +creates a choice list. +\item \texttt{\textbackslash{}PushButton[}\textit{Parameter}\texttt{]}\texttt{\{}\textit{Text}\texttt{\}}\\ +creates a button. +\item \texttt{\textbackslash{}Submit[}\textit{Parameter}\texttt{]}\texttt{\{}\textit{Text}\texttt{\}}\\ +creates a Submit-Button. Pushing the button sends form data to +the \textsc{url} specified as action-parameter in the +\texttt{Form} environment. +\item \texttt{\textbackslash{}Reset[}\textit{Parameter}\texttt{]}\texttt{\{}\textit{Text}\texttt{\}}\\ +creates a Reset-button. +\end{itemize} +The hyperref documentation \cite{hyperref:manual} provides a more +detailed description of the \texttt{Form} environment and the +macros above. + diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0003.tex b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0003.tex new file mode 100644 index 00000000000..2688ab1914b --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0003.tex @@ -0,0 +1,58 @@ +\subsubsection{Document class} +The usual document classes -- i.\,e. scrartcl or article -- +can be used to create forms. +\subsubsection{Fonts} +The \textsc{pdf} standard requires each \textsc{pdf} viewer +to render 14 fonts even if the font is not embedded into the +\textsc{pdf} file, especially the font families +Times, Helvetica and Courier. JavaScript code can be used +to change form field fonts to these fonts. +We want to use +JavaScript to change fonts, so we load the font setup +packages using +\begin{lstlisting} +\usepackage{mathptmx} +\usepackage[scaled=.92]{helvet} +\usepackage{courier} +\end{lstlisting} +Additionally we use +\begin{lstlisting} +\usepackage[T1]{fontenc} +\end{lstlisting} +to change the font encoding from OT1 (\LaTeX{} default) to T1.\\ +The default family is switched to Helvetica using +\begin{lstlisting} +\renewcommand*{\familydefault}{\phv} +\end{lstlisting} +because sans-serif fonts are better readable on screen +than serifed fonts. +\subsubsection{Page layout} +The page margins are set up by: +\begin{lstlisting} +\usepackage[left=25mm,top=25mm,bottom=10mm,right=10mm]{geometry} +\end{lstlisting} +Page header and footer are set up by: +\begin{lstlisting} +\usepackage{fancyhdr} +\lhead{Firma ABC}\chead{}\rhead{Abteilung XYZ} +\lfoot{}\cfoot{}\rfoot{} +\pagestyle{fancy} +\end{lstlisting} +\subsubsection{Graphics and colors} +The packages +\begin{lstlisting} +\usepackage{graphicx} +\usepackage{color} +\end{lstlisting} +can be used to add graphics (i.\,e. logos) and colors. +\subsubsection{hyperref-package} +The hyperref package is used: +\begin{lstlisting} +\usepackage[ + pdftex,a4paper=true,colorlinks=true, + pdftitle={Key form}, + pdfsubject={Key}, + pdfauthor={Front of House Manager}, + pdfpagemode=UseNone,pdfstartview=FitH,pdfhighlight={/N} +]{hyperref} +\end{lstlisting} diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0004.tex b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0004.tex new file mode 100644 index 00000000000..27ba6bcba08 --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0004.tex @@ -0,0 +1,38 @@ +I recommend to set form elements colors and fonts as shown +in table~\vref{tab:gestaltung-von-formularelementen}. +\begin{longtable}{|l|c|c|c|} +\caption{Form element colors and fonts} +\label{tab:gestaltung-von-formularelementen} +\\ +\multicolumn{4}{c}{~}\\*[-0.9em] +\hline +&&&\\*[-0.9em]\multicolumn{1}{|c|}{}&\multicolumn{1}{c|}{\textbf{Border color}}&\multicolumn{1}{c|}{\textbf{Fill color}}&\multicolumn{1}{c|}{\textbf{Font weight}}\\ +\hline +\endfirsthead +\multicolumn{4}{|r|}{\textsl{Continuation}} +\endhead +\multicolumn{4}{|r|}{\textsl{to be continued}} +\endfoot +\hline +\endlastfoot +\hline +&&&\\*[-0.9em]Screen&colored&colored&bold\\ +\hline +&&&\\*[-0.9em]Printout&black&white®ular\\ +\hline +&&&\\*[-0.9em]Screen and Printout\footnote{if JavaScript is deactivated}&colored&white®ular\\ +\end{longtable} +All form elements should be marked fully colored when shown on screen +so users can find all elements easily. For readability we choose +a bold font to show text on a colored background. + +Printouts of forms are typically done on black-and-white printers. +On printout we want a black border and white filling for form elements. +The text is black on white now, so we do not need a bold font. + +JavaScript must be enabled in the \textsc{pdf} viewer to change colors +and fonts before and after printing the document. + +The color for marking form elements should be the same color for all +elements. We want to show black text on color-filled areas, so we should +use a light color for a good contrast. diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0005.tex b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0005.tex new file mode 100644 index 00000000000..65bc10cb2dc --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0005.tex @@ -0,0 +1,10 @@ +We want to design a form which can be used to request keys for new +empolyees. The following data is needed: +\begin{itemize} +\item First name and name, +\item Department, +\item Employment time (unlimited or limited from \ldots{} until \ldots{}), +\item the doors to open. +\end{itemize} +Text fields are used for first name and name. Department and employment +time are choosen from a list. The doors are selected in check boxes. diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0006.tex b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0006.tex new file mode 100644 index 00000000000..656017175d1 --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0006.tex @@ -0,0 +1,18 @@ +The ex0001.tex file shows a first attempt to create the form. +\lstinputlisting{../examples/ex0001.tex} +After running +\begin{lstlisting} +pdflatex ex0001 && pdflatex ex0001 +\end{lstlisting} +we can open ex0001.pdf in the \textsc{pdf} viewer.\\ +The form does not look good but contains the required functionality. + +The source shows: +\begin{itemize} +\item A unique name (identifier) is assigned to each form element + using the \textit{name\/} parameter. +\item The last argument of the \textit{\textbackslash{}ChoiceMenu[]\{\}\{\}} + macro is a list containing the available choices. Each list + entry contains the full text to show and an abbreviation, separated + by ``=''. +\end{itemize} diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0007.tex b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0007.tex new file mode 100644 index 00000000000..616eb37d083 --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0007.tex @@ -0,0 +1,3 @@ +We use a \textit{tabular} environment to align the form elements +in a table. +\lstinputlisting{../examples/ex0002.tex} diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0008.tex b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0008.tex new file mode 100644 index 00000000000..40e12074b55 --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0008.tex @@ -0,0 +1,14 @@ +We use +\begin{lstlisting} +&&\\*[-0.9em] +\end{lstlisting} +to add vertical space between the table lines. In the last table +line we use +\begin{lstlisting} +&&\\* +\end{lstlisting} + +In the \textit{ChoiceMenu\/} we set the ``popdown=true'' parameter +to establish popdown-behaviour.\\ +The parameter ``width=20em'' parameter sets the horizontal size. +\lstinputlisting{../examples/ex0003.tex} diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0009.tex b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0009.tex new file mode 100644 index 00000000000..0bba41b5047 --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0009.tex @@ -0,0 +1,16 @@ +The \(y\)-position of form element texts and label texts differ +because the form elements have an inner and outer border. + +We use text fields to show the labels and make the borders +invisible. So label text and form element text is at the same +\(y\)-position now. + +We create a white border for the labels +\begin{lstlisting} +bordercolor={1 1 1} +\end{lstlisting} +and set text alignment to right-aligned: +\begin{lstlisting} +align=2 +\end{lstlisting} +\lstinputlisting{../examples/ex0004.tex} diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0010.tex b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0010.tex new file mode 100644 index 00000000000..dad95179bf4 --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0010.tex @@ -0,0 +1,7 @@ +We use +\begin{lstlisting} +bordercolor={0.65 0.79 0.94} +\end{lstlisting} +to change the border color to light blue for the form +elements. +\lstinputlisting{../examples/ex0005.tex} diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0011.tex b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0011.tex new file mode 100644 index 00000000000..7c1c2749c1c --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0011.tex @@ -0,0 +1,47 @@ +The insdljs package is used to add document level JavaScript. +The package requires to specify the output driver. +\begin{lstlisting} +\usepackage[pdftex]{insdljs} +\end{lstlisting} +The JavaScript-code to add is placed in an +\textit{insDLJS\/} environment. The optional argument +and the first required argument must be \LaTeX{} identifiers +(use a string containing characters only, no numbers). +The second required argument is a comment +\begin{lstlisting} +\begin{insDLJS}[exaaaa]{exaaaa}{Document Level JavaScript} +// ... Place Java source code here ... +\end{insDLJS} +\end{lstlisting} +The identifier is used to build a file name (``exaaaa.djs'') to +temporarily store the packed JavaScript code. + +The \textit{OpenAction\{\}\/} macro specifies a function which is executed +when the document is opened. +\begin{lstlisting} +\OpenAction{/S /JavaScript /JS (myFirstJavaScriptFunction();)} +\end{lstlisting} +The JavaScript-code is enclosed in brackets. The example code +contains a function invokation. + +The function may be invoked multiple times (each time one navigates +to page 1). We use a variable as a flag indicating whether the +function is run for the first time or not. +\lstinputlisting{../examples/ex0006.tex} +A message box is shown when the document is opened. In the +german version the character \"{o} is malformed to +``\"{}o'' because the inputenc package replaces german +umlauts (and other characters) by the corresponding +\LaTeX{} code sequence. There are two ways to solve the problem: +\begin{itemize} +\item Remove the inputenc package and convert german umlauts to their +\LaTeX{} code sequence manually (shown in the listing below at the end of this +section) or +\item use JavaScript-Unicode notation for umlauts in JavaScript instead +of typing the umlauts directly (shown in section~\vref{sec:fde0020}). +\end{itemize} +\begin{lstlisting} +\usepackage[latin1]{inputenc} +\end{lstlisting} +from our source. +\lstinputlisting{../examples/ex0007.tex} diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0012.tex b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0012.tex new file mode 100644 index 00000000000..8cd70d6ebd1 --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0012.tex @@ -0,0 +1,59 @@ +To process document events we have to add an /AA entry to the +\textsc{pdf} catalogue. The entry value must be a dictionary +defining event handlers. Entries in this dictionary +are key/value pairs, the value is again a dictionary +specifying the action to take.\\ +The following keys can occur:\\[0.5em] +\begin{tabular}{|r|l|} +\hline +&\\*[-0.9em]\multicolumn{1}{|c|}{\textbf{Key}}&\multicolumn{1}{c|}{\textbf{Event}}\\ +\hline +&\\*[-0.9em]/WP&The document will be printed.\\ +\hline +&\\*[-0.9em]/DP&The document was printed.\\ +\hline +&\\*[-0.9em]/WS&The document will be saved.\\ +\hline +&\\*[-0.9em]/DS&The document was saved.\\ +\hline +&\\*[-0.9em]/DC&The document will be closed.\\ +\hline +\end{tabular}\\[0.5em] +In the example we run \textit{willPrint();\/} for the WillPrint event +and \textit{didPrint();\/} for the DidPrint event. +\begin{lstlisting} +\immediate\pdfobj{ +<< + /WP << /S /JavaScript /JS (willPrint();) >> + /DP << /S /JavaScript /JS (didPrint();) >> +>> +} +\pdfcatalog{/AA \the\pdflastobj\space 0 R} +\end{lstlisting} +Before and after printing ex0008.pdf a message box is shown. +\lstinputlisting{../examples/ex0008.tex} +In ex0009.pdf we change stroke and fill colors and text fonts before +and after printing. +We have to change the +\textit{fillColor\/}, \textit{strokeColor\/} +and \textit{textFont\/} attributes.\\ +The changes are enclosed in +\begin{lstlisting} + this.delay = true + // ... + this.delay = false +\end{lstlisting} +to avoid multiple screen refreshes after each change. + +In \textit{myFirstJavaScriptFunction()\/} we set defaults for the +choice lists +\textit{abt\/} and \textit{zeit\/} using: +\begin{lstlisting} +this.getField("abt").currentValueIndices = 0; +this.getField("zeit").currentValueIndices = 0; +\end{lstlisting} +We set the focus to the \textit{vorname\/} field by: +\begin{lstlisting} +this.getField("vorname").setFocus(); +\end{lstlisting} +\lstinputlisting{../examples/ex0009.tex} diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0013.tex b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0013.tex new file mode 100644 index 00000000000..1476634e4f3 --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0013.tex @@ -0,0 +1,19 @@ +Events can be triggered by form elements, in the example +we assign the function \textit{validateTime()\/} as an event +handler for the Validate event of the +\textit{zeit} choice list. +\begin{lstlisting} +validate={validateTime();} +\end{lstlisting} +If the user leaves the choice field the function is invoked +and turns the ``from'' and ``until'' text fields visible +\begin{lstlisting} +this.getField("von").display = display.visible; +this.getField("bis").display = display.visible; +\end{lstlisting} +or invisible. +\begin{lstlisting} +this.getField("von").display = display.hidden; +this.getField("bis").display = display.hidden; +\end{lstlisting} +\lstinputlisting{../examples/ex0010.tex} diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0014.tex b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0014.tex new file mode 100644 index 00000000000..6e63ccf630c --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0014.tex @@ -0,0 +1,13 @@ +In the choice list \textit{abt\/} we want to either choose an entry +from the list or add text.\\ +The parameter +\begin{lstlisting} +combo=true +\end{lstlisting} +activates combo box hehaviour.\\ +Additionally we add a JavaScript code line +\begin{lstlisting} +this.getField("abt").editable = true; +\end{lstlisting} +into our initialization function \textit{myFirstJavaScriptFunction()\/}. +\lstinputlisting{../examples/ex0011.tex} diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0015.tex b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0015.tex new file mode 100644 index 00000000000..2a5fd478fc6 --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0015.tex @@ -0,0 +1,8 @@ +We want to create a form to require software licenses and installation. + +Information about the PC and the owner are entered in text fields. +The software is choosen from choice lists. We have several lists +providing the same choices. The choice lists are combo boxes +so users can manually type in names of special software applications +if necessary. + diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0016.tex b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0016.tex new file mode 100644 index 00000000000..03b55135859 --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0016.tex @@ -0,0 +1,27 @@ +The choice lists can be initialized using JavaScript instead +of writing the choices in the \textit{\textbackslash{}ChoiceMenu[]\{\}\{\}} +macro.\\ +This provides a better overview. + +Choices are specified in an array. Each array element is an array again, +consisting of two entries: the full text shown on screen and an +abbreviation: +\begin{lstlisting} +var softwareAuswahl = [ + [ "", ""], + [ "Betriebssystem", "os" ], + [ "Textverarbeitung", "tp" ], + [ "Tabellenkalkulation", "sc" ], + [ "Präsentationsprogramm", "pp" ], + [ "E-Mail-Client", "mc" ], + [ "Web browser", "wb" ], + [ "Mathematik-Software", "ms" ], + [ "PDF-Anzeigeprogramm", "pv" ] +]; +\end{lstlisting} +The \textit{setItems()\/} method sets the choices for +a choice list: +\begin{lstlisting} +this.getField("sw01").setItems(softwareAuswahl); +\end{lstlisting} +\lstinputlisting{../examples/ex0101.tex} diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0017.tex b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0017.tex new file mode 100644 index 00000000000..5c51941382a --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0017.tex @@ -0,0 +1,5 @@ +The third form is an interactive application, a click on a button +starts an investment calculation. The user can provide an +investment amount in \texteuro{}, an investment time in years and +the annual rate in percent. A click on the start button +calculates the investment result. diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0018.tex b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0018.tex new file mode 100644 index 00000000000..4ed4ae6580a --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0018.tex @@ -0,0 +1,17 @@ +This form is not intended to be printed, so we can use a non-white +background. The paper size is set to +\(5.2057\,\textrm{inches}\,\times\,3.75\,\textrm{inches}\) + +The arcument +\begin{lstlisting} +onclick={doCalculation()} +\end{lstlisting} +to the ``Start'' button specifies the function to invoke when +the button is pressed.\\ +\emph{Note:\/} The function is specified without semicolon here. + +The \textit{doCalculation()\/} function retrieves the input +values and runs the calculation. +The result is rounded to cents and printed in a text field. + +\lstinputlisting{../examples/ex0201.tex} diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0019.tex b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0019.tex new file mode 100644 index 00000000000..0c4ed21f953 --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0019.tex @@ -0,0 +1,35 @@ +\begin{itemize} +\item Version 0.9.4 (2007-06-20)\\* +contains a new section how to use the insdljs and inputenc +packages together. German umlauts must not be written directly to strings +in JavaScript code, the corresponding JavaScript Unicode notations must +be used instead. +\item Version 0.9.3 (2007-06-15)\\* +contains corrected options for the hyperref package. +\begin{lstlisting} +pdfpagemode=None +\end{lstlisting} +was replaced by +\begin{lstlisting} +pdfpagemode=UseNone +\end{lstlisting} +\item Version 0.9.2 (2007-06-14)\\ +uses other fonts than previous versions. The document preamble was derived +from another document containing mathematics. As this document does not +contain mathematics we do no need the packages related to mathematics. +\item Version 0.9.1 (2007-06-13)\\ +contains corrections in the ``Fonts'' section.\\ +\begin{lstlisting} +\usepackage[T1]{fontenc} +\end{lstlisting} +does not set up \LaTeX{} to use type-1 fonts (as stated in version 0.9.0).\\ +Instead it changes the preferred font encoding vector to T1 instead of OT1 +if type-1 fonts are used. +\item Version 0.9.0\\ +is the first version published on \textsc{ctan}.\\ +I'm not a native english speaker, so the english tutorial and examples +may need corrections in style, spelling and grammar.\\ +Please feel free to contact me using the web form +\url{http://www.fh-schmalkalden.de/url.php?/page/1026/select_wert/3023} +if you have suggestions. +\end{itemize} diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0020.tex b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0020.tex new file mode 100644 index 00000000000..981bc767518 --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fde0020.tex @@ -0,0 +1,45 @@ +\label{sec:fde0020} +The inputenc package replaces some characters -- i.\,e. german umlauts -- +by \LaTeX{} code sequences. This is a good idea for ``normal'' text but not +for JavaScript code. + +To avoid the conversion in JavaScript code the characters must not be added +directly to strings, add the corresponding JavaScript-Unicode notation +instead. + +Table~\vref{tab:umlauts} contains some example Unicode notations for german +umlauts and ligatures. +\begin{longtable}{|r|l|}\caption{JavaScript-Unicode notation for german umlauts}\label{tab:umlauts}\\ +\hline +&\\*[-0.9em]\multicolumn{1}{|c|}{\textbf{umlaut/ligature}}&\multicolumn{1}{c|}{\textbf{JavaScript-Unicode notation}}\\ +\hline +\endfirsthead +\hline +&\\*[-0.9em]\multicolumn{2}{|r|}{\textsl{Continuation}}\\ +\hline +\endhead +&\\*[-0.9em]\multicolumn{2}{|r|}{\textsl{to be continued}}\\ +\hline +\endfoot +\hline +\endlastfoot +\hline +&\\*[-0.9em]ä&\textbackslash{}u00E4\\ +\hline +&\\*[-0.9em]ö&\textbackslash{}u00F6\\ +\hline +&\\*[-0.9em]ü&\textbackslash{}u00FC\\ +\hline +&\\*[-0.9em]A&\textbackslash{}u00C4\\ +\hline +&\\*[-0.9em]Ö&\textbackslash{}u00D6\\ +\hline +&\\*[-0.9em]Ü&\textbackslash{}u00DC\\ +\hline +&\\*[-0.9em]ß&\textbackslash{}u00DF\\ +\end{longtable} +\clearpage +Here is an example how to use the Unicode notation +(see variable \textit{theText\/}): +\lstinputlisting{../examples/ex0301.tex} +\clearpage diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fdl.tex b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fdl.tex new file mode 100644 index 00000000000..b5e3b87e68e --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/fdl.tex @@ -0,0 +1,421 @@ +% This file is a section. It must be included in a larger document to work +% properly. +\section{GNU Free Documentation License}\label{sec:fdl} + +Version 1.2, November 2002\\ + + + Copyright \copyright\ 2000,2001,2002 Free Software Foundation, Inc.\\ + 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA\\ + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + +\subsection*{PREAMBLE} + +The purpose of this License is to make a manual, textbook, or other +functional and useful document ``free'' in the sense of freedom: to +assure everyone the effective freedom to copy and redistribute it, +with or without modifying it, either commercially or noncommercially. +Secondarily, this License preserves for the author and publisher a way +to get credit for their work, while not being considered responsible +for modifications made by others. + +This License is a kind of ``copyleft'', which means that derivative +works of the document must themselves be free in the same sense. It +complements the GNU General Public License, which is a copyleft +license designed for free software. + +We have designed this License in order to use it for manuals for free +software, because free software needs free documentation: a free +program should come with manuals providing the same freedoms that the +software does. But this License is not limited to software manuals; +it can be used for any textual work, regardless of subject matter or +whether it is published as a printed book. We recommend this License +principally for works whose purpose is instruction or reference. + + +\subsection{APPLICABILITY AND DEFINITIONS} +\label{applicability} + +This License applies to any manual or other work, in any medium, that +contains a notice placed by the copyright holder saying it can be +distributed under the terms of this License. Such a notice grants a +world-wide, royalty-free license, unlimited in duration, to use that +work under the conditions stated herein. The ``Document'', below, +refers to any such manual or work. Any member of the public is a +licensee, and is addressed as ``you''. You accept the license if you +copy, modify or distribute the work in a way requiring permission +under copyright law. + +A ``Modified Version'' of the Document means any work containing the +Document or a portion of it, either copied verbatim, or with +modifications and/or translated into another language. + +A ``Secondary Section'' is a named appendix or a front-matter section of +the Document that deals exclusively with the relationship of the +publishers or authors of the Document to the Document's overall subject +(or to related matters) and contains nothing that could fall directly +within that overall subject. (Thus, if the Document is in part a +textbook of mathematics, a Secondary Section may not explain any +mathematics.) The relationship could be a matter of historical +connection with the subject or with related matters, or of legal, +commercial, philosophical, ethical or political position regarding +them. + +The ``Invariant Sections'' are certain Secondary Sections whose titles +are designated, as being those of Invariant Sections, in the notice +that says that the Document is released under this License. If a +section does not fit the above definition of Secondary then it is not +allowed to be designated as Invariant. The Document may contain zero +Invariant Sections. If the Document does not identify any Invariant +Sections then there are none. + +The ``Cover Texts'' are certain short passages of text that are listed, +as Front-Cover Texts or Back-Cover Texts, in the notice that says that +the Document is released under this License. A Front-Cover Text may +be at most 5 words, and a Back-Cover Text may be at most 25 words. + +A ``Transparent'' copy of the Document means a machine-readable copy, +represented in a format whose specification is available to the +general public, that is suitable for revising the document +straightforwardly with generic text editors or (for images composed of +pixels) generic paint programs or (for drawings) some widely available +drawing editor, and that is suitable for input to text formatters or +for automatic translation to a variety of formats suitable for input +to text formatters. A copy made in an otherwise Transparent file +format whose markup, or absence of markup, has been arranged to thwart +or discourage subsequent modification by readers is not Transparent. +An image format is not Transparent if used for any substantial amount +of text. A copy that is not ``Transparent'' is called ``Opaque''. + +Examples of suitable formats for Transparent copies include plain +ASCII without markup, Texinfo input format, \LaTeX\ input format, SGML +or XML using a publicly available DTD, and standard-conforming simple +HTML, PostScript or PDF designed for human modification. Examples of +transparent image formats include PNG, XCF and JPG. Opaque formats +include proprietary formats that can be read and edited only by +proprietary word processors, SGML or XML for which the DTD and/or +processing tools are not generally available, and the +machine-generated HTML, PostScript or PDF produced by some word +processors for output purposes only. + +The ``Title Page'' means, for a printed book, the title page itself, +plus such following pages as are needed to hold, legibly, the material +this License requires to appear in the title page. For works in +formats which do not have any title page as such, ``Title Page'' means +the text near the most prominent appearance of the work's title, +preceding the beginning of the body of the text. + +A section ``Entitled XYZ'' means a named subunit of the Document whose +title either is precisely XYZ or contains XYZ in parentheses following +text that translates XYZ in another language. (Here XYZ stands for a +specific section name mentioned below, such as ``Acknowledgements'', +``Dedications'', ``Endorsements'', or ``History''.) To ``Preserve the Title'' +of such a section when you modify the Document means that it remains a +section ``Entitled XYZ'' according to this definition. + +The Document may include Warranty Disclaimers next to the notice which +states that this License applies to the Document. These Warranty +Disclaimers are considered to be included by reference in this +License, but only as regards disclaiming warranties: any other +implication that these Warranty Disclaimers may have is void and has +no effect on the meaning of this License. + + +\subsection{VERBATIM COPYING} +\label{verbatim} + +You may copy and distribute the Document in any medium, either +commercially or noncommercially, provided that this License, the +copyright notices, and the license notice saying this License applies +to the Document are reproduced in all copies, and that you add no other +conditions whatsoever to those of this License. You may not use +technical measures to obstruct or control the reading or further +copying of the copies you make or distribute. However, you may accept +compensation in exchange for copies. If you distribute a large enough +number of copies you must also follow the conditions in +section~\ref{copying}. + +You may also lend copies, under the same conditions stated above, and +you may publicly display copies. + + +\subsection{COPYING IN QUANTITY} +\label{copying} + +If you publish printed copies (or copies in media that commonly have +printed covers) of the Document, numbering more than 100, and the +Document's license notice requires Cover Texts, you must enclose the +copies in covers that carry, clearly and legibly, all these Cover +Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on +the back cover. Both covers must also clearly and legibly identify +you as the publisher of these copies. The front cover must present +the full title with all words of the title equally prominent and +visible. You may add other material on the covers in addition. +Copying with changes limited to the covers, as long as they preserve +the title of the Document and satisfy these conditions, can be treated +as verbatim copying in other respects. + +If the required texts for either cover are too voluminous to fit +legibly, you should put the first ones listed (as many as fit +reasonably) on the actual cover, and continue the rest onto adjacent +pages. + +If you publish or distribute Opaque copies of the Document numbering +more than 100, you must either include a machine-readable Transparent +copy along with each Opaque copy, or state in or with each Opaque copy +a computer-network location from which the general network-using +public has access to download using public-standard network protocols +a complete Transparent copy of the Document, free of added material. +If you use the latter option, you must take reasonably prudent steps, +when you begin distribution of Opaque copies in quantity, to ensure +that this Transparent copy will remain thus accessible at the stated +location until at least one year after the last time you distribute an +Opaque copy (directly or through your agents or retailers) of that +edition to the public. + +It is requested, but not required, that you contact the authors of the +Document well before redistributing any large number of copies, to give +them a chance to provide you with an updated version of the Document. + + +\subsection{MODIFICATIONS} +\label{modifications} + +You may copy and distribute a Modified Version of the Document under +the conditions of sections~\ref{verbatim} and \ref{copying} above, +provided that you release +the Modified Version under precisely this License, with the Modified +Version filling the role of the Document, thus licensing distribution +and modification of the Modified Version to whoever possesses a copy +of it. In addition, you must do these things in the Modified Version: + +\renewcommand{\labelenumi}{\Alph{enumi}.} +\begin{enumerate} +\item Use in the Title Page (and on the covers, if any) a title distinct + from that of the Document, and from those of previous versions + (which should, if there were any, be listed in the History section + of the Document). You may use the same title as a previous version + if the original publisher of that version gives permission. +\item List on the Title Page, as authors, one or more persons or entities + responsible for authorship of the modifications in the Modified + Version, together with at least five of the principal authors of the + Document (all of its principal authors, if it has fewer than five), + unless they release you from this requirement. +\item State on the Title page the name of the publisher of the + Modified Version, as the publisher. +\item Preserve all the copyright notices of the Document. +\item Add an appropriate copyright notice for your modifications + adjacent to the other copyright notices. +\item Include, immediately after the copyright notices, a license notice + giving the public permission to use the Modified Version under the + terms of this License, in the form shown in the Addendum below. +\item Preserve in that license notice the full lists of Invariant Sections + and required Cover Texts given in the Document's license notice. +\item Include an unaltered copy of this License. +\item Preserve the section Entitled ``History'', Preserve its Title, and add + to it an item stating at least the title, year, new authors, and + publisher of the Modified Version as given on the Title Page. If + there is no section Entitled ``History'' in the Document, create one + stating the title, year, authors, and publisher of the Document as + given on its Title Page, then add an item describing the Modified + Version as stated in the previous sentence. +\item Preserve the network location, if any, given in the Document for + public access to a Transparent copy of the Document, and likewise + the network locations given in the Document for previous versions + it was based on. These may be placed in the ``History'' section. + You may omit a network location for a work that was published at + least four years before the Document itself, or if the original + publisher of the version it refers to gives permission. +\item For any section Entitled ``Acknowledgements'' or ``Dedications'', + Preserve the Title of the section, and preserve in the section all + the substance and tone of each of the contributor acknowledgements + and/or dedications given therein. +\item Preserve all the Invariant Sections of the Document, + unaltered in their text and in their titles. Section numbers + or the equivalent are not considered part of the section titles. +\item Delete any section Entitled ``Endorsements''. Such a section + may not be included in the Modified Version. +\item Do not retitle any existing section to be Entitled ``Endorsements'' + or to conflict in title with any Invariant Section. +\item Preserve any Warranty Disclaimers. + +\end{enumerate} + +If the Modified Version includes new front-matter sections or +appendices that qualify as Secondary Sections and contain no material +copied from the Document, you may at your option designate some or all +of these sections as invariant. To do this, add their titles to the +list of Invariant Sections in the Modified Version's license notice. +These titles must be distinct from any other section titles. + +You may add a section Entitled ``Endorsements'', provided it contains +nothing but endorsements of your Modified Version by various +parties--for example, statements of peer review or that the text has +been approved by an organization as the authoritative definition of a +standard. + +You may add a passage of up to five words as a Front-Cover Text, and a +passage of up to 25 words as a Back-Cover Text, to the end of the list +of Cover Texts in the Modified Version. Only one passage of +Front-Cover Text and one of Back-Cover Text may be added by (or +through arrangements made by) any one entity. If the Document already +includes a cover text for the same cover, previously added by you or +by arrangement made by the same entity you are acting on behalf of, +you may not add another; but you may replace the old one, on explicit +permission from the previous publisher that added the old one. + +The author(s) and publisher(s) of the Document do not by this License +give permission to use their names for publicity for or to assert or +imply endorsement of any Modified Version. + + +\subsection{COMBINING DOCUMENTS} +\label{combining} + +You may combine the Document with other documents released under this +License, under the terms defined in section~\ref{modifications} +above for modified +versions, provided that you include in the combination all of the +Invariant Sections of all of the original documents, unmodified, and +list them all as Invariant Sections of your combined work in its +license notice, and that you preserve all their Warranty Disclaimers. + +The combined work need only contain one copy of this License, and +multiple identical Invariant Sections may be replaced with a single +copy. If there are multiple Invariant Sections with the same name but +different contents, make the title of each such section unique by +adding at the end of it, in parentheses, the name of the original +author or publisher of that section if known, or else a unique number. +Make the same adjustment to the section titles in the list of +Invariant Sections in the license notice of the combined work. + +In the combination, you must combine any sections Entitled ``History'' +in the various original documents, forming one section Entitled +``History''; likewise combine any sections Entitled ``Acknowledgements'', +and any sections Entitled ``Dedications''. You must delete all sections +Entitled ``Endorsements''. + + +\subsection{COLLECTIONS OF DOCUMENTS} +\label{collections} + +You may make a collection consisting of the Document and other documents +released under this License, and replace the individual copies of this +License in the various documents with a single copy that is included in +the collection, provided that you follow the rules of this License for +verbatim copying of each of the documents in all other respects. + +You may extract a single document from such a collection, and distribute +it individually under this License, provided you insert a copy of this +License into the extracted document, and follow this License in all +other respects regarding verbatim copying of that document. + + +\subsection{AGGREGATION WITH INDEPENDENT WORKS} +\label{aggregation} + +A compilation of the Document or its derivatives with other separate +and independent documents or works, in or on a volume of a storage or +distribution medium, is called an ``aggregate'' if the copyright +resulting from the compilation is not used to limit the legal rights +of the compilation's users beyond what the individual works permit. +When the Document is included in an aggregate, this License does not +apply to the other works in the aggregate which are not themselves +derivative works of the Document. + +If the Cover Text requirement of section~\ref{copying} is applicable to +these copies of the Document, then if the Document is less than one half +of the entire aggregate, the Document's Cover Texts may be placed on +covers that bracket the Document within the aggregate, or the +electronic equivalent of covers if the Document is in electronic form. +Otherwise they must appear on printed covers that bracket the whole +aggregate. + + +\subsection{TRANSLATION} +\label{translation} + +Translation is considered a kind of modification, so you may +distribute translations of the Document under the terms of +section~\ref{modifications}. +Replacing Invariant Sections with translations requires special +permission from their copyright holders, but you may include +translations of some or all Invariant Sections in addition to the +original versions of these Invariant Sections. You may include a +translation of this License, and all the license notices in the +Document, and any Warranty Disclaimers, provided that you also include +the original English version of this License and the original versions +of those notices and disclaimers. In case of a disagreement between +the translation and the original version of this License or a notice +or disclaimer, the original version will prevail. + +If a section in the Document is Entitled ``Acknowledgements'', +``Dedications'', or ``History'', the requirement +(section~\ref{modifications}) to Preserve +its Title (section~\ref{applicability}) will typically require +changing the actual title. + + +\subsection{TERMINATION} +\label{termination} + +You may not copy, modify, sublicense, or distribute the Document except +as expressly provided for under this License. Any other attempt to +copy, modify, sublicense or distribute the Document is void, and will +automatically terminate your rights under this License. However, +parties who have received copies, or rights, from you under this +License will not have their licenses terminated so long as such +parties remain in full compliance. + + +\subsection{FUTURE REVISIONS OF THIS LICENSE} +\label{future} + +The Free Software Foundation may publish new, revised versions +of the GNU Free Documentation License from time to time. Such new +versions will be similar in spirit to the present version, but may +differ in detail to address new problems or concerns. See +http://www.gnu.org/copyleft/. + +Each version of the License is given a distinguishing version number. +If the Document specifies that a particular numbered version of this +License ``or any later version'' applies to it, you have the option of +following the terms and conditions either of that specified version or +of any later version that has been published (not as a draft) by the +Free Software Foundation. If the Document does not specify a version +number of this License, you may choose any version ever published (not +as a draft) by the Free Software Foundation. + + +\subsection*{ADDENDUM: How to use this License for your documents} + +To use this License in a document you have written, include a copy of +the License in the document and put the following copyright and +license notices just after the title page: + +\begin{quote} + Copyright \copyright\ YEAR YOUR NAME. + Permission is granted to copy, distribute and/or modify this document + under the terms of the GNU Free Documentation License, Version 1.2 + or any later version published by the Free Software Foundation; + with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. + A copy of the license is included in the section entitled ``GNU + Free Documentation License''. +\end{quote} + +If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts, +replace the ``with...Texts.'' line with this: + + with the Invariant Sections being LIST THEIR TITLES, with the + Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST. + +If you have Invariant Sections without Cover Texts, or some other +combination of the three, merge those two alternatives to suit the +situation. + +If your document contains nontrivial examples of program code, we +recommend releasing these examples in parallel under your choice of +free software license, such as the GNU General Public License, +to permit their use in free software. diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/forms.tex b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/forms.tex new file mode 100644 index 00000000000..f550839f542 --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms-src/forms.tex @@ -0,0 +1,98 @@ +\documentclass[12pt,a4paper,origlongtable]{scrartcl} +\usepackage{ifpdf} +\usepackage[latin1]{inputenc} +\usepackage{mathptmx} +\usepackage[scaled=.92]{helvet} +\usepackage{courier} +\usepackage[T1]{fontenc} +\usepackage{textcomp} +% \usepackage[intlimits]{amsmath} +% \usepackage{amsfonts,amssymb,amscd} +% \usepackage{trfsigns} +\usepackage{array} +\usepackage{enumerate} +\usepackage{longtable} +\usepackage{latexsym} +\usepackage{listings} +\lstset{numbers=left, numberstyle=\tiny, numbersep=5pt} +\usepackage{varioref} +\usepackage{makeidx} +\usepackage{color} +\ifpdf +\usepackage[activate=normal]{pdfcprot} +% \usepackage{microtype} +\usepackage[pdftex]{graphicx} +\usepackage{epstopdf} +\pdfcompresslevel=9 +\usepackage[ + pdftex, + a4paper=true, + pdftitle={PDF-Formulare mit pdflatex, hyperref und insdljs}, + pdfsubject={PDF-Formulare}, + pdfauthor={Dirk Krause}, + colorlinks=true, + bookmarks, + bookmarksnumbered, + linkcolor=black, + pdfpagemode=UseNone, + pdfstartview=FitH +]{hyperref} +\usepackage{attachfile} +\else +\usepackage[dvips]{graphicx} +\DeclareGraphicsRule{.png}{eps}{.bb}{`bmeps #1} +\usepackage[dvips]{hyperref} +\usepackage{attachfile} +\fi +% \definecolor{red}{rgb}{1,0,0} + +\def\theyear{2007} + +% \parindent0cm +\newcommand{\pdflatex}[0]{pdf\/latex} +\author{Dirk~Krause} +\title{PDF-form creation using \pdflatex{}, hyperref and insdljs} +\include{cover} +\renewcommand*{\sectfont}{\bfseries} +\makeindex +\hyphenation{ +Ja-va-Script +} + +\begin{document} +\begin{sloppy} +\maketitle\clearpage +\tableofcontents\clearpage +\section{Introduction}\input{fde0001}\clearpage +\section{hyperref and PDF forms}\input{fde0002}\clearpage +\section{Before we start} +\subsection{Document preamble}\input{fde0003}\clearpage +\subsection{Form element attributes}\input{fde0004}\clearpage +\section{The first form} +\subsection{Goal}\input{fde0005} +\subsection{First attempt: ex0001}\input{fde0006}\clearpage +\subsection{Aligning elements in a table: ex0002}\input{fde0007}\clearpage +\subsection{Spaces and element widths: ex0003}\input{fde0008}\clearpage +\subsection{Label text position: ex0004}\input{fde0009}\clearpage +\subsection{Colors: ex0005}\input{fde0010}\clearpage +\subsection{JavaScript: ex0006}\input{fde0011}\clearpage +\subsection{Document events: ex0008 and ex0009}\input{fde0012}\clearpage +\subsection{Form element events: ex0010}\input{fde0013}\clearpage +\subsection{Editable choice list: ex0011}\input{fde0014}\clearpage +\section{Another form} +\subsection{Goal}\input{fde0015} +\subsection{Initializing a choice list using JavaScript: ex0101}\input{fde0016}\clearpage +\section{Form number three: Interactive application} +\subsection{Goal}\input{fde0017} +\subsection{Processing button click events: ex0201}\input{fde0018}\clearpage +\section{Form number four: using both insdljs and inputenc}\input{fde0020} +\appendix +\section{History}\input{fde0019}\clearpage +\input{fdl.tex}\clearpage +\bibliographystyle{alpha} +\bibliography{bib} +\clearpage +\printindex +\end{sloppy} +\end{document} + diff --git a/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms.pdf b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms.pdf Binary files differnew file mode 100644 index 00000000000..3ba06a7008e --- /dev/null +++ b/Master/texmf-doc/doc/english/pdf-forms-tutorial-en/forms.pdf |