Ich möchte einen neuen Befehl mit
Open in Online-Editor
\documentclass{standalone} \pagestyle{empty} \usepackage[utf8]{inputenc} \usepackage{tikz} \tikzstyle{startstop} = [ % Start Stop Shape rectangle, rounded corners, minimum width=3cm, minimum height=1cm, text centered, text width=3cm, draw=black, fill=red!30 ] \newcommand{\startstop}[3]{\node ({#1}) [startstop, {#3}] {#2};} \begin{document} \begin{tikzpicture}[node distance=2cm, auto] \node (node0) [startstop] {Start}; \node (node1) [startstop, below of=node0] {Text}; \startstop{node2}{Textinhalt}{below of=node1} \end{tikzpicture} \end{document} Wenn ich als 3. Argument meinem Befehl nur ein Wort übergebe funktioniert der Befehl einwandfrei. Wie kann ich meinen Befehl ändern, sodass ich ihn wie unten benutzen kann? |
Lasse die Klammern um das dritte Argument weg: Open in Online-Editor
\newcommand{\startstop}[3]{\node ({#1}) [startstop, #3] {#2};} Ich würde außerdem den Stil mit Open in Online-Editor
\documentclass{standalone} \pagestyle{empty} \usepackage[utf8]{inputenc} \usepackage{tikz} \tikzset{ startstop/.style = { % Start Stop Shape rectangle, rounded corners, minimum width=3cm, minimum height=1cm, text centered, text width=3cm, draw=black, fill=red!30 } } \newcommand{\startstop}[3]{\node ({#1}) [startstop, #3] {#2};} \begin{document} \begin{tikzpicture}[node distance=2cm, auto] \node (node0) [startstop] {Start}; \node (node1) [startstop, below of=node0] {Text}; \startstop{node2}{Textinhalt}{below of=node1} \end{tikzpicture} \end{document} Anmerkung: mit der jetzigen Definition Open in Online-Editor
\newcommand{\startstop}[3]{\node ({#1}) [startstop, #3] {#2};} kann man nicht mehr ohne weiteres eckige Klammern in Open in Online-Editor
\newcommand{\startstop}[3]{\node ({#1}) [{startstop, #3}] {#2};} Beim Auslesen des Arguments, das der eckigen Klammer folgt wird im Prozess dann dieses äußere Paar eckiger Klammern entfernt. Danke an @saputello für den Hinweis. beantwortet 29 Mai '16, 17:02 cgnieder Vielen Dank für die schnelle Hilfe!
(29 Mai '16, 17:04)
raccoon
1
Dann muss man aber wissen, dass das dritte Argument als optionales Argument verwendet wird und eckige Klammern darin Probleme bereiten. Kann man durch
(30 Mai '16, 08:52)
saputello
@saputello Danke für Dein scharfes Auge! :) Ich hab die Antwort um einen Hinweis ergänzt.
(30 Mai '16, 11:40)
cgnieder
@saputello, clemens: Vorschlag wegen der eckigen Klammern:
(30 Mai '16, 23:24)
Qrrbrbirlbel
|