diff options
author | Karl Berry <karl@freefriends.org> | 2007-09-30 18:26:13 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2007-09-30 18:26:13 +0000 |
commit | 58f80fcf73653086226dd39e9488e8602ba8d76a (patch) | |
tree | eb7267a86e6987e5885093131bc2d74447ca3d22 /Master/texmf-doc | |
parent | 44a40e758a3234d9bb165b0484abb4d5d51911f0 (diff) |
pdf-forms-tutorial-de (10jun07)
git-svn-id: svn://tug.org/texlive/trunk@5069 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-doc')
42 files changed, 2891 insertions, 0 deletions
diff --git a/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/README b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/README new file mode 100644 index 00000000000..61cb1f1cec5 --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/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/german/pdf-forms-tutorial-de/examples/Makefile b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/examples/Makefile new file mode 100644 index 00000000000..982a6755f02 --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/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/german/pdf-forms-tutorial-de/examples/ex0001.tex b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/examples/ex0001.tex new file mode 100644 index 00000000000..b79208a898c --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/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{Firma ABC}\chead{}\rhead{Abteilung XYZ} +\lfoot{}\cfoot{}\rfoot{} +\pagestyle{fancy} +\usepackage{graphicx} +\usepackage{color} +\usepackage[ + pdftex,a4paper=true,colorlinks=true, + pdftitle={Formular für Schlüsselausgabe},pdfsubject={Zugang}, + pdfauthor={ich},pdfpagemode=UseNone,pdfstartview=FitH, + pagebackref,pdfhighlight={/N} +]{hyperref} +\begin{document} +\section*{Anforderung eines Gruppenschlüssels} +\begin{Form} +\textbf{Mitarbeiter}\\ +Vorname: \TextField[name=vorname]{}\\ +Name: \TextField[name=name]{}\\ +Abteilung: \ChoiceMenu[name=abt]{}{% +Verkauf=v,Fertigung=f,Service=s}\\ +\textbf{Zeitdauer}\\ +Zeitraum: \ChoiceMenu[name=zeit]{}{% +befristet=b,unbefristet=u}\\ +von: \TextField[name=von]{}\\ +bis: \TextField[name=bis]{}\\ +\textbf{Zu schlie"sende Türen}\\ +Haustür: \CheckBox[name=ht]{}\\ +Etage 1: \CheckBox[name=e1]{}\\ +Etage 2: \CheckBox[name=e2]{}\\ +\end{Form} +\end{document} diff --git a/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/examples/ex0002.tex b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/examples/ex0002.tex new file mode 100644 index 00000000000..51cc2bcc377 --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/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{Firma ABC}\chead{}\rhead{Abteilung XYZ} +\lfoot{}\cfoot{}\rfoot{} +\pagestyle{fancy} +\usepackage{graphicx} +\usepackage{color} +\usepackage[ + pdftex,a4paper=true,colorlinks=true, + pdftitle={Formular für Schlüsselausgabe},pdfsubject={Zugang}, + pdfauthor={ich},pdfpagemode=UseNone,pdfstartview=FitH, + pagebackref,pdfhighlight={/N} +]{hyperref} +\begin{document} +\section*{Anforderung eines Gruppenschlüssels} +\begin{Form} +\begin{tabular}{|rl|} +\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Mitarbeiter}}\\ +Vorname:&% +\TextField[name=vorname]{}\\ +Name:&% +\TextField[name=name]{}\\ +Abteilung:&% +\ChoiceMenu[name=abt]{}{% +Verkauf=v,Fertigung=f,Service=s}\\ +\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Zeitdauer}}\\ +Zeitraum:&% +\ChoiceMenu[name=zeit]{}{% +befristet=b,unbefristet=u}\\ +von:&% +\TextField[name=von]{}\\ +bis:&% +\TextField[name=bis]{}\\ +\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Zu schließende Türen}}\\ +Haustür:&% +\CheckBox[name=ht,width=1.2em]{}\\ +Etage 1:&% +\CheckBox[name=e1,width=1.2em]{}\\ +Etage 2:&% +\CheckBox[name=e2,width=1.2em]{}\\ +\hline +\end{tabular} +\end{Form} +\end{document} diff --git a/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/examples/ex0003.tex b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/examples/ex0003.tex new file mode 100644 index 00000000000..ccbd394160c --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/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{Firma ABC}\chead{}\rhead{Abteilung XYZ} +\lfoot{}\cfoot{}\rfoot{} +\pagestyle{fancy} +\usepackage{graphicx} +\usepackage{color} +\usepackage[ + pdftex,a4paper=true,colorlinks=true, + pdftitle={Formular für Schlüsselausgabe},pdfsubject={Zugang}, + pdfauthor={ich},pdfpagemode=UseNone,pdfstartview=FitH, + pagebackref,pdfhighlight={/N} +]{hyperref} +\begin{document} +\section*{Anforderung eines Gruppenschlüssels} +\begin{Form} +\begin{tabular}{|rl|} +\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Mitarbeiter}}\\ +&\\*[-0.9em]Vorname:&% +\TextField[name=vorname,width=20em]{}\\ +&\\*[-0.9em]Name:&% +\TextField[name=name,width=20em]{}\\ +&\\*[-0.9em]Abteilung:&% +\ChoiceMenu[{}={},name=abt,width=20em,popdown=true]{}{% +Verkauf=v,Fertigung=f,Service=s}\\ +&\\*[-0.9em]\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Zeitdauer}}\\ +&\\*[-0.9em]Zeitraum:&% +\ChoiceMenu[name=zeit,width=20em,popdown=true]{}{% +befristet=b,unbefristet=u}\\ +&\\*[-0.9em]von:&% +\TextField[name=von,width=10em]{}\\ +&\\*[-0.9em]bis:&% +\TextField[name=bis,width=10em]{}\\ +&\\*[-0.9em]\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Zu schließende Türen}}\\ +&\\*[-0.9em]Haustür:&% +\CheckBox[name=ht,width=1.2em]{}\\ +&\\*[-0.9em]Etage 1:&% +\CheckBox[name=e1,width=1.2em]{}\\ +&\\*[-0.9em]Etage 2:&% +\CheckBox[name=e2,width=1.2em]{}\\ +&\\ +\hline +\end{tabular} +\end{Form} +\end{document} diff --git a/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/examples/ex0004.tex b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/examples/ex0004.tex new file mode 100644 index 00000000000..99963b31aa6 --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/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{Firma ABC}\chead{}\rhead{Abteilung XYZ} +\lfoot{}\cfoot{}\rfoot{} +\pagestyle{fancy} +\usepackage{graphicx} +\usepackage{color} +\usepackage[ + pdftex,a4paper=true,colorlinks=true, + pdftitle={Formular für Schlüsselausgabe},pdfsubject={Zugang}, + 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*{Anforderung eines Gruppenschlüssels} +\begin{Form} +\begin{tabular}{|rl|} +\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Mitarbeiter}}\\ +&\\*[-0.9em]\textforlabel{vn}{Vorname:}&% +\TextField[name=vorname,width=20em]{}\\ +&\\*[-0.9em]\textforlabel{nn}{Name:}&% +\TextField[name=name,width=20em]{}\\ +&\\*[-0.9em]\textforlabel{ab}{Abteilung:}&% +\ChoiceMenu[name=abt,width=20em,popdown=true,value=v]{}{% +Verkauf=v,Fertigung=f,Service=s}\\ +&\\*[-0.9em]\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Zeitdauer}}\\ +&\\*[-0.9em]\textforlabel{z}{Zeitraum:}&% +\ChoiceMenu[name=zeit,width=20em,popdown=true,value=u]{}{% +unbefristet=u,befristet=b}\\ +&\\*[-0.9em]\textforlabel{v}{von:}&% +\TextField[name=von,width=10em]{}\\ +&\\*[-0.9em]\textforlabel{b}{bis:}&% +\TextField[name=bis,width=10em]{}\\ +&\\*[-0.9em]\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Zu schließende Türen}}\\ +&\\*[-0.9em]\textforlabel{th}{Haustür:}&% +\CheckBox[name=ht,width=1.2em]{}\\ +&\\*[-0.9em]\textforlabel{t1}{Etage 1:}&% +\CheckBox[name=e1,width=1.2em]{}\\ +&\\*[-0.9em]\textforlabel{t2}{Etage 2:}&% +\CheckBox[name=e2,width=1.2em]{}\\ +&\\ +\hline +\end{tabular} +\end{Form} +\end{document} diff --git a/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/examples/ex0005.tex b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/examples/ex0005.tex new file mode 100644 index 00000000000..07ec65d5091 --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/examples/ex0005.tex @@ -0,0 +1,71 @@ +\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{Firma ABC}\chead{}\rhead{Abteilung XYZ} +\lfoot{}\cfoot{}\rfoot{} +\pagestyle{fancy} +\usepackage{graphicx} +\usepackage{color} +\usepackage[ + pdftex,a4paper=true,colorlinks=true, + pdftitle={Formular für Schlüsselausgabe},pdfsubject={Zugang}, + 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*{Anforderung eines Gruppenschlüssels} +\begin{Form} +\begin{tabular}{|rl|} +\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Mitarbeiter}}\\ +&\\*[-0.9em]\textforlabel{vn}{Vorname:}&% +\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}{Abteilung:}&% +\ChoiceMenu[name=abt,width=20em,popdown=true,value=v,% +bordercolor={0.65 0.79 0.94}]{}{% +Verkauf=v,Fertigung=f,Service=s}\\ +&\\*[-0.9em]\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Zeitdauer}}\\ +&\\*[-0.9em]\textforlabel{z}{Zeitraum:}&% +\ChoiceMenu[name=zeit,width=20em,popdown=true,value=u,% +bordercolor={0.65 0.79 0.94}]{}{% +unbefristet=u,befristet=b}\\ +&\\*[-0.9em]\textforlabel{v}{von:}&% +\TextField[name=von,width=10em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{b}{bis:}&% +\TextField[name=bis,width=10em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{% +\textbf{Zu schließende Türen}}\\ +&\\*[-0.9em]\textforlabel{th}{Haustür:}&% +\CheckBox[name=ht,width=1.2em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{t1}{Etage 1:}&% +\CheckBox[name=e1,width=1.2em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{t2}{Etage 2:}&% +\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/german/pdf-forms-tutorial-de/examples/ex0006.tex b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/examples/ex0006.tex new file mode 100644 index 00000000000..ff006a9e849 --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/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{Firma ABC}\chead{}\rhead{Abteilung XYZ} +\lfoot{}\cfoot{}\rfoot{} +\pagestyle{fancy} +\usepackage{graphicx} +\usepackage{color} +\usepackage[ + pdftex,a4paper=true,colorlinks=true, + pdftitle={Formular für Schlüsselausgabe},pdfsubject={Zugang}, + pdfauthor={ich}, + pdfpagemode=UseNone,pdfstartview=FitH, + pagebackref,pdfhighlight={/N} +]{hyperref} +\usepackage[pdftex]{insdljs} +\begin{insDLJS}[exaaaa]{exaaaa}{JavaScript auf Document Level} + +// 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("Das Formular wurde geöffnet."); + } +} +\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*{Anforderung eines Gruppenschlüssels} +\begin{Form} +\begin{tabular}{|rl|} +\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Mitarbeiter}}\\ +&\\*[-0.9em]\textforlabel{vn}{Vorname:}&% +\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}{Abteilung:}&% +\ChoiceMenu[name=abt,width=20em,popdown=true,value=v,% +bordercolor={0.65 0.79 0.94}]{}{% +Verkauf=v,Fertigung=f,Service=s}\\ +&\\*[-0.9em]\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Zeitdauer}}\\ +&\\*[-0.9em]\textforlabel{z}{Zeitraum:}&% +\ChoiceMenu[name=zeit,width=20em,popdown=true,value=u,% +bordercolor={0.65 0.79 0.94}]{}{% +unbefristet=u,befristet=b}\\ +&\\*[-0.9em]\textforlabel{v}{von:}&% +\TextField[name=von,width=10em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{b}{bis:}&% +\TextField[name=bis,width=10em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{% +Zu schließende Türen}}\\ +&\\*[-0.9em]\textforlabel{th}{Haustür:}&% +\CheckBox[name=ht,width=1.2em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{t1}{Etage 1:}&% +\CheckBox[name=e1,width=1.2em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{t2}{Etage 2:}&% +\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/german/pdf-forms-tutorial-de/examples/ex0007.tex b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/examples/ex0007.tex new file mode 100644 index 00000000000..88532ab5172 --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/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{Firma ABC}\chead{}\rhead{Abteilung XYZ} +\lfoot{}\cfoot{}\rfoot{} +\pagestyle{fancy} +\usepackage{graphicx} +\usepackage{color} +\usepackage[ + pdftex,a4paper=true,colorlinks=true, + pdftitle={Formular für Schlüsselausgabe},pdfsubject={Zugang}, + pdfauthor={ich}, + pdfpagemode=UseNone,pdfstartview=FitH, + pagebackref,pdfhighlight={/N} +]{hyperref} +\usepackage[pdftex]{insdljs} +\begin{insDLJS}[exaaab]{exaaab}{JavaScript auf Document Level} + +// 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("Das Formular wurde geöffnet."); + } +} +\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*{Anforderung eines Gruppenschl\"{u}ssels} +\begin{Form} +\begin{tabular}{|rl|} +\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Mitarbeiter}}\\ +&\\*[-0.9em]\textforlabel{vn}{Vorname:}&% +\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}{Abteilung:}&% +\ChoiceMenu[name=abt,width=20em,popdown=true,value=v,% +bordercolor={0.65 0.79 0.94}]{}{% +Verkauf=v,Fertigung=f,Service=s}\\ +&\\*[-0.9em]\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Zeitdauer}}\\ +&\\*[-0.9em]\textforlabel{z}{Zeitraum:}&% +\ChoiceMenu[name=zeit,width=20em,popdown=true,value=u,% +bordercolor={0.65 0.79 0.94}]{}{% +unbefristet=u,befristet=b}\\ +&\\*[-0.9em]\textforlabel{v}{von:}&% +\TextField[name=von,width=10em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{b}{bis:}&% +\TextField[name=bis,width=10em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{% +\textbf{Zu schlie\ss{}ende T\"{u}ren}}\\ +&\\*[-0.9em]\textforlabel{th}{Haust\"{u}r:}&% +\CheckBox[name=ht,width=1.2em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{t1}{Etage 1:}&% +\CheckBox[name=e1,width=1.2em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{t2}{Etage 2:}&% +\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/german/pdf-forms-tutorial-de/examples/ex0008.tex b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/examples/ex0008.tex new file mode 100644 index 00000000000..078bb5add8c --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/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{Firma ABC}\chead{}\rhead{Abteilung XYZ} +\lfoot{}\cfoot{}\rfoot{} +\pagestyle{fancy} +\usepackage{graphicx} +\usepackage{color} +\usepackage[ + pdftex,a4paper=true,colorlinks=true, + pdftitle={Formular für Schlüsselausgabe},pdfsubject={Zugang}, + 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}{JavaScript auf Document Level} + +// indicate that the function was not yet run +var done = 0; + +function willPrint() +{ + app.alert("Gleich wird gedruckt."); +} + +function didPrint() +{ + app.alert("Es wurde gedruckt."); +} + +// function to run when opening the document +function myFirstJavaScriptFunction() +{ + if(!done) { + done = 1; + app.alert("Das Formular wurde geöffnet."); + } +} +\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*{Anforderung eines Gruppenschl\"{u}ssels} +\begin{Form} +\begin{tabular}{|rl|} +\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Mitarbeiter}}\\ +&\\*[-0.9em]\textforlabel{vn}{Vorname:}&% +\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}{Abteilung:}&% +\ChoiceMenu[name=abt,width=20em,popdown=true,value=v,% +bordercolor={0.65 0.79 0.94}]{}{% +Verkauf=v,Fertigung=f,Service=s}\\ +&\\*[-0.9em]\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Zeitdauer}}\\ +&\\*[-0.9em]\textforlabel{z}{Zeitraum:}&% +\ChoiceMenu[name=zeit,width=20em,popdown=true,value=u,% +bordercolor={0.65 0.79 0.94}]{}{% +unbefristet=u,befristet=b}\\ +&\\*[-0.9em]\textforlabel{v}{von:}&% +\TextField[name=von,width=10em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{b}{bis:}&% +\TextField[name=bis,width=10em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{% +\textbf{Zu schlie\ss{}ende T\"{u}ren}}\\ +&\\*[-0.9em]\textforlabel{th}{Haust\"{u}r:}&% +\CheckBox[name=ht,width=1.2em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{t1}{Etage 1:}&% +\CheckBox[name=e1,width=1.2em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{t2}{Etage 2:}&% +\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/german/pdf-forms-tutorial-de/examples/ex0009.tex b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/examples/ex0009.tex new file mode 100644 index 00000000000..4be6b064d03 --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/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{Firma ABC}\chead{}\rhead{Abteilung XYZ} +\lfoot{}\cfoot{}\rfoot{} +\pagestyle{fancy} +\usepackage{graphicx} +\usepackage{color} +\usepackage[ + pdftex,a4paper=true,colorlinks=true, + pdftitle={Formular für Schlüsselausgabe},pdfsubject={Zugang}, + 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}{JavaScript auf Document Level} + +// 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("von").fillColor = color.white; + this.getField("bis").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("von").strokeColor = color.black; + this.getField("bis").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("von").textFont = font.Helv; + this.getField("bis").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("von").fillColor = newcolor; + this.getField("bis").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("von").strokeColor = newcolor; + this.getField("bis").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("von").textFont = font.HelvB; + this.getField("bis").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*{Anforderung eines Gruppenschl\"{u}ssels} +\begin{Form} +\begin{tabular}{|rl|} +\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Mitarbeiter}}\\ +&\\*[-0.9em]\textforlabel{vn}{Vorname:}&% +\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}{Abteilung:}&% +\ChoiceMenu[name=abt,width=20em,popdown=true,value=v,% +bordercolor={0.65 0.79 0.94}]{}{% +Verkauf=v,Fertigung=f,Service=s}\\ +&\\*[-0.9em]\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Zeitdauer}}\\ +&\\*[-0.9em]\textforlabel{z}{Zeitraum:}&% +\ChoiceMenu[name=zeit,width=20em,popdown=true,value=u,% +bordercolor={0.65 0.79 0.94}]{}{% +unbefristet=u,befristet=b}\\ +&\\*[-0.9em]\textforlabel{v}{von:}&% +\TextField[name=von,width=10em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{b}{bis:}&% +\TextField[name=bis,width=10em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{% +\textbf{Zu schlie\ss{}ende T\"{u}ren}}\\ +&\\*[-0.9em]\textforlabel{th}{Haust\"{u}r:}&% +\CheckBox[name=ht,width=1.2em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{t1}{Etage 1:}&% +\CheckBox[name=e1,width=1.2em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{t2}{Etage 2:}&% +\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/german/pdf-forms-tutorial-de/examples/ex0010.tex b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/examples/ex0010.tex new file mode 100644 index 00000000000..9bdbfe24520 --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/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{Firma ABC}\chead{}\rhead{Abteilung XYZ} +\lfoot{}\cfoot{}\rfoot{} +\pagestyle{fancy} +\usepackage{graphicx} +\usepackage{color} +\usepackage[ + pdftex,a4paper=true,colorlinks=true, + pdftitle={Formular für Schlüsselausgabe},pdfsubject={Zugang}, + 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}{JavaScript auf Document Level} + +// 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("von").fillColor = color.white; + this.getField("bis").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("von").strokeColor = color.black; + this.getField("bis").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("von").textFont = font.Helv; + this.getField("bis").textFont = font.Helv; + this.getField("von").textColor = color.black; + this.getField("bis").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("von").fillColor = newcolor; + this.getField("bis").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("von").strokeColor = newcolor; + this.getField("bis").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("von").textFont = font.HelvB; + this.getField("von").textColor = color.black; + this.getField("bis").textColor = color.black; + this.getField("bis").textFont = font.HelvB; +} + +function validateTime() +{ + this.delay = true; + if((event.value == "u") || (event.value == "unbefristet")) { + this.getField("von").display = display.hidden; + this.getField("bis").display = display.hidden; + } else { + this.getField("von").display = display.visible; + this.getField("bis").display = display.visible; + this.getField("von").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*{Anforderung eines Gruppenschl\"{u}ssels} +\begin{Form} +\begin{tabular}{|rl|} +\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Mitarbeiter}}\\ +&\\*[-0.9em]\textforlabel{vn}{Vorname:}&% +\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}{Abteilung:}&% +\ChoiceMenu[name=abt,width=20em,popdown=true,value=v,% +bordercolor={0.65 0.79 0.94}]{}{% +Verkauf=v,Fertigung=f,Service=s}\\ +&\\*[-0.9em]\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Zeitdauer}}\\ +&\\*[-0.9em]\textforlabel{z}{Zeitraum:}&% +\ChoiceMenu[name=zeit,width=20em,popdown=true,value=u,% +validate={validateTime();},% +bordercolor={0.65 0.79 0.94}]{}{% +unbefristet=u,befristet=b}\\ +&\\*[-0.9em]\textforlabel{v}{von:}&% +\TextField[name=von,width=10em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{b}{bis:}&% +\TextField[name=bis,width=10em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{% +\textbf{Zu schlie\ss{}ende T\"{u}ren}}\\ +&\\*[-0.9em]\textforlabel{th}{Haust\"{u}r:}&% +\CheckBox[name=ht,width=1.2em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{t1}{Etage 1:}&% +\CheckBox[name=e1,width=1.2em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{t2}{Etage 2:}&% +\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/german/pdf-forms-tutorial-de/examples/ex0011.tex b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/examples/ex0011.tex new file mode 100644 index 00000000000..3ed89912e96 --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/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{Firma ABC}\chead{}\rhead{Abteilung XYZ} +\lfoot{}\cfoot{}\rfoot{} +\pagestyle{fancy} +\usepackage{graphicx} +\usepackage{color} +\usepackage[ + pdftex,a4paper=true,colorlinks=true, + pdftitle={Formular für Schlüsselausgabe},pdfsubject={Zugang}, + 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}{JavaScript auf Document Level} + +// 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("von").fillColor = color.white; + this.getField("bis").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("von").strokeColor = color.black; + this.getField("bis").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("von").textFont = font.Helv; + this.getField("bis").textFont = font.Helv; + this.getField("von").textColor = color.black; + this.getField("bis").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("von").fillColor = newcolor; + this.getField("bis").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("von").strokeColor = newcolor; + this.getField("bis").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("von").textFont = font.HelvB; + this.getField("von").textColor = color.black; + this.getField("bis").textColor = color.black; + this.getField("bis").textFont = font.HelvB; +} + +function validateTime() +{ + this.delay = true; + if((event.value == "u") || (event.value == "unbefristet")) { + this.getField("von").display = display.hidden; + this.getField("bis").display = display.hidden; + } else { + this.getField("von").display = display.visible; + this.getField("bis").display = display.visible; + this.getField("von").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*{Anforderung eines Gruppenschl\"{u}ssels} +\begin{Form} +\begin{tabular}{|rl|} +\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Mitarbeiter}}\\ +&\\*[-0.9em]\textforlabel{vn}{Vorname:}&% +\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}{Abteilung:}&% +\ChoiceMenu[name=abt,width=20em,popdown=true,combo=true,value=v,% +bordercolor={0.65 0.79 0.94}]{}{% +Verkauf=v,Fertigung=f,Service=s}\\ +&\\*[-0.9em]\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{\textbf{Zeitdauer}}\\ +&\\*[-0.9em]\textforlabel{z}{Zeitraum:}&% +\ChoiceMenu[name=zeit,width=20em,popdown=true,value=u,% +validate={validateTime();},% +bordercolor={0.65 0.79 0.94}]{}{% +unbefristet=u,befristet=b}\\ +&\\*[-0.9em]\textforlabel{v}{von:}&% +\TextField[name=von,width=10em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{b}{bis:}&% +\TextField[name=bis,width=10em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\hline +&\\*[-0.9em]\multicolumn{2}{|c|}{% +\textbf{Zu schlie\ss{}ende T\"{u}ren}}\\ +&\\*[-0.9em]\textforlabel{th}{Haust\"{u}r:}&% +\CheckBox[name=ht,width=1.2em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{t1}{Etage 1:}&% +\CheckBox[name=e1,width=1.2em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\textforlabel{t2}{Etage 2:}&% +\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/german/pdf-forms-tutorial-de/examples/ex0101.tex b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/examples/ex0101.tex new file mode 100644 index 00000000000..52004303d4b --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/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{Firma ABC}\chead{}\rhead{Abteilung XYZ} +\lfoot{}\cfoot{}\rfoot{} +\pagestyle{fancy} +\usepackage{graphicx} +\usepackage{color} +\usepackage[ + pdftex,a4paper=true,colorlinks=true, + pdftitle={Formular für Software},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}{JavaScript auf Document Level} + +// 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 = [ + [ "", ""], + [ "Betriebssystem", "os" ], + [ "Textverarbeitung", "tp" ], + [ "Tabellenkalkulation", "sc" ], + [ "Präsentationsprogramm", "pp" ], + [ "E-Mail-Client", "mc" ], + [ "Web browser", "wb" ], + [ "Mathematik-Software", "ms" ], + [ "PDF-Anzeigeprogramm", "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*{Anforderung von Software-Lizenzen und -installationen} +\begin{Form} +\begin{tabular}{|rr|} +\hline +\multicolumn{2}{|c|}{}\\*[-0.9em] +\multicolumn{2}{|c|}{\textbf{Systemverantwortlicher}}\\ +&\\*[-0.9em]\textforlabel{l01}{Vorname:}&\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}{Inventarnummer:}% +&\TextField[name=inventory,width=20em,% +bordercolor={0.65 0.79 0.94}]{}\\ +&\\*[-0.9em]\hline +\multicolumn{2}{|c|}{}\\*[-0.9em] +\multicolumn{2}{|c|}{\textbf{Ben\"{o}tigte 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/german/pdf-forms-tutorial-de/examples/ex0201.tex b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/examples/ex0201.tex new file mode 100644 index 00000000000..06cb9eb0fa3 --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/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{Dicke Kohle GmbH}\chead{} +\rhead{Abteilung 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}[exaaca]{exaaca}{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 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{E\,i\,n\,g\,a\,b\,e\,d\,a\,t\,e\,n}% +}\\ +&\\*[-0.8em]\textforlabel{l01}{Anlagesumme:}&\TextField[% +name=summe,width=10em,bordercolor={0.65 0.79 0.94}]{}% +~\texteuro\\ +&\\*[-0.8em]\textforlabel{l02}{Zinssatz:}&\TextField[% +name=zins,width=10em,bordercolor={0.65 0.79 0.94}]{}~\%\\ +&\\*[-0.8em]\textforlabel{l03}{Anlagezeitraum:}&% +\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}{% +Anlageergebnis:}&\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/german/pdf-forms-tutorial-de/examples/ex0202.tex b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/examples/ex0202.tex new file mode 100644 index 00000000000..6c2f6898f15 --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/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{Dicke Kohle GmbH}\chead{} +\rhead{Abteilung 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}{Anlagesumme:}&\TextField[% +name=summe,width=10em,bordercolor={0.65 0.79 0.94}]{}% +~\texteuro\\ +&\\*[-0.8em]\textforlabel{l02}{Zinssatz:}&\TextField[% +name=zins,width=10em,bordercolor={0.65 0.79 0.94}]{}~\%\\ +&\\*[-0.8em]\textforlabel{l03}{Anlagezeitraum:}&% +\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}{% +Anlageergebnis:}&\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/german/pdf-forms-tutorial-de/examples/ex0301.tex b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/examples/ex0301.tex new file mode 100644 index 00000000000..940ab3a9b62 --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/examples/ex0301.tex @@ -0,0 +1,60 @@ +\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 und 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 mit \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{Test mit insdljs und inputenc} +Dies ist ein Test, ob eine Zusammenarbeit der Pakete insdljs +und inputenc möglich ist.\\ +Getestet werden die deutschen Umlaute und Ligaturen +\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/german/pdf-forms-tutorial-de/fdl.txt b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/fdl.txt new file mode 100644 index 00000000000..d2c2e8d523d --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/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/german/pdf-forms-tutorial-de/forms-src/Makefile b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/Makefile new file mode 100644 index 00000000000..c660bdce01e --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/Makefile @@ -0,0 +1,34 @@ +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) + -rm fdl.tex + ln ../../en/forms-src/fdl.tex . + pdflatex forms + bibtex forms + pdflatex forms + pdflatex forms + +clean: + -rm -fr *.bbl *.blg *.out *.djs ex00*.pdf + diff --git a/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/bib.bib b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/bib.bib new file mode 100644 index 00000000000..c944d944f5a --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/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/german/pdf-forms-tutorial-de/forms-src/fde0001.tex b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0001.tex new file mode 100644 index 00000000000..83cb0e79e3f --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0001.tex @@ -0,0 +1,47 @@ +\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{Zweck dieses Tutorials} +Dieses Tutorial gibt eine Einführung, wie man mit pdf\LaTeX{}, hyperref +und insdljs PDF-Formulare erstellen kann. Der Schwerpunkt +liegt auf Formularen, die am Rechner ausgefüllt und anschließend ausgedruckt +werden sollen. + +Folgende Voraussetzungen +müssen erfüllt sein, damit Sie die Schritte dieses Tutorials nachvollziehen +können: +\begin{itemize} +\item Sie benötigen eine \LaTeX{}-Distribution, die das Kommando + "`\pdflatex{}"' enthält. +\item Das hyperref-Package muss installiert sein. +\item Das insdljs-Package muss installiert sein. Hierbei handelt es + sich um einen Teil des AcroTex Education Bundles, das + unter http://www.acrotex.net zu finden ist.\\ + Dieses Paket ermöglicht es, Document Level JavaScript einzufügen. +\end{itemize} + +Folgende Dokumentationen sollten verfügbar sein: +\begin{itemize} +\item das Manual zum hyperref-Package.\\ + \cite{hyperref:manual}, +\item die Guides, Spezifikationen und Referenzen zu + Acrobat JavaScript in \textsc{pdf}-Dateien\\* + \cite{pdf:javascript},\\* + \cite{pdf:scripting:guide},\\* + \cite{pdf:scripting:reference} und +\item die Referenz zum \textsc{pdf}-Dateiformat\\* + \cite{pdf:reference}. +\end{itemize} +Die ersten Dokumentationen werden unbedingt benötigt, die +\textsc{pdf}-Referenz eher seltener. + +In diesem Tutorial werden drei Beispiel-Formulare vorgestellt, +das erste Beispiel wird schrittweise entwickelt. Die Endfassungen +der Formulare befinden sich in den Dateien +"`ex0011.tex"', "`ex0101.tex"' und "`ex0201.tex"'. diff --git a/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0002.tex b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0002.tex new file mode 100644 index 00000000000..337c64fa0a8 --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0002.tex @@ -0,0 +1,28 @@ +\emph{Hinweis:\/} Die in diesem Abschnitt dargestellten Informationen +wurden dem Handbuch manual.pdf der hyperref-Dokumentation +(\cite{hyperref:manual}) entnommen. +Dort werden die \texttt{Form}-Umgebung, die Formularfeld-Makros und deren +Parameter wesentlich detaillierter dargestellt als hier. + +Das hyperref-Paket bietet Umgebungen und Makros für den Formular-Entwurf an. +Die Formularfelder müssen in einer \texttt{Form}-Umgebung platziert werden, +pro Datei darf eine \texttt{Form}-Umgebung verwendet werden.\\ +Folgende Makros erstellen Formularfelder: +\begin{itemize} +\item \texttt{\textbackslash{}TextField[}\textit{Parameter}\texttt{]}\texttt{\{}\textit{Text}\texttt{\}}\\ +erzeugt ein Textfeld. +\item \texttt{\textbackslash{}CheckBox[}\textit{Parameter}\texttt{]}\texttt{\{}\textit{Text}\texttt{\}}\\ +erzeugt eine Checkbox. +\item \texttt{\textbackslash{}ChoiceMenu[}\textit{Parameter}\texttt{]}\texttt{\{}\textit{Text}\texttt{\}\{}\textit{Auswahl-Optionen}\texttt{\}}\\ +erzeugt eine Auswahlliste. +\item \texttt{\textbackslash{}PushButton[}\textit{Parameter}\texttt{]}\texttt{\{}\textit{Text}\texttt{\}}\\ +erzeugt einen Button. +\item \texttt{\textbackslash{}Submit[}\textit{Parameter}\texttt{]}\texttt{\{}\textit{Text}\texttt{\}}\\ +erzeugt einen Submit-Button. Das Drücken eines Submit-Buttons bewirkt, dass +die in das Formular eingegebenen Daten an die \textsc{url} gesendet werden, +die als action-Parameter der \texttt{Form}-Umgebung angegeben wurde. +\item \texttt{\textbackslash{}Reset[}\textit{Parameter}\texttt{]}\texttt{\{}\textit{Text}\texttt{\}}\\ +erzeugt einen Reset-Button. +\end{itemize} + + diff --git a/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0003.tex b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0003.tex new file mode 100644 index 00000000000..719b5116952 --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0003.tex @@ -0,0 +1,67 @@ +\subsubsection{Dokumentenklasse} +Für Formulare kann die gewohnte Dokumentenklasse -- z.\,B. scrartcl oder +article -- verwendet werden. +\subsubsection{Schriftarten} +Der \textsc{pdf}-Standard gibt vor, welche Schriftarten jedes +\textsc{pdf}-Anzeigeprogramm darstellen können muss, auch wenn der entsprechende +Font nicht in der \textsc{pdf}-Datei eingebettet ist. Diese Schriften können +für Formularfelder auch per JavaScript eingestellt werden. Da wir die +Schriftarten mit JavaScript-Befehlen ändern wollen, verwenden wir von +vornherein diese Schriften. Im Wesentlichen handelt es +sich um die Schriftfamilien Times, Helvetica und Courier.\\ +Die Packages für die Schriftfamilien als Type-1-Fonts werden mit +\begin{lstlisting} +\usepackage{mathptmx} +\usepackage[scaled=.92]{helvet} +\usepackage{courier} +\end{lstlisting} +geladen.\\ +Mit +\begin{lstlisting} +\usepackage[T1]{fontenc} +\end{lstlisting} +wird T1-Encoding anstelle des von \LaTeX{} standardmäßig benutzten +OT1-Encodings benutzt.\\ +Mit +\begin{lstlisting} +\renewcommand*{\familydefault}{\phv} +\end{lstlisting} +wird die Helvetica als Standardschrift eingestellt, da serifenlose +Schriften auf dem Bildschirm meist besser lesbar sind als Schriften +mit Serifen. +\subsubsection{Seitenlayout} +Mit +\begin{lstlisting} +\usepackage[left=25mm,top=25mm,bottom=10mm,right=10mm]{geometry} +\end{lstlisting} +werden die Ränder festgelegt. Formulare werden meist abgeheftet, der linke +Seitenrand sollte also groß genug gewählt werden. Hier wurde auch ein relativ +großer oberer Rand gewählt, um ein Formular z.\,B. auf einem Klemmbrett +befestigen zu können.\\ +Mit +\begin{lstlisting} +\usepackage{fancyhdr} +\lhead{Firma ABC}\chead{}\rhead{Abteilung XYZ} +\lfoot{}\cfoot{}\rfoot{} +\pagestyle{fancy} +\end{lstlisting} +werden die Kopf- und Fußzeilen gestaltet. +\subsubsection{Graphiken und Farben} +Mit +\begin{lstlisting} +\usepackage{graphicx} +\usepackage{color} +\end{lstlisting} +werden zwei weitere Packages eingebunden, die für die Verwendung von +Graphiken (z.\,B. ein Logo) und Farben benötigt werden. +\subsubsection{hyperref-Paket} +Das hyperref-Paket wird mit +\begin{lstlisting} +\usepackage[ + pdftex,a4paper=true,colorlinks=true, + pdftitle={Formular für Schlüsselausgabe}, + pdfsubject={Zugang}, + pdfauthor={ich}, + pdfpagemode=UseNone,pdfstartview=FitH,pdfhighlight={/N} +]{hyperref} +\end{lstlisting} diff --git a/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0004.tex b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0004.tex new file mode 100644 index 00000000000..97e964145ab --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0004.tex @@ -0,0 +1,53 @@ +Für die Gestaltung der Formularelemente empfehle ich, entsprechend +Tabelle~\vref{tab:gestaltung-von-formularelementen} vorzugehen. +\begin{longtable}{|l|c|c|c|} +\caption{Gestaltung von Formularelementen} +\label{tab:gestaltung-von-formularelementen} +\\ +\multicolumn{4}{c}{~}\\*[-0.9em] +\hline +&&&\\*[-0.9em]\multicolumn{1}{|c|}{}&\multicolumn{1}{c|}{\textbf{Umrandung}}&\multicolumn{1}{c|}{\textbf{Füllung}}&\multicolumn{1}{c|}{\textbf{Schrift}}\\ +\hline +\endfirsthead +\multicolumn{4}{|r|}{\textsl{Fortsetzung}} +\endhead +\multicolumn{4}{|r|}{\textsl{wird fortgesetzt}} +\endfoot +\hline +\endlastfoot +\hline +&&&\\*[-0.9em]Bildschirm&farbig&farbig&fett\\ +\hline +&&&\\*[-0.9em]Druck&schwarz&weiß&normal\\ +\hline +&&&\\*[-0.9em]Bildschirm und Druck\footnote{JavaScript ist deaktiviert}&farbig&weiß&normal\\ +\end{longtable} +Es wird davon ausgegangen, dass Formulare in größeren Mengen gedruckt +werden. Bei ausgedruckten Formularen ist in aller Regel die enthaltene +Information wichtig, nicht so sehr die Schönheit. Deshalb wird meist auf +Schwarz-Weiß-Druckern gedruckt. + +Beim Ausfüllen am Bildschirm sollten möglichst alle Formularfelder deutlich +farbig markiert sein, damit keines übersehen wird. Damit die Schrift gut +lesbar ist und sich optisch deutlich vom farbig gefüllten Hintergrund abhebt, +wird eine fette Schrift eingesetzt. + +Beim Ausdruck erscheint die Schrift schwarz auf weiß und muss daher nicht +mehr fett sein. Dem Formular-Auswerter -- der das ausgedruckte Formular +vor sich hat -- wird die Arbeit erleichtert, wenn +die eingetragenen Daten sich deutlich von den Formularbeschriftungen +abheben. Hierzu dient die schwarze Umrandung. + +Der Wechsel zwischen Bildschirmdarstellung und Druckdarstellung erfordert, +dass JavaScript im \textsc{pdf}-Anzeigeprogramm erlaubt ist. Einige Nutzer +verbieten dies aus Sicherheitsgründen, hier muss bei der Darstellung +ein Kompromiss gefunden werden. Die farbige Umrandung markiert nach wie +vor die Formularfelder, ohne farbige Füllung allerdings nicht so deutlich. +Auch auf dem Ausdruck ist die Markierung weniger deutlich als mit JavaScript, +da helle Farben in ein entsprechend helles Grau umgewandelt werden, wenn +auf Schwarz-Weiß-Druckern gedruckt wird. + +Die Markierungsfarbe sollte für alle Formularelemente gleich gewählt werden. +Da schwarzer Text auf farbig gefüllten Flächen erscheint, sollte eine +möglichst helle Farbe gewählt werden. Ich persönlich verwende häufig hellblau, +die Wahl einer Farbe ist letztendlich Geschmackssache. diff --git a/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0005.tex b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0005.tex new file mode 100644 index 00000000000..1bbd86447df --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0005.tex @@ -0,0 +1,13 @@ +Es soll ein Formular entworfen werden, mit dem Schlüssel für Mitarbeiter +angefordert werden. Das Formular soll u.\,a. folgende Informationen +enthalten: +\begin{itemize} +\item Vorname und Name +\item Abteilung +\item Zeitdauer (unbefristet bzw. befristet von \ldots{} bis \ldots{}). +\item die zu schließenden Türen. +\end{itemize} +Vorname und Name werden in Textfelder eingegeben. Die Abteilung wird aus +einer Auswahlliste ausgewählt, die Angabe befristet/unbefristet ebenso. +Anfangs- und Endzeitraum werden in Textfelder eingegeben. Die zu schließenden +Türen werden mit Checkboxen ausgewählt. diff --git a/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0006.tex b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0006.tex new file mode 100644 index 00000000000..a918fe1b2a3 --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0006.tex @@ -0,0 +1,22 @@ +Datei ex0001.tex zeigt einen ersten Versuch zur Realisierung des Formulares. +\lstinputlisting{../examples/ex0001.tex} +Nachdem die \textsc{pdf}-Datei ex0001 mit +\begin{lstlisting} +pdflatex ex0001 && pdflatex ex0001 +\end{lstlisting} +erstellt wurde, kann sie im \textsc{pdf}-Viewer geöffnet werden. Die gewünschte +Funktionalität ist zwar vorhanden, das Aussehen läßt -- vorsichtig formuliert -- +zu wünschen übrig. + +Am Quelltext kann aber bisher Folgendes nachvollzogen werden: +\begin{itemize} +\item Für jedes Formularelement wurde ein eindeutiger Name angegeben. + Dies wird später wichtig, um aus JavaScript-Funktionen heraus + bestimmte Elementeeigenschaften zu ändern. +\item Für Auswahllisten (ChoiceMenu) wird als letztes Argument eine + Werteliste angegeben. Die Einträge der Liste sind durch Kommata + getrennt. Jeder Eintrag enthält links vom Gleichheitszeichen + den anzuzeigenden Text und rechts ein Kürzel. Dieses Kürzel + ist später wichtig, wenn mit JavaScript abgefragt wird, welcher + Eintrag aktuell ausgewählt ist. +\end{itemize} diff --git a/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0007.tex b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0007.tex new file mode 100644 index 00000000000..36997248627 --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0007.tex @@ -0,0 +1,10 @@ +Um die Darstellung in Tabellenform zu bringen, wird die tabular-Umgebung +genutzt. +\lstinputlisting{../examples/ex0002.tex} +Kritikpunkte: +\begin{itemize} +\item Zwischen den Eingabefeldern existiert kein vertikaler Zwischenraum. +\item Auch nach einer Auswahl zeigen die Auswahllisten alle Werte an. + Im Normalfall soll hier nur ein Wert angezeigt werden. +\item Auswahllisten und Textfelder haben unterschiedliche Längen. +\end{itemize} diff --git a/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0008.tex b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0008.tex new file mode 100644 index 00000000000..d6dc835c60e --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0008.tex @@ -0,0 +1,21 @@ +Das Problem der vertikalen Zwischenräume wird mit +\begin{lstlisting} +&&\\*[-0.9em] +\end{lstlisting} +am Anfang jeder Zeile gelöst. Vor der letzten horizontalen Linie ist +dies allerdings nicht möglich, hier wird eine komplette Leerzeile +mit +\begin{lstlisting} +&&\\* +\end{lstlisting} +eingefügt. + +Bei den Auswahllisten wird der Parameter "`popdown=true"' gesetzt. Alle +Elemente (mit Ausnahme der Checkboxen und der von/bis-Textfelder) +erhalten den Parameter "`width=20em"'. +\lstinputlisting{../examples/ex0003.tex} +Verbleibende Kritikpunkte: +\begin{itemize} +\item Die Beschriftungen befinden sich auf anderer Höhe als + die vom Nutzer eingegebenen Texte. +\end{itemize} diff --git a/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0009.tex b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0009.tex new file mode 100644 index 00000000000..7f91cc50aa4 --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0009.tex @@ -0,0 +1,17 @@ +Das Problem der unterschiedlichen Höhen resultiert aus der äußeren und inneren +Umrandung der Formularelemente. Diese Umrandungen sind bei normalem Text +nicht vorhanden. + +Deshalb werden für die Beschriftungen ebenfalls Textfelder verwendet, +diese sind allerdings nicht editierbar und haben eine weiße Umrandung. +Diese wird mit +\begin{lstlisting} +bordercolor={1 1 1} +\end{lstlisting} +eingestellt.\\ +Mit +\begin{lstlisting} +align=2 +\end{lstlisting} +wird der Text rechtsbündig eingestellt. +\lstinputlisting{../examples/ex0004.tex} diff --git a/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0010.tex b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0010.tex new file mode 100644 index 00000000000..98220eaf671 --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0010.tex @@ -0,0 +1,7 @@ +Mit +\begin{lstlisting} +bordercolor={0.65 0.79 0.94} +\end{lstlisting} +wird für alle Formularelemente hellblau als Umrandungsfarbe +eingestellt. +\lstinputlisting{../examples/ex0005.tex} diff --git a/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0011.tex b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0011.tex new file mode 100644 index 00000000000..d26d260d02f --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0011.tex @@ -0,0 +1,48 @@ +Um JavaScript auf Dokument-Ebene einzufügen, wird das Package insdljs +benutzt, dabei muss der benutzte Ausgabetreiber angegeben werden. +\begin{lstlisting} +\usepackage[pdftex]{insdljs} +\end{lstlisting} +Der einzufügende JavaScript-Code wird in eine insDLJS-Umgebung +geschrieben. Für das optionale und das erste geforderte Argument +wird ein \LaTeX-Identifier benötigt (am besten einen String +aus lauter Buchstaben verwenden, \emph{keine} Zahlen). Das zweite +geforderte Argument ist ein Kommentar. +\begin{lstlisting} +\begin{insDLJS}[exaaaa]{exaaaa}{JavaScript auf Document Level} +// ... Place Java source code here ... +\end{insDLJS} +\end{lstlisting} +Der Identifier wird verwendet, um einen Dateinamen zu bilden ("`exaaaa.djs"'), +in dem der JavaScript-Code temporär gepackt abgespeichert wird. + +Die Funktion, die beim Öffnen des Dokumentes -- genauer gesagt beim Öffnen +der ersten Seite -- gestartet wird, wird mit dem OpenAction-Makro angegeben. +\begin{lstlisting} +\OpenAction{/S /JavaScript /JS (myFirstJavaScriptFunction();)} +\end{lstlisting} +Wie für \textsc{pdf} üblich, steht der String in Klammern. Der String +enthält den auszuführenden Befehl, also den Funktionsnamen mit Klammern, +möglichen Parametern und abschließendem Semikolon. + +Die hier angegebene Funktion wird jedesmal aufgerufen, wenn die erste +Seite geöffnet wird. Um die beim Öffnen des Dokumentes notwendigen +Schritte nur einmal auszuführen, wird in einer Variable gespeichert, +ob die Funktion bereits aufgerufen wurde. +\lstinputlisting{../examples/ex0006.tex} +Beim Öffnen der \textsc{pdf}-Datei ex0006.pdf erscheint eine +Message-Box. In dieser ist das Zeichen "o falsch dargestellt. +Ursache hierfür ist die Verwendung des Packages inputenc mit der Einstellung +latin1. Dies wandelt Umlaute und ß in \LaTeX{}-gerechte Folgen wie +"`\textquotedbl{}o"' um, konsequenterweise auch für JavaScript.\\ +Es gibt zwei Möglichkeiten, dieses Problem zu lösen: +\begin{itemize} +\item Das Paket inputenc wird nicht verwendet. Alle Umlaute\ldots im +Text werden durch ihre jeweilige \LaTeX{}-Codierung ersetzt.\\ +Ein Beispiel hierfür wird im Listing am Ende dieses Abschnittes +dargestellt. +\item Im JavaScript-Code werden die Umlaute nicht direkt sondern +als JavaScript-Unicode-Zeichen eingegeben. Dieses Verfahren wird in +Abschnitt~\vref{sec:fde0020} dargestellt. +\end{itemize} +\lstinputlisting{../examples/ex0007.tex} diff --git a/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0012.tex b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0012.tex new file mode 100644 index 00000000000..2472a89e00a --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0012.tex @@ -0,0 +1,65 @@ +Um auf Document-Events zu reagieren, muss dem \textsc{pdf}-Katalog +ein /AA-Eintrag hinzugefügt werden. Als Wert hat dieser Eintrag +einen Verweis auf ein Dictionary, das für verschiedene Document-Events +die Event-Handler definiert.\\ +Die Einträge in diesem Dictionary bestehen aus je einem Key, der ein +Event repräsentiert und einem Dictionary mit der Beschreibung für +die auszuführende Aktion.\\ +Folgende Keys können auftreten:\\[0.5em] +\begin{tabular}{|r|l|} +\hline +&\\*[-0.9em]\multicolumn{1}{|c|}{\textbf{Key}}&\multicolumn{1}{c|}{\textbf{Bedeutung}}\\ +\hline +&\\*[-0.9em]/WP&Das Dokument soll gedruckt werden.\\ +\hline +&\\*[-0.9em]/DP&Das Dokument wurde gedruckt.\\ +\hline +&\\*[-0.9em]/WS&Das Dokument soll gespeichert werden.\\ +\hline +&\\*[-0.9em]/DS&Das Dokument wurde gespeichert.\\ +\hline +&\\*[-0.9em]/DC&Das Dokument soll geschlossen werden.\\ +\hline +\end{tabular}\\[0.5em] +Im Beispiel wird für das WillPrint-Event +die Funktion \textit{willPrint();\/} aufgerufen und für das DidPrint-Event +die Funktion \textit{didPrint();\/}. +\begin{lstlisting} +\immediate\pdfobj{ +<< + /WP << /S /JavaScript /JS (willPrint();) >> + /DP << /S /JavaScript /JS (didPrint();) >> +>> +} +\pdfcatalog{/AA \the\pdflastobj\space 0 R} +\end{lstlisting} +In ex0008.pdf wird vor und nach dem Drucken eine Message-Box angezeigt. +\lstinputlisting{../examples/ex0008.tex} +In ex0009.pdf wird vor und nach dem Drucken die Umrandungs- und Füllfarbe +geändert sowie der Textfont. +Hierzu werden die Attribute \textit{fillColor\/}, \textit{strokeColor\/} +und \textit{textFont\/} geändert. Damit nicht nach jeder einzelnen Änderung +ein Bildschirm-Refresh erfolgt, werden die Änderungen in +\begin{lstlisting} + this.delay = true + // ... + this.delay = false +\end{lstlisting} +gekapselt. Dies schiebt den Bildschirm-Refresh solange auf, bis +alle Änderungen vorgenommen wurden. + +In \textit{myFirstJavaScriptFunction()\/} werden für die Auswahllisten +\textit{abt\/} und \textit{zeit\/} mit +\begin{lstlisting} +this.getField("abt").currentValueIndices = 0; +this.getField("zeit").currentValueIndices = 0; +\end{lstlisting} +Standardeinträge vorgewählt.\\ +Mit +\begin{lstlisting} +this.getField("vorname").setFocus(); +\end{lstlisting} +erhält das Eingabefeld \textit{vorname\/} den Fokus (d.\,h. der +Cursor wird in dieses Eingabefeld platziert und das Eingabefeld +erhält die Tastatureingaben). +\lstinputlisting{../examples/ex0009.tex} diff --git a/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0013.tex b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0013.tex new file mode 100644 index 00000000000..f7ad901288a --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0013.tex @@ -0,0 +1,20 @@ +Ereignisse können nicht nur vom Dokument sondern auch von einzelnen +Formularfeldern ausgelöst werden. Im Beispiel wird der Auswahlliste +\textit{zeit} der Parameter +\begin{lstlisting} +validate={validateTime();} +\end{lstlisting} +übergeben. Immer dann, wenn das Eingabefeld verlassen wird, wird die +Funktion \textit{validateTime();\/} aufgerufen. Diese macht mit +\begin{lstlisting} +this.getField("von").display = display.visible; +this.getField("bis").display = display.visible; +\end{lstlisting} +bzw. +\begin{lstlisting} +this.getField("von").display = display.hidden; +this.getField("bis").display = display.hidden; +\end{lstlisting} +die Eingabefelder +\textit{von\/} und \textit{bis\/} sichtbar bzw. unsichtbar. +\lstinputlisting{../examples/ex0010.tex} diff --git a/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0014.tex b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0014.tex new file mode 100644 index 00000000000..3a33dae410e --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0014.tex @@ -0,0 +1,13 @@ +In der Auswahlliste \textit{abt\/} soll es nicht nur die Auswahl eines +vorhandenen Elementes sondern auch die Eingabe von Text möglich sein. +Zu diesem Zweck wird beim Anlegen der Liste der Parameter +\begin{lstlisting} +combo=true +\end{lstlisting} +mit angegeben. Da dieser allein nicht immer genügt, wird zusätzlich +noch eine JavaScript-Zeile +\begin{lstlisting} +this.getField("abt").editable = true; +\end{lstlisting} +in \textit{myFirstJavaScriptFunction()\/} eingefügt. +\lstinputlisting{../examples/ex0011.tex} diff --git a/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0015.tex b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0015.tex new file mode 100644 index 00000000000..a60396f6286 --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0015.tex @@ -0,0 +1,9 @@ +Es soll ein Formular entworfen werden, mit dem Softwarelizenzen sowie +die Installation der Software durch fachkundiges Personal angefordert +werden können. + +Die Angaben, wer die Installation anfordert und auf welchem PC die +Software benötigt wird, werden in Textfelder eingegeben.\\ +Für die Auswahl der Software werden mehrere Auswahllisten bereitgestellt +mit jeweils dem gleichen Inhalt. Die Auswahllisten sollen editierbar +sein, falls Spezialsoftware benötigt wird. diff --git a/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0016.tex b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0016.tex new file mode 100644 index 00000000000..36bf03936c1 --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0016.tex @@ -0,0 +1,32 @@ +Die Auswahlmöglichkeiten in Auswahllisten können auch per JavaScript +eingestellt werden.\\ +Dies ist sinnvoll, wenn mehrere Listen mit den gleichen Auswahlmöglichkeiten +versehen werden sollen oder wenn viele Auswahlmöglichkeiten bestehen. +In beiden Fällen wird die Übersichtlichkeit der \LaTeX{}-Quelle erhöht. + +Die Auswahlmöglichkeiten werden als Array angegeben. Jedes Element +des Arrays ist seinerseits wiederum ein Array mit zwei Elementen. Das +erste Element ist der Text, der in der Auswahlliste angezeigt werden soll. +Das zweite Element ist eine Abkürzung, um die Auswahlmöglichkeit per +JavaScript ansprechen zu können.\\ +Die Auswahlmöglichkeiten für ex0101 werden in einem Array +\textit{softwareAuswahl\/} aufgeführt: +\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} +Über die \textit{setItems()\/}-Methode +\begin{lstlisting} +this.getField("sw01").setItems(softwareAuswahl); +\end{lstlisting} +wird das Array mit den entsprechenden Auswahllisten verknüpft. +\lstinputlisting{../examples/ex0101.tex} diff --git a/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0017.tex b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0017.tex new file mode 100644 index 00000000000..0f575f8831a --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0017.tex @@ -0,0 +1,7 @@ +Das dritte Formular soll als interaktive Anwendung arbeiten, ein Klick +auf einen Button soll eine Aktion auslösen. + +Im Beispiel führen wir eine Zinseszins-Berechnung durch. Als Eingabedaten +werden eine Anlagesumme in \texteuro{}, ein effektiver Jahreszins in \% +und ein Anlagezeitraum in Jahren angegeben. Über einen Button wird die +Berechnung der Auszahlungssumme angestoßen, diese wird dann angezeigt. diff --git a/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0018.tex b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0018.tex new file mode 100644 index 00000000000..e7498a5646f --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0018.tex @@ -0,0 +1,28 @@ +Im Gegensatz zu den vorangegangenen Formularen wird das dritte Formular +nicht gedruckt sondern ausschließlich online benutzt. Als Papierformat +wird deshalb nicht A4 benutzt sondern \(5.2057\,\textrm{Zoll}\,\times\,3.75\,\textrm{Zoll}\) (siehe +Zeilen 8 und 9). Mit dem geometry-Package wird ein Rand von einem +halben Zoll an den Seiten eingestellt. + +Mit dem Package fancyhdr werden Kopf- und Fußzeile gestaltet, siehe +Zeilen 12\ldots{}15. Das Formular soll -- wenn es mehrseitig ist -- +seitenweise gescrollt werden ("`pdfpagelayout=SinglePage"' in +Zeile 18). + +Da kein Ausdrucken vorgesehen ist, kann ein farbiger Hintergrund +verwendet werden. + +Mit dem Argument +\begin{lstlisting} +onclick={doCalculation()} +\end{lstlisting} +wird eine JavaScript-Funktion vorgegeben, die beim Betätigen des +Buttons ausgeführt wird. Hier wird kein Semikolon an den Funktionsaufruf +angehangen. + +Die Funktion \textit{doCalculation()\/} liest die Werte aus den +Eingabefeldern aus und nimmt eine Berechnung vor. Das Ergebis +wird gerundet, auf zwei Nachkommastellen getrimmt, in einen String +gewandelt und in einem Textfeld ausgegeben. + +\lstinputlisting{../examples/ex0201.tex} diff --git a/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0019.tex b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0019.tex new file mode 100644 index 00000000000..e819235463e --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0019.tex @@ -0,0 +1,38 @@ +\begin{itemize} +\item Version 0.9.4 (20.06.2007)\\* +enthält einen zusätzlichen neuen Abschnitt, wie die Pakete +insdljs und inputenc kombiniert werden können. Dabei werden Sonderzeichen, +die von inputenc umcodiert werden, nicht mehr direkt sondern als +JavaScript-Unicode-Zeichen eingegeben. +\item Version 0.9.3 (15.06.2007)\\* +enthält korrigierte Optionen für das Laden des hyperref-Packages. +\begin{lstlisting} +pdfpagemode=None +\end{lstlisting} +wurde ersetzt durch +\begin{lstlisting} +pdfpagemode=UseNone +\end{lstlisting} +\item Version 0.9.2 (14.06.2007)\\* +verwendet andere Fonts als die vorherigen Versionen. Die Präambel wurde +von einer anderen Anleitung kopiert, die u.\,a. auch mathematische +Sachverhalte darstellte und für diesen Zweck Mathematikfonts einband.\\ +Diese Mathematikfonts werden hier nicht benötigt.\\ +Gleichzeitig wird hier das Paket "`pdfcprot"' anstelle des vorher +genutzten Paketes "`microtype"' für den optischen Randausgleich +genutzt. +\item Version 0.9.1 (13.06.2007)\\* +enthält Korrekturen im Abschnitt "`Schriftarten"'. Fälschlicherweise +wurde in Version 0.9.0 behauptet, +\begin{lstlisting} +\usepackage[T1]{fontenc} +\end{lstlisting} +würde für die Verwendung von Type-1-Fonts sorgen. Dies stimmt nicht, +die Anweisung bewirkt die Verwendung des T1-Font-Encoding-Vektors, wenn +Type-1-Fonts benutzt werden. +\item Version 0.9.0\\* +ist die erste auf \textsc{ctan} veröffentlichte Version.\\* +Die englischsprachige Version wurde noch nicht korrekturgelesen, +möglicherweise sind Verbesserungen hinsichtlich Ausdruck, Rechtschreibung +und Grammatik erforderlich. +\end{itemize} diff --git a/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0020.tex b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0020.tex new file mode 100644 index 00000000000..9f8617974f7 --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/fde0020.tex @@ -0,0 +1,45 @@ +\label{sec:fde0020} +Das Paket inputenc sorgt dafür, dass bestimmte Zeichen -- z.\,B. deutsche +Umlaute -- in entsprechenden \LaTeX{}-Code umgewandelt werden. +Diese Umwandlung ist im "`normalen"' Text durchaus gewünscht, im +JavaScript-Code jedoch nicht. + +Um die Umwandlung in JavaScript-Code zu verhindern, sollten die entsprechenden +Zeichen dort nicht direkt eingegeben werden sondern als +\textsc{ecma}-Script-Unicodezeichen. Einige ausgewählte Unicode-Codierungen +sind in Tabelle~\vref{tab:umlauts} dargestellt. + +\begin{longtable}{|r|l|}\caption{JavaScript-Unicode für deutsche Umlaute}\label{tab:umlauts}\\ +\hline +&\\*[-0.9em]\multicolumn{1}{|c|}{\textbf{Zeichen}}&\multicolumn{1}{c|}{\textbf{JavaScript-Unicode}}\\ +\hline +\endfirsthead +\hline +&\\*[-0.9em]\multicolumn{2}{|r|}{\textsl{Fortsetzung}}\\ +\hline +\endhead +&\\*[-0.9em]\multicolumn{2}{|r|}{\textsl{wird fortgesetzt}}\\ +\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 +Hier ein Beispiel für die Verwendung von JavaScript-Unicode-Zeichen +(Variable \textit{theText\/}): +\lstinputlisting{../examples/ex0301.tex} +\clearpage diff --git a/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/forms.tex b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/forms.tex new file mode 100644 index 00000000000..9f9b693f4af --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms-src/forms.tex @@ -0,0 +1,100 @@ +\documentclass[ngerman,12pt,a4paper,origlongtable]{scrartcl} +\usepackage{ngerman} +\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[ngerman]{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-Formulare mit \pdflatex{}, hyperref und insdljs} +\include{cover} +\renewcommand*{\sectfont}{\bfseries} +\makeindex +\hyphenation{ +Ja-va-Script +} + +\begin{document} +\begin{sloppy} +\maketitle\clearpage +\tableofcontents\clearpage +\section{Einführung}\input{fde0001}\clearpage +\section{Formular-Support in hyperref}\input{fde0002}\clearpage +\section{Vorbetrachtungen} +\subsection{Präambel}\input{fde0003}\clearpage +\subsection{Eigenschaften der Formularelemente}\input{fde0004}\clearpage +\section{Das erste Formular} +\subsection{Aufgabenstellung}\input{fde0005} +\subsection{Erster Anlauf: ex0001}\input{fde0006}\clearpage +\subsection{Anordnung in Tabelle: ex0002}\input{fde0007}\clearpage +\subsection{Zwischenräume und Feldbreiten: ex0003}\input{fde0008}\clearpage +\subsection{Gleiche Texthöhe: ex0004}\input{fde0009}\clearpage +\subsection{Farbe: ex0005}\input{fde0010}\clearpage +\subsection{JavaScript: ex0006}\input{fde0011}\clearpage +\subsection{Dokument-Ereignisse: ex0008 und ex0009}\input{fde0012}\clearpage +\subsection{Formularfeld-Ereignisse: ex0010}\input{fde0013}\clearpage +\subsection{Editierbare Auswahlliste: ex0011}\input{fde0014}\clearpage +\section{Ein weiteres Formular} +\subsection{Aufgabenstellung}\input{fde0015} +\subsection{Auswahllisten mit JavaScript initialisieren: ex0101}\input{fde0016}\clearpage +\section{Formular Nummer drei: Interaktive Anwendung} +\subsection{Aufgabenstellung}\input{fde0017} +\subsection{Reaktion auf Button: ex0201}\input{fde0018}\clearpage +\section{Formular Nummer vier: inputenc und insdljs}\input{fde0020}\clearpage +\clearpage +\appendix +\section{Historie}\input{fde0019}\clearpage +\input{fdl.tex}\clearpage +\bibliographystyle{alpha} +\bibliography{bib} +\clearpage +\printindex +\end{sloppy} +\end{document} + diff --git a/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms.pdf b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms.pdf Binary files differnew file mode 100644 index 00000000000..631bf318b08 --- /dev/null +++ b/Master/texmf-doc/doc/german/pdf-forms-tutorial-de/forms.pdf |