latex/tikz 宏条件

latex/tikz 宏条件

我正在编写一个包含 tikz 绘图的 latex 宏,现在我只想在设置了可选参数的情况下绘制一条路径。

你如何在 tikz 内部与 latex 给出的参数进行交互?

像这样:

\newcommand{\myTikzDrawing}[1][default]{
    \begin{tikzpicture}
        \draw (0,1) -- (1,1);
        \draw (0,0) -- (1,0); %this line should only be drawn, if #1 is set to the default value
    \end{tikzpicture}
}

答案1

您可以使用is if键来引入条件。

\documentclass{article}
\usepackage{tikz}
\newif\ifTikZdrawthis
\tikzset{draw this/.is if=TikZdrawthis,draw this/.default=true}
\newcommand{\myTikzDrawing}[1][draw this=true]{
    \begin{tikzpicture}[#1]
        \draw (0,1) -- (1,1);
        \ifTikZdrawthis
        \draw (0,0) -- (1,0); %this line should only be drawn, if #1 is set to the default value
        \fi
    \end{tikzpicture}
}
\begin{document}
\myTikzDrawing
\bigskip

\myTikzDrawing[blue]
\bigskip

\myTikzDrawing[red,draw this]
\end{document}

在此处输入图片描述

相关内容