Box für handschriftliche Eintragung erzeugen

Antwort erstellen


Diese Frage dient dazu, das automatisierte Versenden von Formularen durch Spam-Bots zu verhindern.
Smilies
:D :) :( :o :shock: :? 8) :lol: :-x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

BBCode ist eingeschaltet
[img] ist eingeschaltet
[flash] ist ausgeschaltet
[url] ist eingeschaltet
Smilies sind eingeschaltet

Die letzten Beiträge des Themas

Ich habe die Datenschutzerklärung gelesen und bin damit einverstanden.

   

Wenn du eine Datei oder mehrere Dateien anhängen möchtest, gib die Details unten ein.

Ansicht erweitern Die letzten Beiträge des Themas: Box für handschriftliche Eintragung erzeugen

von MoonKid » Mo 10. Feb 2014, 20:00

Dit is mal n super Beispiel. Solltest du mti ins wiki aufnehmen.

von rais » Mo 10. Feb 2014, 19:34

MoonKid hat geschrieben: Aber was ist das in dem [ ] ?

\strutbox soll was mit "vertikaler Verschiebung" zu tun haben. Finde ich aber unpassend. Es hat was mi dem Abstand zwischen Grundlinie bis zum unteren Ende der "Box" (z.B. der Schnörkel beim g, y, usw). Aber \dp finde ich gar nicht. Ich nehm es einfach mal als gegeben hin. ;)
AFAIK ist \strutbox ein Boxregister, das von LaTeX bei Änderung der Schriftgröße gesetzt wird. \dp\strutbox greift dabei auf die Tiefe (das, was unter die Grundlinie hinausragt) dieser \strutbox zu (standardmäßig 30% vom \baselineskip, AFAIR).
In den [] beim \rule kann eine vertikale Verschiebung angegeben werden: wenn wie hier negativ, wird die \rule um den entsprechenden Betrag unter die Grundlinie gezogen. Vllt wird es so etwas deutlicher:
\documentclass{article}
\newcommand*\foo{%
\rule[-\dp\strutbox]{5pt}{\dp\strutbox}%
\rule{5pt}{0.2pt}%
\rule{5pt}{\ht\strutbox}
Strutbox: $h=$\the\ht\strutbox, $d=$\the\dp\strutbox, $b=$\the\baselineskip}
\begin{document}
{\tiny\foo}

\foo

{\huge\foo}

\end{document}
MfG
Rainer

von MoonKid » Mo 10. Feb 2014, 18:28

u_fischer hat geschrieben:
\fbox{\large\rule[-\dp\strutbox]{0pt}{\baselineskip}\phantom{wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww}}
Ich versuche es noch zu verstehen. :D

Vereinfacht ausgedrückt.
Also mit \fbox wird die Box gezeichnet. Das was ich im PDF sehe, entsteht durch \fbox.
\rule zeichnet in deiner Variante gar nix. Es taucht visuell nicht im PDF auf.
\rule{0pt}{\baselineskip} erzeugt eine (unsichtbare) Stütze, welche sich eben auf die Höhe der \fbox auswirkt. \phantom sorgt dann für die Länge.

Soweit richtig?

Aber was ist das in dem [ ] ?

\strutbox soll was mit "vertikaler Verschiebung" zu tun haben. Finde ich aber unpassend. Es hat was mi dem Abstand zwischen Grundlinie bis zum unteren Ende der "Box" (z.B. der Schnörkel beim g, y, usw). Aber \dp finde ich gar nicht. Ich nehm es einfach mal als gegeben hin. ;)

von MoonKid » Mo 10. Feb 2014, 11:42

Auch wenn ich wohl bei der Picture-Sache bleiben werden (muss ich mir erst noch anschauen), hier nur der Vollständigkeit halber alle möglichen Symbole.
http://ctan.org/pkg/comprehensive

von u_fischer » Sa 8. Feb 2014, 18:52

Ich würde ja eher \rule benutzen. Zumindest für die vertikalen Abstände
\fbox{\large\rule[-\dp\strutbox]{0pt}{\baselineskip}\phantom{wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww}}
Dass die Weite von \parbox sich ändert, wenn sie keinen Inhalt bzw nur \phantom enthält, war mir neu (wann hat man schon leere \parboxen), aber du kannst ja immer \mbox{} reintun. Dann benimmt sie sich wieder.

von MoonKid » Sa 8. Feb 2014, 17:52

Ich hab es jetzt erstmal so gelöst.
% box.tex
\documentclass{scrartcl}

\usepackage{xltxtra}
\usepackage{polyglossia}
\setdefaultlanguage[spelling=new]{german}

\begin{document}

\setlength{\unitlength}{1em}

Freitext:
\begin{picture}(6, 2.5)(0,0.75)
    \put(0,0){ \framebox(6,2.5){} }
\end{picture}

\vspace{2\baselineskip}

Freitext g:
\begin{picture}(5, 1)(0,0)
    \put(0,0){ \framebox(5,1){} }
\end{picture}

\vspace{2\baselineskip}

Radio:
\begin{picture}(1, 1)
    \put(0.5,0.5){ \circle{1} }
\end{picture}

\vspace{2\baselineskip}

Check:
\begin{picture}(1, 1)
    \put(0,0){\framebox(1,1){}}
\end{picture}
\end{document}
Schwierig ist allerdings das vertikale Ausrichten in Relation zum Text. Hier ist "em" sicherlich keine so gute Wahl.
Problem ist eben auch, dass die picture-Umgebung sich an der Grundlinie des Textes ausrichtet. Am liebsten hätte ich sie aber in so hoch wie die gesamte Kegelhöhe und dann auch am unteren Rand der Kegelhöhe ausgerichtet.
Sorry, mir fehlen hier gerade die typografischen Begrifflichkeiten.

Beispiel "Freitextg"
Die Zeile selbst ist ja in der Vertikalen eigentlich größer als vom Oberrand "F" zum Unterrand "g". Das picture wird am Unterrand von "F" (Grundlinie? Baseline?) ausgerichtet.

Einfach zeichnen

von Stamm- » Sa 8. Feb 2014, 09:03

Zeichne die Boxen doch einfach als Grafik. Dazu reichen hier sogar schon die einfachen Befehle der Umgebung picture.

Box für handschriftliche Eintragung erzeugen

von MoonKid » Fr 7. Feb 2014, 22:51

Für einen Fragebogen möchte ich Felder haben, in dennen man handschriftlich Zahlen eintragen kann.

Derzeit löse ich das so
% box.tex
\documentclass{scrartcl}

\usepackage{xltxtra}
\usepackage{polyglossia}
\setdefaultlanguage[spelling=new]{german}

\begin{document}
Bitte Anzahl eintrage: \fbox{\LARGE\phantom{WWg}}

Bitte Anzahl eintrage: \fbox{\parbox{130pt}{\LARGE \phantom{WWWW}}}
\end{document}
1. Grundsätzlich interessiert mich, ob ihr einen eleganteren Lösungsansatz vorschlagen würdet. Ich möchte eigentlich nur ungern fest Größen in pt angeben müssen. Lieber hätte ich sowas wie Höhe=1.5faches der Zeile/Kegelhöhe und Breite=WieBuchstabe{W}.

2. Ich denke die erste Lösung ist ein guter Workaround. Ggf. kann ich ja hier die Schriftgröße noch höher drehen. Gibt es eine Möglichkeit die Schriftgröße relativ zu ändern? Sowas wie \LARGE+4pt?

3. Die zweite Lösung reagiert unerwartet. Wenn ich phantom nutze, wird die Box nicht auf die 130pt aufgezogen. Eigentlich hatte ich die Idee innerhalb der Box einen Zeilenumbruch zu produzieren, um die Höhe zu vergrößern. Sowas wie \parbox{\phantom{W}\linebreak\phantom{W}}
Ging aber auch nicht.

Nach oben