Vermeintlich einfache Tabelle (Namenskarten)

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: Vermeintlich einfache Tabelle (Namenskarten)

von dknof » Di 16. Okt 2012, 21:49

Hallo cpunkts,

mit tikz und der tikz-Bilbiothek matrix lässt sich sehr einfach die Darstellung und der Textinhalt trennen:
\documentclass{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{tikz}
\usetikzlibrary{matrix}
\begin{document}

\begin{tikzpicture}
\Large\bfseries
\matrix [matrix of nodes,nodes={text width=8cm,minimum height=3cm,align=center,draw}]
{
Anton & Berta \\
Christian & Dorothea\\
Emil & Fridolin \\
};
\end{tikzpicture}

\end{document} 
Die Dokumentation dazu ist pgfmanual (texdoc hilft mir hierbei nicht, suche einfach nach pgfmanual.pdf), mit 726 Seiten recht umfangreich.

Gruß
Diether

von Besserwisser » Di 16. Okt 2012, 11:07

Man könnte schlicht \parbox verwenden. \parbox hat drei optionale Argumente für vertikale Ausrichtung und Höhe, ein obligatorisches Argument für die Breite und eines für den Inhalt selbst. Ich verwende hier mal zusätzlich \fbox für Rahmen. Man könnte aber auch \frame verwenden oder die Linien mit picture-Elementen (sei es per picture-Umgebung oder TikZ oder ps-tricks) realisieren:
\documentclass{article}
\usepackage[ngerman]{babel}

\newcommand*{\kbt}{\centering Dies ist ein Blindtext.}
\newcommand*{\mbt}{\centering Dies ist ein Blindtext mit mehr als einer Zeile.}

\begin{document}

\raggedright

\fbox{\parbox[tt][5\baselineskip][tt]{.45\textwidth}{\kbt}}%
\fbox{\parbox[tt][5\baselineskip][tt]{.45\textwidth}{\kbt}}%

\fbox{\parbox[tt][5\baselineskip][c]{.45\textwidth}{\kbt}}%
\fbox{\parbox[tt][5\baselineskip][c]{.45\textwidth}{\kbt}}%

\fbox{\parbox[tt][5\baselineskip][b]{.45\textwidth}{\kbt}}%
\fbox{\parbox[tt][5\baselineskip][b]{.45\textwidth}{\kbt}}%

\fbox{\parbox[tt][5\baselineskip][tt]{.45\textwidth}{\mbt}}%
\fbox{\parbox[tt][5\baselineskip][tt]{.45\textwidth}{\mbt}}%

\fbox{\parbox[tt][5\baselineskip][c]{.45\textwidth}{\mbt}}%
\fbox{\parbox[tt][5\baselineskip][c]{.45\textwidth}{\mbt}}%

\fbox{\parbox[tt][5\baselineskip][b]{.45\textwidth}{\mbt}}%
\fbox{\parbox[tt][5\baselineskip][b]{.45\textwidth}{\mbt}}%

\end{document}
Näheres zu den optionalen Argumenten von \parbox ist beispielsweise dem usrguide zu entnehmen. Dieser müsste in allen LaTeX-Distributionen enthalten sein.

von cpunkts » Di 16. Okt 2012, 10:12

Interessanter Ansatz mit der Box Sepp, danke dir dafür, das Ergebnis gefällt mir ganz gut.
Jedoch erscheint mir die vertikale Ausrichtung des Textes bei der Lösung nicht ganz so einfach, denn der Offset und die Höhe der Box muss in dem Fall ja per Hand an eine andere Schriftgröße angepasst werden, wenn ich das richtig verstanden habe.

Wünschen würde ich mir eine Möglichkeit, bei der ich Höhe (und Breite) der Zellen für die Tabelle einstellen kann und dann die Ausrichtung des Textes in der Zelle festelegen kann ohne mit irgendwelchen Abständen zu experimentieren, sondern einfach per Kommando. Gibt es dafür vielleicht ein Paket, dass ich noch nicht kenne?
Nach recht intensivem Suchen scheint mir, dass die Verbindung aus großer Zelle und darin vertikal zentriertem Text nicht ganz so simpel ist, oder ich übersehe etwas fundamentales?

Beste Grüße

von Sepp99 » Fr 12. Okt 2012, 20:17

Ein Ansatz dazu:
\documentclass[DIV=12]{scrartcl}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage{tabularx}
\newcolumntype{C}{>{\bfseries\huge\centering\arraybackslash}X}

\begin{document}

\thispagestyle{empty}
\begin{tabularx}{\textwidth}{|C|C|}\hline
\rule[-30pt]{0pt}{2.5cm} Name & Name \\\hline
\rule[-30pt]{0pt}{2.5cm} Name & Name \\\hline
\end{tabularx}

\end{document}
Ergebnis im Anhang.

Gruß, Sepp.-
Dateianhänge
tab45.pdf
(9.72 KiB) 299-mal heruntergeladen

Vermeintlich einfache Tabelle (Namenskarten)

von cpunkts » Fr 12. Okt 2012, 16:46

Liebe Latexfreunde ich habe ein Problem.
Aus aktuellem Anlass beschäftige ich mich mit Latex und bin von den Ergebnissen sehr angetan. Nun wollte ich mich etwas in Tabellen einarbeiten und das mit einem für mich vermeintlich einfachen Beispiel.

Ziel ist eine Tabelle zu erzeugen, welche eine gesamte A4 Seite bedeckt, dabei aber nur 2 Spalten und 7-10 Zeilen hat (relativ große Zellen). Die Zellen möchte ich mit relativ großem Text (in dem Fall Namen) füllen, wobei der Text sowohl horizontal als auch vertikal zentriert sein soll.

Versuche das gewünschte Ergebnis mit mit tabularx oder array zu erhalten sind leider gescheitert. Probleme waren dabei vorallem die Zellenhöhe zu definieren und anschließend den Text doppelt zu zentrieren.

Das Ergebnis stelle ich mir etwa so vor wie im Anhang dargestellt.

Beste Grüße
Dateianhänge
Tabelle_Namen.pdf
So solls aussehen
(11.87 KiB) 456-mal heruntergeladen

Nach oben