Ich versuchs einfach mal.

Hier "Wie erstelle ich ein gutes ausfüllbares PDF-Formular?" hat @Ijon schon gezeigt, daß man mitunter in der Datei hypperref.sty schauen muß, um den entsprechenden Befehl rauszusuchen (im Handbuch steht wohl nicht alles). Ich finde aber leider nicht, wo die Schriftart der Formularfelder, scheints sffamily (siehe Bild), festgelegt wird.

Ich würde hier gerne Schreibmaschinenschrift verwenden, anspielend auf die Machart, früher Vordrucke mit der Schreibmaschine auszufüllen.

alt text

Open in writeLaTeX
\documentclass[a4paper]{scrartcl}
\usepackage{xcolor}
\usepackage{hyperref}
\begin{document}
\begin{Form}

\TextField[name=Name,width=5cm,  bordercolor={blue}, borderstyle=U]{Name:}

\end{Form}
\end{document}

Verwandschaft: Wie passe ich den Stil von Formularfeldern an, insbesondere das Setzen des Labels unter das Feld und Rahmen bei Textfeldern?

gefragt 31 Jul '14, 13:33

cis's gravatar image

cis
5.4k860169
Akzeptiert: 68%

bearbeitet 04 Aug '14, 10:55

Clemens's gravatar image

Clemens
19.0k113060

Wieso tut das egtl. nicht?

\renewcommand*{\LayoutTextField}[2]{% label, field

#1 \texttt{#2}}%

(01 Aug '14, 12:14) cis

@cis: AFAIK wird für die Texteingaben der im PDF-Browser dafür eingestellte Font verwendet. Anderenfalls müsste der Font ja komplett eingebunden sein (was Font-Lizenzen übrigens häufig gar nicht erlauben). Bei mir werden jedenfalls auf unterschiedlichen System unterschiedliche Fonts verwendet. Vermutlich kann man per JavaScript entsprechende Einstellungen vornehmen. AFAIR hat hyperref auch eine Formular-Option für Stiländerungen per JavaScript, oder irre ich mich? Es gibt auf jeden Fall eine Option für die Schriftgröße.

(01 Aug '14, 12:37) Ijon Tichy

Ja die Optionen für Schriftgröße und auch Schriftfarbe habe ich gesehen. Theoretisch sollte es so gehen: http://tex.stackexchange.com/questions/36630/hyperref-how-to-format-text-in-a-forms-text-field Aber egal, was ich statt 'Verdana' da hinschreibe - es ändert sich nichts :(

(01 Aug '14, 12:50) cis

@cis: Du benötigst einen JavaScript-fähigen PDF-Browser und musst einen Font eingeben, der bei Dir (bzw. beim Empfänger des PDFs) installiert ist und vom PDF-Browser auch gefunden wird bzw. als verwendbar akzeptiert wird. Einstellungen, die auf Gegebenheiten beim Empfänger angewiesen sind, sind immer ein wenig ein Glücksspiel. Das Problem hatten wir früher schon mit DVI-Dateien (in denen man bekanntlich keine Fonts einbinden kann).

(01 Aug '14, 13:50) Ijon Tichy

Dann ist die Aufgabe egtl. eh ziemlich sinnlos, weil man nicht weiß, was der Empfänger als Viewer verwendet. Andererseits dürften 90% der Leute AdobeAcrobarReader verwenden; darauf müßte eine Lösung zugeschnitten sein.

(01 Aug '14, 13:57) cis

@cis Wieviele Leute einen AdobeReader verwenden, kann ich nicht abschätzen. In meinem Bekanntenkreis sind es immer weniger, weil Adobe Linux nicht mehr unterstützt und unter Windows nicht nur bei der Einbindung in LaTeX-Editoren immer wieder Probleme auftauchen, die es mit anderen nicht gibt. Leider ist AdobeReader auch nicht gleich AdobeReader, sondern die Version ist von erheblicher Bedeutung. AFAIK sind auch bei neueren Versionen teilweise andere Fonts dabei. Das macht die Suche nach immer verfügbaren Fonts selbst unter der Voraussetzung Adobe Reader nicht ganz einfach.

(01 Aug '14, 14:10) Ijon Tichy
Ergebnis 5 von 6 Alle anzeigen

Hab es hinbekommen:

alt text (Ausgabedatei)

Open in writeLaTeX
\documentclass[parskip=half, a5paper, landscape]{scrartcl}
\usepackage{selinput}
\SelectInputMappings{adieresis={ä}, germandbls={ß}}
\usepackage[ngerman]{babel}

\usepackage[margin=0.5cm, left=1cm]{geometry}
\usepackage{xcolor}
\usepackage{tikz}
     \usetikzlibrary{positioning}
\usepackage{hyperref}

\pagestyle{empty}

\addtokomafont{subsection}{\rule{\textwidth}{1pt}\newline}

% =======================================
% Textfelder festlegen:

% Texfeld-Optionen
\renewcommand{\DefaultOptionsofText}{print, bordercolor={white}, backgroundcolor=lightgray, borderwidth=1pt}

%Textfeld-Layout
\def\Titel{foo}
%
\newlength{\TitelBreite}
%\settowidth{\TitelBreite}{\Titel}
\renewcommand{\LayoutTextField}[2]{% 
\settowidth{\TitelBreite}{\Titel}
%
\begin{tikzpicture}
    \node[anchor=west] (TextFieldNode) at (0cm,2ex) {#2};
    \draw[thick] ([yshift=-0.6ex]TextFieldNode.north west) -- (TextFieldNode.south west) -- ([xshift=-0.6ex]TextFieldNode.south east);
    \node[anchor=west,font=\footnotesize\sffamily] at (0cm,-1.75ex) {#1};
\node[left = \TitelBreite+2.5ex of TextFieldNode, anchor=west,font=\bfseries, align=left]  {\Titel};
\end{tikzpicture}
}%

% Textfeld-Name und Schreibmaschinenschrift festlegen:
% \textfield{<label-name>}{<title-name>}{<width>}{<further-options>}{<title>}
\newcommand{\textfield}[5]{
\edef\Titel{#5}
\TextField[name = #1, width=#3, height=1em,  charsize =12pt,
format = { var f = this.getField('#1');
               f.textFont = 'Courier';
               }, #4
% value = WORT,
]
{#2}
}
% =======================================
\newcommand*{\GESCHLECHT}{%
\begin{tikzpicture}[overlay]
\node[label={below:m}, draw, thick, circle, inner sep=1.5pt, xshift=2em] (M) {$\!\!\!\!$\ChoiceMenu[radio, radiosymbol=6, width=2.5mm, height=2.5mm, bordercolor={white},  default=m, name=Geschlecht]{}{=maenl}};

\node[label={below:w}, draw, thick, circle, inner sep=1.5pt, right = 2ex of M]  {$\!\!\!\!$\ChoiceMenu[radio, radiosymbol=6, width=2.25mm, , height=2.5mm, bordercolor={white},  name=Geschlecht]{}{=weibl}};

\node[font=\footnotesize, below = 2ex of M, xshift=3ex] {Geschlecht};
\end{tikzpicture}
}%
% =======================================

%\renewcommand*{\familydefault}{\sfdefault}
\begin{document}
\begin{Form}[action=mailto:forms@stackexchange.invalid?subject={The submitted form},method=post]

%\subsection*{Formular}
%\textfield{NACHNAME}{Nachname}{0.4\textwidth}{}{Name:}
%\textfield{VORNAME}{Vorname}{0.4\textwidth}{}{}

\begin{tabular}{|lcr|}\hline
\textbf{Ausfüllbogen} & & \\[1ex] \hline
& & \\
\textbf{Name:} & & \\
\textfield{VORNAME}{Vorname}{6cm}{value=Muster}{}
&
& \textfield{NACHNAME}{Nachname}{6cm}{value=Marta}{} \\
& & \\
\GESCHLECHT %\ChoiceMenu[radio, radiosymbol=6, width=0.5cm, name=Geschlecht]{\textbf{Geschlecht:}}{männlich=m,weiblich=w}
&
&\ChoiceMenu[combo, name=Land]{Land:}%
{Deutschland,{\"O}sterreich,Schweiz} \\
& & \\
& & \\
\textbf{Adresse:} & & \\
\textfield{STRASSE}{Straße}{6cm}{}{}
& \textfield{PLZ}{PLZ}{2cm}{}{}
& \textfield{ORT}{Ort}{6cm}{}{} \\
& & \\
\textfield{GEBURT}{Geburtsdatum}{3cm}{}{} & & \\
& & \\
\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}}\\[0.75ex]
%
\edef\Titel{Notizen:}
\TextField[multiline, name=Notizen,width=0.9\textwidth, height=2cm,borderstyle=D,value={}, backgroundcolor={0.95
0.95 0.95}]{}
\Reset{Reset} \quad \Submit{Submit} 
\quad  \Acrobatmenu{Print}{Print}  
\quad \Acrobatmenu{SaveAs}{\fcolorbox{black}{yellow}{Dokument speichern}} 
\quad \Acrobatmenu{Quit}{Quit}
\quad \href{http://texwelt.de/wissen/fragen/7768/wie-erstelle-ich-ein-gutes-ausfullbares-pdf-formular}{Info}

\end{Form}
\end{document}
Permanenter link

beantwortet 03 Aug '14, 14:51

cis's gravatar image

cis
5.4k860169

bearbeitet 03 Aug '14, 14:52

@Stefan / @Clemens / @esdd: Wenn ich mal ein graphisch ausgefallenes Formular zum Nachbasteln hätte, wäre das was für Tikz.de - hier ist halt der tikz-Anteil gering.

(03 Aug '14, 21:43) cis
Deine Antwort auf die Frage (nicht auf andere Antworten)
Knebel-Vorschau

Folge dieser Frage

Per E-Mail:

Wenn Du Dich anmeldest, kannst Du Updates hier abonnieren

Per RSS:

Antworten

Antworten und Kommentare

Aktuelle Buch-Infos

LaTeX Cookbook

LaTeX Beginners Guide

Limitierter Rabatt ebook
50% Coupon code tDRet6Y

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üge einfach zwei Leerzeichen an die Stelle ein, an der die neue Zeile sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Zugeordnete Themen:

×41
×14
×5

Frage gestellt: 31 Jul '14, 13:33

Frage wurde angeschaut: 3,024 Mal

Zuletzt aktualisiert: 04 Aug '14, 10:55