6
1

Hallo,

ich möchte eine ausfüllbare PDF erstellen.

  • Leider runiert mir das die Tabelle.
  • Kann man hier styles auch global festlegen? Ich habe \def\textfieldstyle{bordercolor={blue}, borderstyle=U} und dann \TextField[name=Name,width=5cm, \textfieldstyle]{Name:} versucht - ohne Erfolg.
  • Bei der Einstellung der Hintergrundfarbe auf lightgray scheint auch etwas schief zu laufen. Im PDF-Resultat habe ich sie nicht.

Was könnte man noch einbauen?

Danke!

alt text

Open in writeLaTeX
\documentclass[parskip=half, a5paper, landscape]{scrartcl}
\pagestyle{empty}
\usepackage{selinput}
\SelectInputMappings{adieresis={ä},  germandbls={ß}}
\usepackage[ngerman]{babel}
\usepackage[margin=0.5cm]{geometry}
\usepackage{xcolor}
    \pagecolor{yellow!40}
\usepackage{hyperref}
\begin{document}
\begin{Form}

\begin{tabular}{|lcr|}\hline
\textbf{Ausfüllbogen}  \\[1ex] \hline \\
\TextField[name=Vorname, width=5cm,  bordercolor={red}, borderstyle=U, value={Martina}]{Vorname:}
& 
&  \TextField[name=Nachname,width=5cm,  bordercolor={red}, borderstyle=U, value={Muster}, backgroundcolor=lightgray]{Nachname:}   \\ \\

\ChoiceMenu[radio, radiosymbol=6, width=0.5cm, name=Geschlecht]{\textbf{Geschlecht:}}
{männlich=m,weiblich=w} 
&
&\ChoiceMenu[combo, name=Land]{Land:}%
{Deutschland,Österreich,Schweiz} \\ \\

\TextField[name=Strasse,width=5cm,  bordercolor={red}, borderstyle=U, value={}]{Straße:}
& \TextField[name=PLZ,width=2cm,  bordercolor={red}, borderstyle=U, value={}]{PLZ:}
& \TextField[name=Ort,width=5cm,  bordercolor={red}, borderstyle=U, value={}]{Ort:} \\ \\

\TextField[name=Geburt,width=2.0cm,  bordercolor={red}, borderstyle=U, value={TT/MM/JJJJ}]{Geburtsdatum:} \\ \\

\CheckBox[width=0.5cm, name=Geld]{Münzen gezählt?}
& \CheckBox[width=0.5cm, name=Katze]{Katze gefüttert?}
& \CheckBox[width=0.5cm, name=Pflanze]{Pflanzen gegossen?} \\

\\ \hline
\end{tabular} \\[1ex]
\PushButton[name=calc,onclick={app.alert("Hier bitte   N I C H T     draufklicken!")}]%
{Hier bitte nicht draufklicken}

\CheckBox[name=Katze]{\textbf{Checkbox funktioniert hier ohne width}}

\textbf{Notizen:}\\[0.75ex]
\TextField[multiline, name=Notizen,width=0.9\textwidth,  height=3.25cm,borderstyle=D, bordercolor={red}, value={}, backgroundcolor={0.95 0.95 0.95}]{}

\end{Form}
\end{document}

Ein Skript | Ein Skript | Ein Skript

gefragt 29 Jul '14, 19:23

cis's gravatar image

cis
9.5k74452491
Akzeptiert-Rate: 29%

bearbeitet 04 Aug '14, 16:55

cgnieder's gravatar image

cgnieder
22.1k243463


Die Tabelle wird Dir nicht vom Formular ruiniert, das machst Du selbst, indem Du eine Tabelle definierst, bei der die dritte Spalte einen rechten Rand hat, aber häufig nur eine Spalte verwendest. Wenn man das korrigiert, dann funktioniert die Tabelle:

Open in writeLaTeX
\documentclass[parskip=half, a5paper, landscape]{scrartcl}
\pagestyle{empty}
\usepackage{selinput}
\SelectInputMappings{adieresis={ä},  germandbls={ß}}
\usepackage[ngerman]{babel}
\usepackage[margin=0.5cm]{geometry}
\usepackage{xcolor}
    \pagecolor{yellow!40}
\usepackage{hyperref}
\begin{document}
\begin{Form}

\begin{tabular}{|lcr|}\hline
\textbf{Ausfüllbogen} & &  \\[1ex] \hline
& & \\
\TextField[name=Vorname, width=5cm,  bordercolor={red}, borderstyle=U, value={Martina}]{Vorname:}
& 
&  \TextField[name=Nachname,width=5cm,  bordercolor={red}, borderstyle=U,
value={Muster}, backgroundcolor=lightgray]{Nachname:}   \\ 
& & \\

\ChoiceMenu[radio, radiosymbol=6, width=0.5cm, name=Geschlecht]{\textbf{Geschlecht:}}
{männlich=m,weiblich=w} 
&
&\ChoiceMenu[combo, name=Land]{Land:}%
{Deutschland,Österreich,Schweiz} \\ 
& & \\

\TextField[name=Strasse,width=5cm,  bordercolor={red}, borderstyle=U, value={}]{Straße:}
& \TextField[name=PLZ,width=2cm,  bordercolor={red}, borderstyle=U, value={}]{PLZ:}
& \TextField[name=Ort,width=5cm,  bordercolor={red}, borderstyle=U,
value={}]{Ort:} \\ 
& & \\

\TextField[name=Geburt,width=2.0cm,  bordercolor={red}, borderstyle=U,
value={TT/MM/JJJJ}]{Geburtsdatum:} & & \\ 
& & \\
\CheckBox[width=0.5cm, name=Geld]{Münzen gezählt?}
& \CheckBox[width=0.5cm, name=Katze]{Katze gefüttert?}
& \CheckBox[width=0.5cm, name=Pflanze]{Pflanzen gegossen?} \\

& & \\ \hline
\end{tabular} \\[1ex]
\PushButton[name=calc,onclick={app.alert("Hier bitte   N I C H T     draufklicken!")}]%
{Hier bitte nicht draufklicken}

\CheckBox[name=Katze]{\textbf{Checkbox funktioniert hier ohne width}}

\textbf{Notizen:}\\[0.75ex]
\TextField[multiline, name=Notizen,width=0.9\textwidth,  height=3.25cm,borderstyle=D, bordercolor={red}, value={}, backgroundcolor={0.95 0.95 0.95}]{}

\end{Form}
\end{document}

Wenn Du Dir das Leben leicht machen willst, dann lässt Du den Rahmen einfach weg und setzt ihn stattdessen, indem Du die ganze Tabelle als Argument einer \frame-Anweisung setzt.

Die Voreinstellungen für die Felder kann man über Umdefinierung der \DefaultOptionsof…-Anweisungen erreichen. Hier als Beispiel einmal für die Textfelder:

Open in writeLaTeX
\documentclass[parskip=half, a5paper, landscape]{scrartcl}
\pagestyle{empty}
\usepackage{selinput}
\SelectInputMappings{adieresis={ä},  germandbls={ß}}
\usepackage[ngerman]{babel}
\usepackage[margin=0.5cm]{geometry}
\usepackage{xcolor}
    \pagecolor{yellow!40}
\usepackage{hyperref}
\begin{document}
\begin{Form}
\renewcommand*{\DefaultOptionsofText}{print,bordercolor={red},borderstyle=U}
\begin{tabular}{|lcr|}\hline
\textbf{Ausfüllbogen} & &  \\[1ex] \hline
& & \\
\TextField[name=Vorname, width=5cm,value={Martina}]{Vorname:}
& 
&  \TextField[name=Nachname,width=5cm,backgroundcolor=lightgray]{Nachname:}   \\ 
& & \\

\ChoiceMenu[radio, radiosymbol=6, width=0.5cm, name=Geschlecht]{\textbf{Geschlecht:}}
{männlich=m,weiblich=w} 
&
&\ChoiceMenu[combo, name=Land]{Land:}%
{Deutschland,Österreich,Schweiz} \\ 
& & \\

\TextField[name=Strasse,width=5cm,value={}]{Straße:}
& \TextField[name=PLZ,width=2cm,value={}]{PLZ:}
& \TextField[name=Ort,width=5cm,value={}]{Ort:} \\ 
& & \\

\TextField[name=Geburt,width=2.0cm,value={TT/MM/JJJJ}]{Geburtsdatum:} & & \\ 
& & \\
\CheckBox[width=0.5cm, name=Geld]{Münzen gezählt?}
& \CheckBox[width=0.5cm, name=Katze]{Katze gefüttert?}
& \CheckBox[width=0.5cm, name=Pflanze]{Pflanzen gegossen?} \\

& & \\ \hline
\end{tabular} \\[1ex]
\PushButton[name=calc,onclick={app.alert("Hier bitte   N I C H T     draufklicken!")}]%
{Hier bitte nicht draufklicken}

\CheckBox[name=Katze]{\textbf{Checkbox funktioniert hier ohne width}}

\textbf{Notizen:}\\[0.75ex]
\TextField[multiline, name=Notizen,width=0.9\textwidth,  height=3.25cm,borderstyle=D,value={}, backgroundcolor={0.95 0.95 0.95}]{}

\end{Form}
\end{document}

Beachte, dass die normale Voreinstellung print natürlich ebenfalls wieder gesetzt wurde. Im Beispiel habe ich die Änderung außerdem lokal zur Form-Umgebung gemacht.

Dein Problem mit lightgray kann ich nicht nachvollziehen. Im Beispiel hast Du diese Farbe genau einmal gesetzt, nämlich beim Nachnamen und genau dort wird sie auch verwendet – sogar in Deiner eigenen Abbildung.

Das Ergebnis kann man hier öffnen: PDF-Ausgabe

Noch eine Anmerkung: Grundsätzlich ist es besser, vertikale Abstände nicht durch leere Tabellenzeilen, sondern durch andere Mechanismen wie das optionale Argument von \\, unsichtbare Stützen oder Änderung von \arraystretch zu erzeugen. Dann bekommt man auch das Problem mit den fehlenden Spalten in diesen Zeilen nicht. Ich verstehe aber, warum Du das in diesem Fall so gemacht hast.

Permanenter link

beantwortet 30 Jul '14, 08:58

gast3's gravatar image

gast3
(ausgesetzt)
Akzeptiert-Rate: 53%

bearbeitet 30 Jul '14, 17:21

stefan's gravatar image

stefan ♦♦
18.1k143048

Prima. Wegen dem farbigen Hintergrund der Boxen, hier lightgray, gibt es einen Button im AdobeReader "Vorhandene Feleder markieren". Dieser ist standarmäßig gesetzt und markiert alle Felder auf 'hellblau'. Evtl. könnt man diesen Button per hyperref-Option abschalten, das weiß ich aber nicht.

(30 Jul '14, 14:53) cis

PS: Ich habe @Stefan gebeten, das PDF-Resultat zu verlinken (siehe oben), damit man es sich gleich anschauen kann.

(30 Jul '14, 17:31) cis
Deine Antwort
Vorschau umschalten

Folgen dieser Frage

Per E-Mail:

Wenn sie sich anmelden, kommen Sie für alle Updates hier in Frage

Per RSS:

Antworten

Antworten und Kommentare

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs fügen Sie einfach zwei Leerzeichen an die Stelle an der die neue Linie sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Frage-Themen:

×62
×17
×5

gestellte Frage: 29 Jul '14, 19:23

Frage wurde gesehen: 35,205 Mal

zuletzt geändert: 04 Aug '14, 16:55