Antwort1
tikz
Ich würde mit zwei Schleifen arbeiten \foreach
. Hier ist das Beispiel:
\documentclass{article}
\usepackage[margin=0.5in, noheadfoot, nomarginpar]{geometry}
\usepackage{tikz}
\usepackage{showframe}
\renewcommand*\ShowFrameLinethickness{0.2pt}
\renewcommand*\ShowFrameColor{\color{blue}}
\tikzset{
every node/.style = {
draw,
red,
text = black,
font = \large,
line width = 1.6pt,
rounded corners,
minimum width = 3cm,
minimum height = 1cm,
}
}
\pagestyle{empty}
\begin{document}
\begin{figure}
\centering
\begin{tikzpicture}
\foreach \y [evaluate=\y as \yo using \y*1.25] in {0,...,19} {
\foreach \x [evaluate=\x as \xo using \x*3.75, evaluate=\d using int(\x+5*\y+1)] in {0,...,4} {
\node at (\xo,-\yo) {The day \d}; }}
\end{tikzpicture}
\end{figure}
\end{document}
BEARBEITEN. Hier ist ein leicht veränderter Code, der jetzt Absätze mit Zeilen von Knoten generiert, die bei Bedarf auf der anderen Seite fortgesetzt werden. Sie werden hineinkopiert, \foreach
sodass Sie ändern können, wie viele Zeilen Sie benötigen.
Ein paar Dinge.
Knoten fügen keine Zeilenumbrüche hinzu und akzeptieren standardmäßig auch nicht \newline
, \\
oder \par
, es sei denn, Sie geben die Textbreite an. Ich habe auch kleine Auffüllungen mit inner xsep
und hinzugefügt inner ysep
.
Der horizontale Abstand ist dehnbar und hängt von der Größe Ihrer Beschriftungen ab. Der vertikale Abstand wird durch gesteuert, \lineskip
was standardmäßig 1pt entspricht. Ich habe das in geändert 1em
. An dieser Stelle muss ich einen Kommentar abgeben. In diesem Beispiel überschreitet der Inhalt von Absätzen sehr wahrscheinlich eine Standardabsatzhöhe, und LaTeX fügt einen in gespeicherten Mindestabstand hinzu, \lineskip
um Überlappungen zu vermeiden. Ichausbeutendiese Tatsache und ändern Sie den Mindestabstand auf 1em
. Dies wird in anderen Beispielen mit ziemlicher Sicherheit nicht funktionieren.
\documentclass{article}
\usepackage[margin=0.5in, noheadfoot, nomarginpar]{geometry}
\usepackage{tikz}
\tikzset{
every node/.style = {
draw, red, line width = 1.6pt, rounded corners,
text = black, font = \large, align = center,
text width = 4cm,
inner xsep = 3pt, inner ysep = 6pt,
}
}
\newsavebox\textlabel
\NewDocumentCommand\TL{s}{%
\IfBooleanF{#1}{\hfill}%
\begin{tikzpicture}[baseline]
\node {%
Multiple line sample
\par Second line
\par Third line
};
\end{tikzpicture}}
\pagestyle{empty}
\begin{document}
\setlength\parindent{0pt}%
\setlength\lineskip{1em}% % minimum vertical space
\foreach \x in {1,...,20} {\par\TL* \TL \TL \TL};
\end{document}
Beachten Sie, dass hier auch mit sortiert werden kann longtable
.
Antwort2
MadyYuvi hat dir bereits ein passendes Paket empfohlen, ich werde das hier einfach noch etwas näher ausführen.
\documentclass{article}
\usepackage{multicol,tcolorbox}
\newtcolorbox{mybox}{colframe=red,colback=white}
\begin{document}
\begin{multicols}{3}
\begin{mybox}The Day 1\end{mybox}
\begin{mybox}The Day 1\end{mybox}
\begin{mybox}The Day 1\end{mybox}
\begin{mybox}The Day 1\end{mybox}
\begin{mybox}The Day 1\end{mybox}
\begin{mybox}The Day 1\end{mybox}
% I think you can imagine how to go on...
\end{multicols}
\end{document}
Bearbeiten: Die Nummer wird erhöht.
Wie in einem Kommentar gefordert, können Sie die im Feld angezeigte Nummer erhöhen. Am einfachsten ist es natürlich, die Nummer manuell zu erhöhen, sodass
\begin{mybox}The Day 1\end{mybox}
\begin{mybox}The Day 2\end{mybox}
usw. Das ist natürlich nicht der beste Weg.
Dann haben Sie die Idee, einen Zähler hinzuzufügen, der die Nummerierung für Sie übernimmt, siehe MadyYuvis Antwort (+1). Dies erfordert jedoch weiterhin, den Code \begin{mybox}The Day \theboxcounter\end{mybox}
immer wieder zu wiederholen.
Aus diesem Grund ist meiner Meinung nach die beste Lösung eine For-Schleife ( forloop
Paket):
\documentclass{article}
\usepackage{multicol,tcolorbox,forloop}
\newtcolorbox{mybox}{colframe=red,colback=white}
\begin{document}
\begin{multicols}{3}
\newcounter{boxcounter}
\forloop{boxcounter}{1}{\value{boxcounter} < 25}{%
\begin{mybox}The Day \theboxcounter\end{mybox}
}
\end{multicols}
\end{document}
Übrigens ist diese Antwort vollständig anwendbar, wenn Sie mehr als eine Seite dieser Felder benötigen.
Antwort3
Gemäß dem OP
Kommentar von habe ich gerade eine counter
Antwort in @Οὖτις hinzugefügt,
\documentclass{article}
\usepackage{multicol,tcolorbox}
\newcounter{boxcounter}%
\setcounter{boxcounter}{0}%
\renewcommand{\theboxcounter}{\arabic{boxcounter}}%
\newtcolorbox{mybox}{code={\refstepcounter{boxcounter}},colframe=red,colback=white}
\begin{document}
\begin{multicols}{3}
\begin{mybox}The Day \theboxcounter\end{mybox}
\begin{mybox}The Day \theboxcounter\end{mybox}
\begin{mybox}The Day \theboxcounter\end{mybox}
\begin{mybox}The Day \theboxcounter\end{mybox}
\begin{mybox}The Day \theboxcounter\end{mybox}
\begin{mybox}The Day \theboxcounter\end{mybox}
% I think you can imagine how to go on...
\end{multicols}
\end{document}