Wenn Du `topline` als Option bei einer `tikzpicture` angeben willst, kannst du `\pgfkeys` verwenden:
\pgfkeys{
/tikz/topline/.style={baseline={([yshift=#1]current bounding box.north)}},
/tikz/topline/.default=-\ht\strutbox
}
oder
\pgfkeys{
/tikz/.cd,
topline/.style={baseline={([yshift=#1]current bounding box.north)}},
topline/.default=-\ht\strutbox
}
oder kürzer
\tikzset{
topline/.style={baseline={([yshift=#1]current bounding box.north)}},
topline/.default=-\ht\strutbox
}
Damit lässt sich beispielsweise `topline=-2ex` als Option nutzen. Wird `topline` ohne Wert angegeben, dann wird der mit `topline/.default` eingestellte Standdardwert benutzt. Im Code oben wird dafür `-\ht\strutbox` benutzt, also die Höhe der `\strut` Box. Siehe dazu: [Was macht der Befehl `\strut`?][1]
Wird für `topline` kein optionales Argument benötigt, dann kann man auch
\tikzset{
topline/.style={baseline={([yshift=-\ht\strutbox]current bounding box.north)}}
}
verwenden.
Beispiel:
\documentclass[12pt,a4paper]{article}
\usepackage{multicol}
\usepackage{enumerate}
\usepackage{amsmath}
\usepackage{tikz}
\usepackage{geometry}
\geometry{margin=15mm, right=20mm, headsep=10mm, footskip=10mm}
\tikzset{
topline/.style={baseline={([yshift=#1]current bounding box.north)}},
topline/.default=-\ht\strutbox
}
\begin{document}
Male die entsprechenden Bruchanteile aus.
\begin{multicols}{4}
\begin{enumerate}[(a)]
\item \begin{tikzpicture}[scale=0.75, topline]
\draw (0,0) rectangle (4,4);
\foreach \i in {1,2,3} {
\draw (0,\i) -- (4,\i);
}
\draw node at (2,-1) {$\dfrac{1}{4}$};
\end{tikzpicture}
\item \begin{tikzpicture}[scale=0.75, topline]
\draw (0,0) rectangle (4,4);
\foreach \i in {0.5,1,...,3.5} {
\draw (0,\i) -- (4,\i);
}
\draw node at (2,-1) {$\dfrac{2}{8}$};
\end{tikzpicture}
\item \begin{tikzpicture}[scale=0.75, topline]
\draw (0,0) rectangle(4,4);
\draw (2,0) -- (2,4);
\draw node at (2,-1) {$\dfrac{1}{2}$};
\end{tikzpicture}
\item \begin{tikzpicture}[scale=0.75, topline]
\draw (0,0) rectangle (4,4);
\draw (2,0) -- (2,4);
\draw (0,2) -- (4,2);
\draw node at (2,-1) {$\dfrac{3}{4}$};
\end{tikzpicture}
\end{enumerate}
\end{multicols}
\end{document}
Da alle `tikzpicture` in der `enumerate` Umgebung die gleichen Optionen haben, kann man diese auch lokal für die gesamte Umgebung einstellen:
\documentclass[12pt,a4paper]{article}
\usepackage{multicol}
\usepackage{enumerate}
\usepackage{amsmath}
\usepackage{tikz}
\usepackage{geometry}
\geometry{margin=15mm, right=20mm, headsep=10mm, footskip=10mm}
\tikzset{
topline/.style={baseline={([yshift=#1]current bounding box.north)}},
topline/.default=-\ht\strutbox
}
\begin{document}
Male die entsprechenden Bruchanteile aus.
\begin{multicols}{4}
\begin{enumerate}[(a)]
\tikzset{every picture/.style={scale=0.75, topline}}% lokal innerhalb der enumerate-Umgebung
\item \begin{tikzpicture}
\draw (0,0) rectangle (4,4);
\foreach \i in {1,2,3} {
\draw (0,\i) -- (4,\i);
}
\draw node at (2,-1) {$\dfrac{1}{4}$};
\end{tikzpicture}
\item \begin{tikzpicture}
\draw (0,0) rectangle (4,4);
\foreach \i in {0.5,1,...,3.5} {
\draw (0,\i) -- (4,\i);
}
\draw node at (2,-1) {$\dfrac{2}{8}$};
\end{tikzpicture}
\item \begin{tikzpicture}
\draw (0,0) rectangle(4,4);
\draw (2,0) -- (2,4);
\draw node at (2,-1) {$\dfrac{1}{2}$};
\end{tikzpicture}
\item \begin{tikzpicture}
\draw (0,0) rectangle (4,4);
\draw (2,0) -- (2,4);
\draw (0,2) -- (4,2);
\draw node at (2,-1) {$\dfrac{3}{4}$};
\end{tikzpicture}
\end{enumerate}
\end{multicols}
\end{document}
[1]: https://texwelt.de/fragen/1315/was-macht-der-befehl-strut/1316