
In einem meiner Tikz-Diagramme habe ich einen einfachen, rot gefüllten Kreis erstellt:
\addplot [mark=*, mark size=3, mark options={solid, fill=red}] coordinates {
(1.25, 0) };
Jetzt möchte ich im Text auf diesen Kreis verweisen und habe mich daher gefragt, ob es möglich ist, einen Befehl zu erstellen, der, wenn er in den Text eingebettet wird, denselben Kreis reproduziert.
BEARBEITEN
Mögliche Lösung funktioniert fast in der Bildunterschrift:
Antwort1
Der Kreis kann auch in TikZ gezeichnet werden; plot
akzeptiert auch mark
die Optionen:
\documentclass{article}
\usepackage{tikz}
\newcommand*{\RedCircle}{}
\DeclareRobustCommand*{\RedCircle}{%
\tikz\path plot[
mark=*,
mark size=3,
mark options={solid, fill=red},
] coordinates {(0, 0)};%
}
\begin{document}
Circle: \RedCircle
\end{document}
Vertikale Zentrierung um mathematische Achse
Das zentrierte Symbol passt besser in Klammern.
\documentclass{article}
\usepackage{tikz}
\newcommand*{\RedCircle}{}
\DeclareRobustCommand*{\RedCircle}{%
\ensuremath{\vcenter{\hbox{%
\tikz\path plot[
mark=*,
mark size=3,
mark options={solid, fill=red},
] coordinates {(0, 0)};%
}}}%
}
\begin{document}
Circle (\RedCircle)
\end{document}
Begrenzungsrahmenkorrektur
TikZ scheint zu vergessen, die Linienbreite der Markierung für die Begrenzungsbox zu berücksichtigen. Der folgende Code fügt einen kleinen Rahmen hinzu, um dies auszugleichen:
\documentclass{article}
\usepackage{tikz}
\newcommand*{\RedCircle}{}
\DeclareRobustCommand*{\RedCircle}{%
\ensuremath{\vcenter{\hbox{%
\setlength{\fboxsep}{.21pt}%
% 0.2pt (half line width)
% + 0.01pt to get some rounding tolerance
\setlength{\fboxrule}{0pt}%
\fbox{%
\tikz\path plot[
mark=*,
mark size=3,
mark options={solid, fill=red, draw=black},
] coordinates {(0, 0)};%
}%
}}}%
}
\begin{document}
% Show bounding box:
\setlength{\fboxsep}{0pt}
\setlength{\fboxrule}{.1pt}
(\textcolor{cyan}{\fbox{\RedCircle}})
\end{document}
Hinzufügen des Rands innerhalb von TikZ (möglicherweise wird das Bild durch die Externalisierung abgeschnitten):
\documentclass{article}
\usepackage{tikz}
\newcommand*{\RedCircle}{}
\DeclareRobustCommand*{\RedCircle}{%
\ensuremath{\vcenter{\hbox{%
\def\BoundingBoxCorrection{.55\pgflinewidth}%
% .5\pgflinewidth: half the line width, forgotten by TikZ
% .05\pgflinewidth: some tolerance for rounding errors
\tikz\path plot[
mark=*,
mark size=3,
mark options={solid, fill=red, draw=black},
] coordinates {(0, 0)}
(current bounding box.south west)
++(-\BoundingBoxCorrection, -\BoundingBoxCorrection)
(current bounding box.north east)
++(\BoundingBoxCorrection, \BoundingBoxCorrection)
;%
}}}%
}
\begin{document}
% Show bounding box:
\setlength{\fboxsep}{0pt}
\setlength{\fboxrule}{.1pt}
(\textcolor{cyan}{\fbox{\RedCircle}})
\end{document}